submission=false;

function giveFocus(url,name)
/* oeffnet hilfsfenster und bringt es in den vordergrund */
/* wenn schon geoeffnet dann wird es in den vordergrund gebracht */
/* pj - 10.2002 */
	{
	win=window.open (url, name, 'resizable=yes,scrollbars=yes,status=yes,width=680,height=500')
	win.focus()
	}
	
function checkForm()
/* ruft ueberprueftfunktionen fuer variableneingabe auf */
/* pj - 02.2003 */
	{
	if (submission)
		return true
	if (eval('check'+document.forms[0].name+'()'))
		return true
	else
		return false
	}
	
function checkNumber(value,rangeL,rangeH)
/* ueberprueft ob value eine nummer, im bereich der range ist und nicht leer ist */
/* value: uebergebener string */
/* rangeL: untere grenze */
/* rangeH: obere grenze */
/* pj - 12.2002*/
	{
	value=value.replace(/,/,".");
	if (isNaN(value))
		return 'Please insert a number!'
	else if (value=='')
		return 'Input is missing!'
	else if ((value<=rangeL) || (value>rangeH))
		return 'The inserted value is to small or to big!'
	else
		return false
	}
	
function isEmpty(value)
/* ueberprueft ob ein feld leer ist */
/* value: uebergebener string */
/* pj -12.2002 */
	{
	if (value=='')
		return 'Input is missing!'
	else
		return false
	}

function isToLong(value,length)
/* ueperprueft ob eingabe in einem feld zu lang ist */
/* value: uebergebener string */
/* length: laengenbegrenzung */
/* pj - 10.12.2002 */
	{
	if (value.length>length)
		return 'Input is to long'
	else
		false
	}
	

function checkForm_1()
/* ueberpruefen der inhalte von form1: destcription */
	{
	fname=document.forms[0];
	error=false;
	
	if (res=isToLong(fname.Produktbezeichnung.value,100))
		{
		alert ('Product Name: '+res);
		error=true
		}
	if (res=checkNumber(fname.Lebensdauer.value,0,100))
		{
		alert ('Product Life Time: '+res);
		error=true
		}
	if (res=isToLong(fname.FunktionaleEinheit.value,100))
		{
		alert ('Functional Unit: '+res);
		error=true
		}
	if (error)
		return false
	else
		return true
	}


function checkForm_2()
/* ueberprueft form2: raw materials */
/* pj - 10.12.2002 */
	{
	fname=document.forms[0];
	error=false;
	
	i=1;
	empty=true;
	while (fname.elements['ProduktTeilBezeichnung'+i])
		{
		if (!((isEmpty(fname.elements['ProduktTeilBezeichnung'+i].value)) 
			&& (isEmpty(fname.elements['ProduktTeilMasse'+i].value)) 
			&& (isEmpty(fname.elements['ProduktTeilMaterial'+i].value)) 
			&& (isEmpty(fname.elements['ProduktTeilMaterialKlasse'+i].options[fname.elements['ProduktTeilMaterialKlasse'+i].selectedIndex].text))))
			{
			if (res=isToLong(fname.elements['ProduktTeilBezeichnung'+i].value,100))
				{
				alert ('1. Product data \nPart in Line '+i+': '+res);
				error=true
				}
			if (res=checkNumber(fname.elements['ProduktTeilMasse'+i].value,0,10000))
				{
				alert ('1. Product data \nMass in Line '+i+': '+res);
				error=true
				}
			if (res=isToLong(fname.elements['ProduktTeilMaterial'+i].value,100))
				{
				alert ('1. Product data \nMaterial in Line '+i+': '+res);
				error=true
				}
			if (res=isEmpty(fname.elements['ProduktTeilMaterialKlasse'+i].options[fname.elements['ProduktTeilMaterialKlasse'+i].selectedIndex].text))
				{
				alert ('1. Product data \nClass in Line '+i+': '+res);
				error=true
				}
			if (error)
				return false
			else
				empty=false;
			}
		i++
		}
	if (empty)
		{
		alert('1. Product data: Please insert some data!');
		return false
		}
	
	i=1;	
	while (fname.elements['VerpackungsTeilBezeichnung'+i])
		{
		if (!((isEmpty(fname.elements['VerpackungsTeilBezeichnung'+i].value)) 
			&& (isEmpty(fname.elements['VerpackungsTeilMasse'+i].value)) 
			&& (isEmpty(fname.elements['VerpackungsTeilMaterial'+i].value)) 
			&& (isEmpty(fname.elements['VerpackungsTeilMaterialKlasse'+i].options[fname.elements['VerpackungsTeilMaterialKlasse'+i].selectedIndex].text))))
			{
			if (res=isToLong(fname.elements['VerpackungsTeilBezeichnung'+i].value,100))
				{
				alert ('2. Packaging data \nPart in Line '+i+': '+res);
				error=true
				}
			if (res=checkNumber(fname.elements['VerpackungsTeilMasse'+i].value,0,10000))
				{
				alert ('2. Packaging data \nMass in Line '+i+': '+res);
				error=true
				}
			if (res=isToLong(fname.elements['VerpackungsTeilMaterial'+i].value,100))
				{
				alert ('2. Packaging data \nMaterial in Line '+i+': '+res);
				error=true
				}
			if (res=isEmpty(fname.elements['VerpackungsTeilMaterialKlasse'+i].options[fname.elements['VerpackungsTeilMaterialKlasse'+i].selectedIndex].text))
				{
				alert ('2. Packaging data \nClass in Line '+i+': '+res);
				error=true
				}
			if (error)
				return false
			}
		i++
		}
		
	return true
	}
	
