
/* Programmierung Christoph Rybacki
 *
 * 1. NEUE SEITE IM FENSTER
 * 2. LINKRAHMEN AUS BEI CLICK
 * 3. ONMOUSEOVER UND ONMOUSEOUT FÜR LAYER
 * 4. ONMOUSEOVER UND ONMOUSEOUT FÜR GRAFIKEN
 * 5. ZWEI FRAMES AKTUALISIEREN BEIM CLICK
 * 6. GRAFIKEN VORLADEN
 * 7. ALLE CHECKBOXEN SELEKTIEREN
 * 8. BILDWECHSEL FUNKTION NACH ZEIT

*/






/*#########################################################
 *#
 *# NEUE SEITE IM FENSTER MITTEN IM BROWSER
 *#
 *# ansprechen mit..    onload="Fenster('../seite.html','','toolbar=no,resizable=no,status=no','400','50');"
 *#
 *#######################################################*/


	var fen = null;
	var width = 0;
	var height = 0;	
	
	function Fenster(Seite,Fenstername,Features,width,height)
	{
		if(window.screen) 
		{
			var hori = screen.availWidth;
			var verti = screen.availHeight;
			
			fen=window.open(Seite,Fenstername,Features +',width='+ width +',height='+ height +',left='+ ((hori - width - 10)* .5) +',top='+ ((verti - height - 30)* .5));
			fen.focus();
		}
	}


/*#########################################################
 *#######################################################*/







/*#########################################################
 *#
 *# LINKRAHMEN AUS BEI CLICK
 *#
 *# ansprechen mit..     onfocus="if(this.blur)this.blur();"
 *#
 *#######################################################*/



/*#########################################################
 *#######################################################*/







/*#########################################################
 *#
 *# ONMOUSEOVER UND ONMOUSEOUT FÜR LAYER
 *#
 *# ansprechen mit..    onmouseover="MM_showHideLayers('layername','','show')" onmouseout="MM_showHideLayers('layername','','hide')"
 *#						
 *# layer..				<div id="layername" style="visibility:hidden;">Text</div>
 *#
 *#######################################################*/


	function MM_findObj(n, d) 
	{ //v4.0
		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 && document.getElementById)
			x=document.getElementById(n);
		
		return x;
	}
	
	
	function MM_showHideLayers()
	{ //v3.0
		var i,p,v,obj,args=MM_showHideLayers.arguments;
		
		for (i=0; i<(args.length-2); i+=3)
			
			if ((obj=MM_findObj(args[i]))!=null)
			{
				v=args[i+2];
			    if (obj.style)
				{
					obj=obj.style;
					v=(v=='show')?'visible':(v='hide')?'hidden':v;
				}
				obj.visibility=v;
			}
	}


/*#########################################################
 *#######################################################*/
 
 
 





/*#########################################################
 *#
 *# ONMOUSEOVER UND ONMOUSEOUT FÜR GRAFIKEN
 *#
 *# ansprechen mit..    onmouseover="MM_swapImage('Bildname','','bilder/bild2.jpg',1)" onmouseout="MM_swapImgRestore()"
 *#						
 *# Bild..				<img src="bilder/bild.jpg" alt="" name="Bildname" border="0">
 *#
 *#######################################################*/



	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_findObj2(n, d) { //v4.0
	  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_findObj2(n,d.layers[i].document);
	  if(!x && document.getElementById) x=document.getElementById(n); return x;
	}

	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_findObj2(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
	}


/*#########################################################
 *#######################################################*/















 
 
 /*#########################################################
 *#
 *# ZWEI FRAMES AKTUALISIEREN BEIM CLICK
 *#
 *# ansprechen mit..    onclick="ZweiFrames('home','Seite1.html','oben','Seite2.html')"
 *#
 *#######################################################*/
 
	function ZweiFrames(Frame1,Seite1,Frame2,Seite2)
	{
		eval("parent."+ Frame1 +".location.href='"+ Seite1 +"'");
		eval("parent."+ Frame2 +".location.href='"+ Seite2 +"'");
	}

