﻿/*---------------------------------------------------------------------------------------------------------------------------
Functions from Dreamweaver
---------------------------------------------------------------------------------------------------------------------------
*/
function MM_openBrWindow(theURL,winName,features) { //v2.0
  window.open(theURL,winName,features);
}

function MM_reloadPage(init) {  //reloads the window if Nav4 resized
  if (init==true) with (navigator) {if ((appName=="Netscape")&&(parseInt(appVersion)==4)) {
    document.MM_pgW=innerWidth; document.MM_pgH=innerHeight; onresize=MM_reloadPage; }}
  else if (innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH) location.reload();
}

function MM_popupMsg(msg) { //v1.0
  alert(msg);
}

function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; 
  document.MM_sr=new Array; 
  for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){
   	document.MM_sr[j++]=x; 
   	if(!x.oSrc) x.oSrc=x.src; 
   	x.src=a[i+2];
   }
}

function MM_reloadPage(init) {  //reloads the window if Nav4 resized
  if (init==true) with (navigator) {if ((appName=="Netscape")&&(parseInt(appVersion)==4)) {
    document.MM_pgW=innerWidth; document.MM_pgH=innerHeight; onresize=MM_reloadPage; }}
  else if (innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH) location.reload();
}
MM_reloadPage(true);

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}


/*---------------------------------------------------------------------------------------------------------------------------
Own functions by McRobots (norbert@bissmeyer.de)
---------------------------------------------------------------------------------------------------------------------------
*/
// set maximum width for backoffice form div
function setDivWidth(){
	var divId = 'mainAreaScrollable';
	var marginLeft = '455';
	if(document.getElementById(divId)){
		var windowWidth = 0;
		if (window.innerWidth) windowWidth = window.innerWidth;
    	else if (document.body && document.body.offsetWidth) windowWidth = document.body.offsetWidth;
    	document.getElementById(divId).style.maxWidth = (windowWidth-marginLeft)+"px";
	}
}

// Set the preview window visible and fix it to the cursor
function movePreviewWindow(windowID,pictureHeight,evt){
	var leftBuffer = 0;
	if(document.getElementById(windowID)){
		if (!evt) var evt = window.event;
		document.getElementById(windowID).style.display = "block";
		
		if (window.innerWidth) leftBuffer = (window.innerWidth/2)-510;
    	else if (document.body && document.body.offsetWidth) leftBuffer = (document.body.offsetWidth/2)-510;
    	if(leftBuffer < 0) leftBuffer = 0;
    	
    	if (evt.pageX || evt.pageY){
    		// this doesn't work on IE6!! (works on FF,Moz,Opera7)
			document.getElementById(windowID).style.top = evt.pageY-pictureHeight+"px";
			document.getElementById(windowID).style.left = evt.pageX-leftBuffer+5+"px";	
    	}
    	else if (evt.clientX || evt.clientY){
    		// works on IE6,FF,Moz,Opera7
    		document.getElementById(windowID).style.top = evt.clientY+document.documentElement.scrollTop-pictureHeight+"px";
    		document.getElementById(windowID).style.left = evt.clientX+document.documentElement.scrollLeft-leftBuffer+5+"px";
    	}	
	}
}

function disappearPreviewWindow(windowID){
	if(document.getElementById(windowID)){
		document.getElementById(windowID).style.display = "none";
	}
}

function openMainPicture(){
	var mainPictureName = document.getElementById('mainPictureName').value;
	var mainPictureWidth = document.getElementById('mainPictureWidth').value;
	var mainPictureHeight = document.getElementById('mainPictureHeight').value;
	window.open('../_lib/popup.php?type=picture&picture=' + mainPictureName,'Bild','width=' + mainPictureWidth + ',height=' + mainPictureHeight + ',scrollbars=no');
}

function setMainPictureValues(picture, width, height, name){
	if(document.getElementById("mainPicture")) document.getElementById("mainPicture").src = picture;
	document.getElementById('mainPictureWidth').value=width;
	document.getElementById('mainPictureHeight').value=height;
	document.getElementById('mainPictureName').value=name;
}

// This function sets the complete page in the center and call the cookie function. Needed on the consumersite
function setCenter(){
	var leftBuffer = 0;
    if (window.innerWidth) leftBuffer = (window.innerWidth/2)-510;
    else if (document.body && document.body.offsetWidth) leftBuffer = (document.body.offsetWidth/2)-510;
    if(leftBuffer < 0) leftBuffer = 0;
	document.getElementById("body").style.backgroundPosition=leftBuffer+"px 0px";
	document.getElementById("content").style.left=leftBuffer+"px";
	setCookie(leftBuffer);
	//alert(leftBuffer);
}