function checkForm_3()
/* ueberpruefen von form3: manufacture */
/* pj - 10.12.2002*/
	{
	fname=document.forms[0];
	error=false;
	
	if (!isEmpty(fname.EnergieMengeElektrisch.value) && (res=checkNumber(fname.EnergieMengeElektrisch.value,0,1000000)))
		{
		alert ('4. Energy input\n Electric energy: '+res);
		error=true
		}
	if (!isEmpty(fname.EnergieMengeThermisch.value) && (res=checkNumber(fname.EnergieMengeThermisch.value,0,1000000)))
		{
		alert ('4. Energy input\n Thermal energy: '+res);
		error=true
		}
	if (error)
		return false;
	
	i=1;	
	while (fname.elements['AbfallArtBezeichnung'+i])
		{
		if (!((isEmpty(fname.elements['AbfallArtBezeichnung'+i].value)) 
			&& (isEmpty(fname.elements['AbfallArtMasse'+i].value)) 
			&& (isEmpty(fname.elements['AbfallArtMaterial'+i].value)) 
			&& (isEmpty(fname.elements['AbfallArtMaterialKlasse'+i].options[fname.elements['AbfallArtMaterialKlasse'+i].selectedIndex].text))))
			{
			if (res=isToLong(fname.elements['AbfallArtBezeichnung'+i].value,100))
				{
				alert ('5. Waste per Unit \nWaste in Line '+i+': '+res);
				error=true
				}
			if (res=checkNumber(fname.elements['AbfallArtMasse'+i].value,0,10000))
				{
				alert ('5. Waste per Unit \nMass in Line '+i+': '+res);
				error=true
				}
			if (res=isToLong(fname.elements['AbfallArtMaterial'+i].value,100))
				{
				alert ('5. Waste per Unit \nMaterial in Line '+i+': '+res);
				error=true
				}
			if (res=isEmpty(fname.elements['AbfallArtMaterialKlasse'+i].options[fname.elements['AbfallArtMaterialKlasse'+i].selectedIndex].text))
				{
				alert ('5. Waste per Unit \nClass in Line '+i+': '+res);
				error=true
				}
			if (error)
				return false
			}
			i++
		}
	return true
	}
	
function checkForm_4()
/* ueberpruefen von form4: distripution */
/* pj - 10.12.2002*/
	{
	fname=document.forms[0];
	error=false;
	
	for (i=1;i<=7;i++)
		if (!isEmpty(fname.elements['TransportStrecke'+i].value) && (res=checkNumber(fname.elements['TransportStrecke'+i].value,0,30000)))
			{
			alert ('10. Average transportation for product distribution\n Distance in Line '+i+'. '+res);
			error=true
			}
	if (error)
		return false
	else
		return true
	}
	