/*#########################################################
 *#######################################################*/



 




/*#########################################################
 *#
 *# GRAFIKEN VORLADEN
 *#
 *# ansprechen mit..     <body onload="MM_preloadImages('bilder/1.jpg','bilder/2.jpg')">
 *#
 *#######################################################*/


	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];}}
	}

/*#########################################################
 *#######################################################*/






/*#########################################################
 *#
 *# ALLE CHECKBOXEN SELEKTIEREN
 *#
 *# ansprechen mit..     onclick="this.value=check(this.form)" name="checken"
 *#
 *#######################################################*/

	var checkflag = "false";

	function check(field)
	{
		if(checkflag == "false")
		{
			for(i = 0; i < field.length; i++)
			{
				field[i].checked = true;
			}
			checkflag = "true";
			return "checken"; 
		}
		else
		{
			for(i = 0; i < field.length; i++)
			{
				field[i].checked = false;
			}
			checkflag = "false";
			return "checken";
		}
	}

/*#########################################################
 *#######################################################*/












function showhide3(what,funktion)
{
	if(funktion == "Onclick")
	{
		if(what.style.display=='none')
		{
			what.style.display='block';
		}
		else
		{
			what.style.display='none';
		}
	}
	else
	{
		if(funktion == "Onmouseover")
		{
			what.style.display='block';
		}
		
		if(funktion == "Onmouseout")
		{
			what.style.display='none';
		}
	}
}











/*#########################################################
 *#
 *# Bildwechsel
 *#
 *# ansprechen mit..     <img src="bilder/home_10.jpg" alt="" name="bild1" onload="setTimeout('Bildwechsel(\'bild1\',\'bilder/home_10.jpg\',\'bilder/home_10b.jpg\')', 5000)">
 *#
 *#######################################################*/

	var aktuell = 1;

	function Bildwechsel(bildname,bild1,bild2)
	{
		if (aktuell == 1)
		{
			eval('document.'+ bildname +'.src = "'+ bild1 +'"');
			aktuell = 2;
		}
		else
		{
			eval('document.'+ bildname +'.src = "'+ bild2 +'"');
			aktuell = 1;
		}
	}

/*#########################################################
 *#######################################################*/