// This function writes an cookie with the left value to center the page. Needed on the consumersite
function setCookie(value){
	var leftBuffer = 0;
	if (value != ""){
		if (window.innerWidth) leftBuffer = (window.innerWidth/2)-510;
    	else if (document.body && document.body.offsetWidth) leftBuffer = (document.body.offsetWidth/2)-510;
    	if(leftBuffer < 0) leftBuffer = 0;
	  	document.cookie = "Nordsee_PageAdjust="+leftBuffer;
	}
}

function urlencode(str){
	
	return str;
}

function test(){
	alert('test');
}

function activateTab(tabID, contentID, contentNamesID){
	// first all contents are set invisible
	for(var i=0; i < document.getElementsByTagName("div").length; i++){	
		if(document.getElementsByTagName("div")[i].id.search(/^content_[0-9]$/) == 0){
			document.getElementsByTagName("div")[i].style.display = "none";
		}
		if(document.getElementsByTagName("div")[i].id.search(/^contentNames_[0-9]$/) == 0){
			document.getElementsByTagName("div")[i].style.display = "none";
		}
	}
	// first all tabs are not active
	for(var i=0; i < document.getElementsByTagName("a").length; i++){
		if(document.getElementsByTagName("a")[i].id.search(/^tab_[0-9]$/) == 0){
			document.getElementsByTagName("a")[i].style.backgroundColor="#dae2ed";
			document.getElementsByTagName("a")[i].style.borderColor="#FFFFFF";
			//document.getElementsByTagName("a")[i].style.top = "0px";
		}
	}
	// set the appropriate content visible, the color to the active tab...
	if(document.getElementById(contentID)) document.getElementById(contentID).style.display="block";
	if(document.getElementById(contentNamesID)) document.getElementById(contentNamesID).style.display="block";
	if(document.getElementById(tabID)){
		document.getElementById(tabID).style.display="inline";
		document.getElementById(tabID).style.backgroundColor="#FFFFFF";
		document.getElementById(tabID).style.borderColor="#dae2ed";
	}
	if(document.getElementsByName("tab")[0]) document.getElementsByName("tab")[0].value = tabID;
}

function leaveTab(tabID){
	var j=1;
	for(var i=0; i < document.getElementsByTagName("a").length; i++){
		if(document.getElementsByTagName("a")[i].id.search(/^tab_[0-9]$/) == 0){
			if(document.getElementsByName("tab")[0].value != "tab_"+j){
				if(document.getElementsByTagName("a")[i].style.borderColor != "rgb(218, 226, 237) rgb(218, 226, 237) rgb(218, 226, 237) rgb(218, 226, 237)" && document.getElementsByTagName("a")[i].style.borderColor != "#dae2ed"){ 
					document.getElementsByTagName("a")[i].style.backgroundColor="#dae2ed";
					document.getElementsByTagName("a")[i].style.borderColor="#FFFFFF";
				}else document.getElementsByTagName("a")[i].style.backgroundColor="#FFFFFF";
			}
			else{
				document.getElementsByTagName("a")[i].style.backgroundColor="#FFFFFF";
				document.getElementsByTagName("a")[i].style.borderColor="#dae2ed";
			}
			j++;
		}
	}
}