function checkForm_5()
/* ueberpruefen von form5: product use */
/* pj - 10.12.2002*/
	{
	fname=document.forms[0];
	error=false;
	
	if (res=checkNumber(fname.Nutzungsfrequenz.value,0,20000))
		{
		alert ('12. Use frequency: '+res);
		return false
		}
	
	i=1;
	while (fname.elements['BetriebsstoffBezeichnung'+i])
		{
		if (!((isEmpty(fname.elements['BetriebsstoffBezeichnung'+i].value)) 
			&& (isEmpty(fname.elements['BetriebsstoffMasse'+i].value)) 
			&& (isEmpty(fname.elements['BetriebsstoffMaterial'+i].value)) 
			&& (isEmpty(fname.elements['BetriebsstoffMaterialKlasse'+i].options[fname.elements['BetriebsstoffMaterialKlasse'+i].selectedIndex].text))))
			{
			if (res=isToLong(fname.elements['BetriebsstoffBezeichnung'+i].value,100))
				{
				alert ('13. Input per use \nDesignation  in Line '+i+': '+res);
				error=true
				}
			if (res=checkNumber(fname.elements['BetriebsstoffMasse'+i].value,0,10000))
				{
				alert ('13. Input per use \nMass in Line '+i+': '+res);
				error=true
				}
			if (res=isToLong(fname.elements['BetriebsstoffMaterial'+i].value,100))
				{
				alert ('13. Input per use \nMaterial in Line '+i+': '+res);
				error=true
				}
			if (res=isEmpty(fname.elements['BetriebsstoffMaterialKlasse'+i].options[fname.elements['BetriebsstoffMaterialKlasse'+i].selectedIndex].text))
				{
				alert ('13. Input per use \nClass in Line '+i+': '+res);
				error=true
				}
			}
			i++
		}
	if (!isEmpty(fname.NutzungsenergieMenge.value) && (res=checkNumber(fname.NutzungsenergieMenge.value,0,1000)))
		{
		alert ('13: Electric energy input per use: '+res)
		error=true
		}
	if (error)
		return false;
		
	i=1;
	while (fname.elements['HilfsstoffBezeichnung'+i])
		{
		if (!((isEmpty(fname.elements['HilfsstoffBezeichnung'+i].value)) 
			&& (isEmpty(fname.elements['HilfsstoffMasse'+i].value)) 
			&& (isEmpty(fname.elements['HilfsstoffMaterial'+i].value)) 
			&& (isEmpty(fname.elements['HilfsstoffMaterialKlasse'+i].options[fname.elements['HilfsstoffMaterialKlasse'+i].selectedIndex].text))))
			{
			if (res=isToLong(fname.elements['HilfsstoffBezeichnung'+i].value,100))
				{
				alert ('14. Waste per use \nDesignation  in Line '+i+': '+res);
				error=true
				}
			if (res=checkNumber(fname.elements['HilfsstoffMasse'+i].value,0,10000))
				{
				alert ('14. Waste per use \nMass in Line '+i+': '+res);
				error=true
				}
			if (res=isToLong(fname.elements['HilfsstoffMaterial'+i].value,100))
				{
				alert ('14. Waste per use \nMaterial in Line '+i+': '+res);
				error=true
				}
			if (res=isEmpty(fname.elements['HilfsstoffMaterialKlasse'+i].options[fname.elements['HilfsstoffMaterialKlasse'+i].selectedIndex].text))
				{
				alert ('14. Waste per use \nClass in Line '+i+': '+res);
				error=true
				}
			if (error)
				return false
			}
			i++
		}
	
	return true
	
	}
	
function checkForm_6()
/* ueberpruefen von form5: end of life */
/* pj - 10.12.2002*/
	{
	fname=document.forms[0];
	error=false;
	
	i=1;
	while (fname.elements['ProduktTeilBezeichnung'+i])
		{
		if (!((isEmpty(fname.elements['ProduktTeilBezeichnung'+i].value)) 
			&& (isEmpty(fname.elements['ProduktTeilMasse'+i].value)) 
			&& (isEmpty(fname.elements['ProduktTeilMaterial'+i].value)) 
			&& (isEmpty(fname.elements['ProduktTeilEntsorgungsweise'+i].options[fname.elements['ProduktTeilEntsorgungsweise'+i].selectedIndex].text))))
			{
			if (res=isToLong(fname.elements['ProduktTeilBezeichnung'+i].value,100))
				{
				alert ('16. Product data \nPart in Line '+i+': '+res);
				error=true
				}
			if (res=checkNumber(fname.elements['ProduktTeilMasse'+i].value,0,10000))
				{
				alert ('16. Product data \nMass in Line '+i+': '+res);
				error=true
				}
			if (res=isToLong(fname.elements['ProduktTeilMaterial'+i].value,100))
				{
				alert ('16. Product data \nMaterial in Line '+i+': '+res);
				error=true
				}
			if (res=isEmpty(fname.elements['ProduktTeilEntsorgungsweise'+i].options[fname.elements['ProduktTeilEntsorgungsweise'+i].selectedIndex].text))
				{
				alert ('16. Product data \nDisposal in Line '+i+': '+res);
				error=true
				}
			if (error)
				return false
			}
		i++
		}
	
	i=1;	
	while (fname.elements['VerpackungsTeilBezeichnung'+i])
		{
		if (!((isEmpty(fname.elements['VerpackungsTeilBezeichnung'+i].value)) 
			&& (isEmpty(fname.elements['VerpackungsTeilMasse'+i].value)) 
			&& (isEmpty(fname.elements['VerpackungsTeilMaterial'+i].value)) 
			&& (isEmpty(fname.elements['VerpackungsTeilEntsorgungsweise'+i].options[fname.elements['VerpackungsTeilEntsorgungsweise'+i].selectedIndex].text))))
			{
			if (res=isToLong(fname.elements['VerpackungsTeilBezeichnung'+i].value,100))
				{
				alert ('17. Packaging data \nPart in Line '+i+': '+res);
				error=true
				}
			if (res=checkNumber(fname.elements['VerpackungsTeilMasse'+i].value,0,10000))
				{
				alert ('17. Packaging data \nMass in Line '+i+': '+res);
				error=true
				}
			if (res=isToLong(fname.elements['VerpackungsTeilMaterial'+i].value,100))
				{
				alert ('17. Packaging data \nMaterial in Line '+i+': '+res);
				error=true
				}
			if (res=isEmpty(fname.elements['VerpackungsTeilEntsorgungsweise'+i].options[fname.elements['VerpackungsTeilEntsorgungsweise'+i].selectedIndex].text))
				{
				alert ('17. Packaging data \nDisposal in Line '+i+': '+res);
				error=true
				}
			if (error)
				return false
			}
		i++
		}
		
	return true
	}
	