/*#########################################################
 *#
 *# Feldprüfung
 *#
 *# ansprechen mit..     onblur="Feldpruefung();"
 *#
 *#######################################################*/

	function Feldpruefung(FeldName,Formularname,Massangabe,AnzahlFeldID,AlleZusatzausr,Mindestabnahme,Qmeter)
	{
		var ZusatzausrID = AlleZusatzausr.split(":");
		var Fehler = 0;
		
		var FeldInhalt = document.forms[Formularname].elements[FeldName].value;

		if(FeldInhalt != "")
		{
			if(FeldInhalt == 0)
			{
				Fehler = 1;
			}

			//wenn Mindestabnahme angegeben
			if(Mindestabnahme != "")
			{
				if(Qmeter == "ja")	//Bei Quadratmenge berechnen
				{
					var ErstesFeldname = "Anzahl["+ AnzahlFeldID +"]";
					var ZweitesFeldname = "AnzahlB["+ AnzahlFeldID +"]";
					
					var FeldInhalt1 = document.forms[Formularname].elements[ErstesFeldname].value;
					var FeldInhalt2 = document.forms[Formularname].elements[ZweitesFeldname].value;					
					
					FeldInhalt1 = FeldInhalt1.replace(/,/,"."); // Komma in Punkt
					FeldInhalt2 = FeldInhalt2.replace(/,/,"."); // Komma in Punkt
										
					var Qadratmenge = FeldInhalt1 * FeldInhalt2;
					
					//alert(Qadratmenge);
					
					if(Qadratmenge < Mindestabnahme)
					{
						Fehler = 1;
					}

				}
				else	//Bei normalem Feld
				{
					if(FeldInhalt < Mindestabnahme)
					{
						Fehler = 1;
					}			
				}
			}
			
			
			
			if(Massangabe == 1)	//Bei Massangabe 1 (Zahlen mit komma möglich)
			{
				if(!FeldInhalt.match(/^\d{1,3}$/) && !FeldInhalt.match(/^\d{1,3},\d{1,2}$/) && !FeldInhalt.match(/^\d{1,3},$/) && !FeldInhalt.match(/^\d{1,3}\.$/) && !FeldInhalt.match(/^\d{1,3}\.\d{1,2}$/))
				{
					Fehler = 1;
				}
			}
			else	//Bei Massangabe 0	(Nur Stückzahlen, ohne komma
			{
				if(!FeldInhalt.match(/^\d{1,4}$/))
				{
					Fehler = 1;
				}
			}

			
			if(Fehler == 1)
			{
				if(Qmeter == "ja")	//Bei Quadratmenge berechnen
				{
					document.forms[Formularname].elements[ErstesFeldname].style.backgroundColor = "#fc5757";
					document.forms[Formularname].elements[ZweitesFeldname].style.backgroundColor = "#fc5757";										
				}
				else
				{				
					document.forms[Formularname].elements[FeldName].style.backgroundColor = "#fc5757";
				}
				
				document.forms[Formularname].elements[FeldName].focus();
			}
			else
			{
				if(Qmeter=="ja")	//Bei Quadratmenge berechnen
				{
					document.forms[Formularname].elements[ErstesFeldname].style.backgroundColor = "#FFFFFF";
					document.forms[Formularname].elements[ZweitesFeldname].style.backgroundColor = "#FFFFFF";										
				}
				else
				{					
					document.forms[Formularname].elements[FeldName].style.backgroundColor = "#FFFFFF";
				}

				//Gehe zu Berechnung1 um die Zusatzausrüstungen Felder zu Überprüfen
				if(ZusatzausrID.length > 0)
				{
					if(AnzahlFeldID != "")
					{
						for(i = 0; i < ZusatzausrID.length; ++i)
						{
							if(ZusatzausrID[i]!="")
							{
//								alert(ZusatzausrID[i]);
								var ChkName = '['+ AnzahlFeldID +']['+ ZusatzausrID[i] +']';
								
								if(document.forms[Formularname].elements['ChkLinks'+ChkName])
								{
									Berechnung1(Formularname,ChkName,AnzahlFeldID);
								}
							}
						}
					}
				}//end (ZusatzausrID.length > 0)
			}
		}

		if(FeldInhalt == "")
		{
			document.forms[Formularname].elements[FeldName].style.backgroundColor = "#FFFFFF";
		}
		
		return false;
	}

 /*#########################################################
 *#######################################################*/