function sendSubmit(errorText, normalBackgroundColor, errorBackgroundColor, formID){
	
	var countErrors = 0, firstError = 99999, firstErrorTagName = "", group1 = 0, noGroup = 1;
         var reg;
         var value, message;
         /* Check all input fields which are set with the demand class
         arguments[0] = Error text
         arguments[1] = normal background color
         arguments[2] = error background color
         arguments[3] = name or number of the form
          */
          
         for(j=0;j < document.forms[formID].getElementsByTagName("input").length;j++){
         	/* clear all fields */
                 if((document.forms[formID].getElementsByTagName("input")[j].className.indexOf("demand") >= 0) ||
                    (document.forms[formID].getElementsByTagName("input")[j].className.indexOf("email") >= 0) ||
                    (document.forms[formID].getElementsByTagName("input")[j].className.indexOf("file") >= 0) ||
                    (document.forms[formID].getElementsByTagName("input")[j].className.indexOf("number") >= 0))
                 document.forms[formID].getElementsByTagName("input")[j].style.backgroundColor=normalBackgroundColor;

         	/* Check all field with a demand class */
                 if(document.forms[formID].getElementsByTagName("input")[j].className.indexOf("demand") >= 0){
                  	if(document.forms[formID].getElementsByTagName("input")[j].type == "text" && document.forms[formID].getElementsByTagName("input")[j].value == ""){
                    	if(countErrors == 0 && firstError > j) firstError = j;
                        countErrors++;
                        document.forms[formID].getElementsByTagName("input")[j].style.backgroundColor =errorBackgroundColor;
                    }
                  	if(document.forms[formID].getElementsByTagName("input")[j].type == "password" && document.forms[formID].getElementsByTagName("input")[j].value == ""){
                    	if(countErrors == 0 && firstError > j) firstError = j;
                        countErrors++;
                        document.forms[formID].getElementsByTagName("input")[j].style.backgroundColor =errorBackgroundColor;
                    }                    
                  	if(document.forms[formID].getElementsByTagName("input")[j].type == "file" && document.forms[formID].getElementsByTagName("input")[j].value == ""){
                    	if(countErrors == 0 && firstError > j) firstError = j;
                        countErrors++;
                        document.forms[formID].getElementsByTagName("input")[j].style.backgroundColor =errorBackgroundColor;
                    }
					if(document.forms[formID].getElementsByTagName("input")[j].type == "checkbox" && !document.forms[formID].getElementsByTagName("input")[j].checked){
                    	if(countErrors == 0 && firstError > j) firstError = j;
                        countErrors++;
                        document.forms[formID].getElementsByTagName("input")[j].style.backgroundColor =errorBackgroundColor;
                    }                   
                 }
                 /* Check all fields with a day class of wrong values*/
                 reg = /\D/;
                 if(document.forms[formID].getElementsByTagName("input")[j].className.indexOf("day") >= 0){
                 	if((value = document.forms[formID].getElementsByTagName("input")[j].value) != ""){
	                         if(document.forms[formID].getElementsByTagName("input")[j].type == "text"){
	                         		if(value > 31 || value < 1){
		                                 if(countErrors == 0 && firstError > j) firstError = j;
		                                 countErrors++;
		                                 document.forms[formID].getElementsByTagName("input")[j].style.backgroundColor =errorBackgroundColor;
	                         		}
	                         }
                         }
                 }
                 
                 /* Check all fields with a day class of wrong values*/
                 reg = /\D/;
                 if(document.forms[formID].getElementsByTagName("input")[j].className.indexOf("month") >= 0){
                 	if((value = document.forms[formID].getElementsByTagName("input")[j].value) != ""){
	                         if(document.forms[formID].getElementsByTagName("input")[j].type == "text"){
	                         		if(value > 12 || value < 1){
		                                 if(countErrors == 0 && firstError > j) firstError = j;
		                                 countErrors++;
		                                 document.forms[formID].getElementsByTagName("input")[j].style.backgroundColor =errorBackgroundColor;
	                         		}
	                         }
                         }
                 }
                 
                 /* Check all fields with a year class of wrong values*/
                 reg = /\D/;
                 if(document.forms[formID].getElementsByTagName("input")[j].className.indexOf("year") >= 0){
                 	if((value = document.forms[formID].getElementsByTagName("input")[j].value) != ""){
	                         if(document.forms[formID].getElementsByTagName("input")[j].type == "text"){
	                         		if(value < 1000){
		                                 if(countErrors == 0 && firstError > j) firstError = j;
		                                 countErrors++;
		                                 document.forms[formID].getElementsByTagName("input")[j].style.backgroundColor =errorBackgroundColor;
	                         		}
	                         }
                         }
                 }

                 /* Check all fields with a number class of wrong values*/
                 reg = /\D/;
                 if(document.forms[formID].getElementsByTagName("input")[j].className.indexOf("number") >= 0){
                 	if((value = document.forms[formID].getElementsByTagName("input")[j].value) != ""){
	                         if(document.forms[formID].getElementsByTagName("input")[j].type == "text" && reg.test(value)){
	                                 if(countErrors == 0 && firstError > j) firstError = j;
	                                 countErrors++;
	                                 document.forms[formID].getElementsByTagName("input")[j].style.backgroundColor =errorBackgroundColor;
	                         }
                         }
                 }
                 
                 /* Check all fields with a float class of wrong values*/
                 reg = /[a-zA-Z\+\-\s\*#äöüÄÖÜß\\\[\]\(\)\&\%]/;
                 if(document.forms[formID].getElementsByTagName("input")[j].className.indexOf("float") >= 0){
                 	if((value = document.forms[formID].getElementsByTagName("input")[j].value) != ""){
	                         if(document.forms[formID].getElementsByTagName("input")[j].type == "text" && reg.test(value)){
	                                 if(countErrors == 0 && firstError > j) firstError = j;
	                                 countErrors++;
	                                 document.forms[formID].getElementsByTagName("input")[j].style.backgroundColor =errorBackgroundColor;
	                         }
                         }
                 }                 

                 /* Check all fields with a email class of wrong values*/
                 reg = /.+@.+\..+/;
                 if(document.forms[formID].getElementsByTagName("input")[j].className.indexOf("email") >= 0){
                 	if((value = document.forms[formID].getElementsByTagName("input")[j].value) != ""){
	                         if(document.forms[formID].getElementsByTagName("input")[j].type == "text" && !reg.test(value)){
	                                 if(countErrors == 0 && firstError > j) firstError = j;
	                                 countErrors++;
	                                 document.forms[formID].getElementsByTagName("input")[j].style.backgroundColor =errorBackgroundColor;
	                         }
                         }
                 }

                 /* Check all fields with a picture class of wrong values*/
                 reg1 = /.+.jpg/;
                 reg2 = /.+.gif/;
                 reg3 = /.+.png/;
                 reg4 = /.+.JPG/;
                 reg5 = /.+.PNG/;
                 reg6 = /.+.GIF/;
                 reg7 = /.+.jpeg/;
                 reg8 = /.+.JPEG/;
                 if(document.forms[formID].getElementsByTagName("input")[j].className.indexOf("picture") >= 0){
                 	if((value = document.forms[formID].getElementsByTagName("input")[j].value) != ""){
	                         if(document.forms[formID].getElementsByTagName("input")[j].type == "file" && !reg1.test(value) && !reg2.test(value) && !reg3.test(value) && !reg4.test(value) && !reg5.test(value) && !reg6.test(value) && !reg7.test(value) && !reg8.test(value)){
	                                 if(countErrors == 0 && firstError > j) firstError = j;
	                                 countErrors++;
	                                 document.forms[formID].getElementsByTagName("input")[j].style.backgroundColor =errorBackgroundColor;
	                         }
                         }
                 }
                 
                 /* Check all fields with a picture class of wrong values*/
                 reg1 = /.+.pdf/;
                 reg2 = /.+.PDF/;
                 reg3 = /.+.zip/;
                 reg4 = /.+.ZIP/;
                 if(document.forms[formID].getElementsByTagName("input")[j].className.indexOf("pdf") >= 0){
                 	if((value = document.forms[formID].getElementsByTagName("input")[j].value) != ""){
	                         if(document.forms[formID].getElementsByTagName("input")[j].type == "file" && !reg1.test(value) && !reg2.test(value) && !reg3.test(value) && !reg4.test(value)){
	                                 if(countErrors == 0 && firstError > j) firstError = j;
	                                 countErrors++;
	                                 document.forms[formID].getElementsByTagName("input")[j].style.backgroundColor =errorBackgroundColor;
	                         }
                         }
                 }

                 /* Check all fields which are in group1 */
                 if(document.forms[formID].getElementsByTagName("input")[j].className.indexOf("group1") >= 0){
                 	noGroup = 0;
                 	if((value = document.forms[formID].getElementsByTagName("input")[j].value) != ""){
                                  group1++;
                         }
                 }
         }

         for(j=0;j < document.forms[formID].getElementsByTagName("select").length;j++){
         	/* clear all fields */
            if(document.forms[formID].getElementsByTagName("select")[j].className.indexOf("demand") >= 0) document.forms[formID].getElementsByTagName("select")[j].style.backgroundColor=normalBackgroundColor;

         	/* Check all field with a demand class */
                 if(document.forms[formID].getElementsByTagName("select")[j].className.indexOf("demand") >= 0){
                  	if(document.forms[formID].getElementsByTagName("select")[j].value == ""){
                         	if(countErrors == 0 && firstError > j) firstError = j;
                         	countErrors++;
                            document.forms[formID].getElementsByTagName("select")[j].style.backgroundColor =errorBackgroundColor;
                         }
                 }
         }
         
         for(j=0;j < document.forms[formID].getElementsByTagName("textarea").length;j++){ 
         	if(document.forms[formID].getElementsByTagName("textarea")[j].className.indexOf("demand") >= 0){  
         		document.forms[formID].getElementsByTagName("textarea")[j].style.backgroundColor=normalBackgroundColor; 	       
	         	if(document.forms[formID].getElementsByTagName("textarea")[j] && document.forms[formID].getElementsByTagName("textarea")[j].value == ""){
	            	if(countErrors == 0 && firstError > j) firstError = j;
	                	countErrors++;
	                    document.forms[formID].getElementsByTagName("textarea")[j].style.backgroundColor =errorBackgroundColor;
	            }
         	}
         }                     
         
         if(group1 <= 0 && noGroup <= 0){
         	message = "Bitte w�hlen Sie mindestens ein Produkt aus.";
                 countErrors++;
         }
         else message = errorText;
         	
		 if (countErrors > 0){
			var parentTab = document.forms[formID].getElementsByTagName("input")[firstError].parentNode;
            while(parentTab.tagName != "BODY"){   
             	if(parentTab.tagName == "DIV"){         	
	                if(parentTab.id.search(/^content_[0-9]$/) == 0){
	                 		var part = parentTab.id.split("_");
	                 		activateTab("tab_"+part[1], "content_"+part[1], "contentNames_"+part[1]);
	                 		break;
	                 }
                 }
                 parentTab = parentTab.parentNode;
            }
                          
            // marks the input field
            alert(message);                 
            if(document.forms[formID].getElementsByTagName("input")[firstError].type != "file") document.forms[formID].getElementsByTagName("input")[firstError].focus();
         	return false;         	
         }
         else{
         	if(document.getElementsByName("picture_1_de")[0] && document.getElementsByName("picture_1_de")[0].value != ""){
       			document.getElementById("loadingMessage").style.display = "block";
       		}
       		if(document.getElementsByName("picture_2_de")[0] && document.getElementsByName("picture_2_de")[0].value != ""){
       			document.getElementById("loadingMessage").style.display = "block";
       		}
       		if(document.getElementsByName("picture_3_de")[0] && document.getElementsByName("picture_3_de")[0].value != ""){
       			document.getElementById("loadingMessage").style.display = "block";
       		}

                if(document.getElementsByName("movie_1_de")[0] && document.getElementsByName("picture_3_de")[0].value != ""){
       			document.getElementById("loadingMessage").style.display = "block";
       		}
         	return true;
         }
}

function checker(){
	var changes = 0;
	var i=0;
	for(i=0; i<document.getElementsByName(arguments[0].name).length; i++){
         	 /* Set color on leave */
	         if(document.getElementsByName(arguments[0].name)[i].className.indexOf("demand") >= 0){
                  	if(document.getElementsByName(arguments[0].name)[i].value != "")
	                	document.getElementsByName(arguments[0].name)[i].style.backgroundColor=arguments[1];
	         }
             else document.getElementsByName(arguments[0].name)[i].style.backgroundColor=arguments[1];
    }
}

function loeschen(){
         var res = confirm(arguments[0]);
         if(res == true) location.href = arguments[1];
}

function Counter(){
	switch(arguments[0]){
         	case "inc":
                 	document.getElementById("changeCounter").value++;
                         changeStatusFeld("ungesichert", "#BF0000");
                         break;
         	case "dec":
                 	document.getElementById("changeCounter").value--;
                         break;
         	case "set":
                 	document.getElementById("changeCounter").value = arguments[1];
                         break;
         	case "get":
                 	return document.getElementById("changeCounter").value;
                         break;
         	case "reset":
                 	document.getElementById("changeCounter").value = 0;
                         break;
         	case "check":
                 	if(document.getElementById("changeCounter").value > 0){
                         	var res = confirm("Es sind Daten geändert worden aber noch nicht gespeichert!");
                         	if(res == false) location.reload();
                         }
                         break;
                 default:
                 	break;
         }
}

function changeStatusFeld(text, bgColor){
         if(document.getElementById("statusArea")){
               var st = document.getElementById("statusArea");
               if(bgColor != "#FFFFFF" || bgColor != "#ffffff"){
               	st.style.backgroundColor = bgColor;
               	st.style.color = "#FFFFFF";
               	st.className = "verdena8weiss";
               }else {
               	st.style.backgroundColor = bgColor;
               	st.className = "verdena8grau";
               }
               var rd_Laenge = st.firstChild.nodeValue.length;
               st.firstChild.replaceData(0, rd_Laenge, text);
               document.getElementById("statusArea").style.display = "block";
               //st.style.display = "block";
         }
}