/*#########################################################
 *#
 *# Berechnung1
 *#
 *# ansprechen mit..     onclick="this.value=Berechnung1(this.form)" name="Feldname"
 *#
 *#######################################################*/

	function Berechnung1(Formularname,ChkName,AnzahlFeldID)
	{
		var AnzahlFeldInhalt;
		var AnzahlBFeldInhalt;
		var ausgabe = 0;
		
		AnzahlFeldInhalt = document.forms[Formularname].elements['Anzahl['+ AnzahlFeldID +']'].value;
		AnzahlBFeldInhalt = document.forms[Formularname].elements['AnzahlB['+ AnzahlFeldID +']'].value;

		AnzahlFeldInhalt = AnzahlFeldInhalt.replace(/,/g, ".");
		AnzahlBFeldInhalt = AnzahlBFeldInhalt.replace(/,/g, ".");

		
		//Feld links
		if(document.forms[Formularname].elements['ChkLinks'+ChkName].checked == true)
		{
			if(AnzahlBFeldInhalt=='0' || !AnzahlBFeldInhalt.match(/^\d{1,3}$/) && !AnzahlBFeldInhalt.match(/^\d{1,3},\d{1,2}$/) && !AnzahlBFeldInhalt.match(/^\d{1,3},$/) && !AnzahlBFeldInhalt.match(/^\d{1,3}\.$/) && !AnzahlBFeldInhalt.match(/^\d{1,3}\.\d{1,2}$/))
			{
				document.forms[Formularname].elements['ChkLinks'+ChkName].checked = false;
				document.forms[Formularname].elements['AnzahlB['+ AnzahlFeldID +']'].style.backgroundColor = "#fc5757";
				document.forms[Formularname].elements['AnzahlB['+ AnzahlFeldID +']'].focus();
			}
			else
			{
				ausgabe += parseFloat(AnzahlBFeldInhalt);
			}
		}

		
		//Feld rechts
		if(document.forms[Formularname].elements['ChkRechts'+ChkName].checked == true)
		{
			if(AnzahlBFeldInhalt=='0' || !AnzahlBFeldInhalt.match(/^\d{1,3}$/) && !AnzahlBFeldInhalt.match(/^\d{1,3},\d{1,2}$/) && !AnzahlBFeldInhalt.match(/^\d{1,3},$/) && !AnzahlBFeldInhalt.match(/^\d{1,3}\.$/) && !AnzahlBFeldInhalt.match(/^\d{1,3}\.\d{1,2}$/))
			{
				document.forms[Formularname].elements['ChkRechts'+ChkName].checked = false;
				document.forms[Formularname].elements['AnzahlB['+ AnzahlFeldID +']'].style.backgroundColor = "#fc5757";
				document.forms[Formularname].elements['AnzahlB['+ AnzahlFeldID +']'].focus();
			}
			else
			{
				ausgabe += parseFloat(AnzahlBFeldInhalt);
			}
		}

		
		//Feld unten
		if(document.forms[Formularname].elements['ChkUnten'+ChkName].checked == true)
		{
			if(AnzahlFeldInhalt=='0' || !AnzahlFeldInhalt.match(/^\d{1,3}$/) && !AnzahlFeldInhalt.match(/^\d{1,3},\d{1,2}$/) && !AnzahlFeldInhalt.match(/^\d{1,3},$/) && !AnzahlFeldInhalt.match(/^\d{1,3}\.$/) && !AnzahlFeldInhalt.match(/^\d{1,3}\.\d{1,2}$/))
			{
				document.forms[Formularname].elements['ChkUnten'+ChkName].checked = false;
				document.forms[Formularname].elements['Anzahl['+ AnzahlFeldID +']'].style.backgroundColor = "#fc5757";
				document.forms[Formularname].elements['Anzahl['+ AnzahlFeldID +']'].focus();	
			}
			else
			{
				ausgabe += parseFloat(AnzahlFeldInhalt);
			}
		}

		
		//Feld oben
		if(document.forms[Formularname].elements['ChkOben'+ChkName].checked == true)
		{
			if(AnzahlFeldInhalt=='0' || !AnzahlFeldInhalt.match(/^\d{1,3}$/) && !AnzahlFeldInhalt.match(/^\d{1,3},\d{1,2}$/) && !AnzahlFeldInhalt.match(/^\d{1,3},$/) && !AnzahlFeldInhalt.match(/^\d{1,3}\.$/) && !AnzahlFeldInhalt.match(/^\d{1,3}\.\d{1,2}$/))
			{
				document.forms[Formularname].elements['ChkOben'+ChkName].checked = false;
				document.forms[Formularname].elements['Anzahl['+ AnzahlFeldID +']'].style.backgroundColor = "#fc5757";
				document.forms[Formularname].elements['Anzahl['+ AnzahlFeldID +']'].focus();	
			}
			else
			{
				ausgabe += parseFloat(AnzahlFeldInhalt);
			}
		}


	
		


		//Ausgabe
		if(ausgabe == 0)
		{
			ausgabe = "";
		}
		else
		{
			ausgabe = ausgabe.toFixed(2);
		}


		document.forms[Formularname].elements['ZusatzMenge'+ChkName].value = ausgabe;

	}

 /*#########################################################
 *#######################################################*/
