
function onLoadPage()
{
	var field = document.getElementsByName('mode')[0];
	if (field != null && field.value == 'evaluation')
	{
		blurField(document.getElementsByName('formdata[base][firma]')[0],emptyFieldValueFirma);
		blurField(document.getElementsByName('formdata[base][name]')[0],emptyFieldValueName);
		blurField(document.getElementsByName('formdata[base][email]')[0],emptyFieldValueEmail);
		blurField(document.getElementsByName('formdata[base][telefon]')[0],emptyFieldValueTelefon);
		blurField(document.getElementsByName('formdata[base][anlage]')[0],emptyFieldValueAnlage);
		blurField(document.getElementsByName('formdata[base][ansprechpartner]')[0],emptyFieldValueAnsprechpartner);
		blurField(document.getElementsByName('formdata[base][projekt]')[0],emptyFieldValueProjekt);
		blurField(document.getElementsByName('formdata[base][brennertyp]')[0],emptyFieldValueBrennertyp);
		blurField(document.getElementsByName('formdata[base][sonstiges]')[0],emptyFieldValueSonstiges);
		
		var fields = document.getElementsByName('formdata[base][brennstoff]');
		for (var i = 0; i < fields.length; i++)
		{
			field = fields[i];
			if (field.checked == true)
				changeUnit(field.value);
		}
	}
}


function checkEmail(field,errMsgField,errMsg,emptyValue)
{
	if (field != null && errMsgField != null)
	{
		var value = field.value;
		var isValid = false;
		
		var name = value.substring(0,value.indexOf('@'));
		var rest = value.substring(value.indexOf('@')+1);
		var lastPoint = value.lastIndexOf('.');
		if (value == emptyValue || value == "" || (name.length > 0 && rest.length > 0 && lastPoint > 0 && lastPoint < value.length-1))
			isValid = true;
		
		if (!isValid)
		{
			errMsgField.innerHTML = errMsg;
			field.style.backgroundColor = '#FF0000';
		}
		else
		{
			errMsgField.innerHTML = '';
			field.style.backgroundColor = 'white';
		}	
	}
}

function checkEmail2(field)
{
	if (field != null)
	{
		var value = field.value;
		var isValid = false;
		
		var name = value.substring(0,value.indexOf('@'));
		var rest = value.substring(value.indexOf('@')+1);
		var lastPoint = value.lastIndexOf('.');
		if (name.length > 0 && rest.length > 0 && lastPoint > 0 && lastPoint < value.length-1)
			isValid = true;
		
		return isValid;
	}
	return false;
}


function focusField(field,text)
{
	if (field != null)
	{
		var value = field.value;
		if (value == text)
		{
			field.value = "";
		}
		field.style.color = 'black';
	}
}

function blurField(field,text)
{
	if (field != null)
	{
		var value = trim(field.value);
		if (value == "")
		{
			field.value = text;
			field.style.color = 'gray';
		}
	}
}

function checkValue(field,minValue,maxValue,errMsgField,errMsg)
{
	if (field != null && errMsgField != null)
	{
		var value = field.value;
		value = parseFloat(value.replace(/,/,"."));
		if (isNaN(value) || value < minValue || value > maxValue)
		{
			errMsgField.innerHTML = errMsg;
			field.style.backgroundColor = '#FF0000';
		}
		else
		{
			errMsgField.innerHTML = '';
			field.style.backgroundColor = 'white';
		}	
	}
}

function checkValue2(field,minValue,maxValue)
{
	if (field != null)
	{
		var value = field.value;
		value = parseFloat(value.replace(/,/,"."));
		if (isNaN(value) || value < minValue || value > maxValue)
		{
			return false;
		}
		return true;
	}
	return false;
}

function trim(s) 
{
	while (s.substring(0,1) == ' ') 
	{
    	s = s.substring(1,s.length);
	}
	while (s.substring(s.length-1,s.length) == ' ') 
	{
		s = s.substring(0,s.length-1);
	}
	return s;
}


function checkEmptyValue(field,errMsgField,errMsg,emptyValue)
{
	if (field != null && errMsgField != null)
	{
		var value = trim(field.value);
		if (value == "" || value == emptyValue)
		{
			errMsgField.innerHTML = errMsg;
			field.style.backgroundColor = '#FF0000';
		}
		else
		{
			errMsgField.innerHTML = "";
			field.style.backgroundColor = 'white';
		}
	}
}

function checkEmptyValue2(field,emptyValue)
{
	if (field != null)
	{
		var value = trim(field.value);
		if (value == "" || value == emptyValue)
		{
			return false;
		}
		return true;
	}
	return false;
}

function mittelwert(targetField,value1,value2)
{
	if (targetField != null)
	{
		value1 = value1.replace(/,/,".");
		value2 = value2.replace(/,/,".");
		targetField.value = (parseFloat(value1)+parseFloat(value2))/2;
	}
}

function changeUnit(value)
{
	if (value == 'gas')
	{
		var field = document.getElementById('unit_brennstoffdurchsatz_schwach');
		if (field != null) field.innerHTML = unitNm3PerHour;
		field = document.getElementById('unit_brennstoffdurchsatz_mittel');
		if (field != null) field.innerHTML = unitNm3PerHour;
		field = document.getElementById('unit_brennstoffdurchsatz_voll');
		if (field != null) field.innerHTML = unitNm3PerHour;
		field = document.getElementById('unit_brennstoffkosten');
		if (field != null) field.innerHTML = unitEURPerNm3;
	}
	else
	{
		var field = document.getElementById('unit_brennstoffdurchsatz_schwach');
		if (field != null) field.innerHTML = unitLiterPerHour;
		field = document.getElementById('unit_brennstoffdurchsatz_mittel');
		if (field != null) field.innerHTML = unitLiterPerHour;
		field = document.getElementById('unit_brennstoffdurchsatz_voll');
		if (field != null) field.innerHTML = unitLiterPerHour;
		field = document.getElementById('unit_brennstoffkosten');
		if (field != null) field.innerHTML = unitEURPerLiter;
	}
}

function submitLamtecForm()
{
	var field = document.getElementsByName('formdata[base][name]')[0];
	if (checkEmptyValue2(field,emptyFieldValueName) == false)
	{
		field.focus();
		field.style.backgroundColor = '#FF0000';
		return false;
	}
	field = document.getElementsByName('formdata[base][email]')[0];
	if (checkEmail2(field) == false)
	{
		field.focus();
		field.style.backgroundColor = '#FF0000';
		return false;
	}
	field = document.getElementsByName('formdata[base][ansprechpartner]')[0];
	if (checkEmptyValue2(field,emptyFieldValueAnsprechpartner) == false)
	{
		field.focus();
		field.style.backgroundColor = '#FF0000';
		return false;
	}
	field = document.getElementsByName('formdata[abgas_station][schwach]')[0];
	if (checkValue2(field,0,999) == false)
	{
		field.focus();
		field.style.backgroundColor = '#FF0000';
		return false;
	}
	field = document.getElementsByName('formdata[abgas_station][mittel]')[0];
	if (checkValue2(field,0,999) == false)
	{
		field.focus();
		field.style.backgroundColor = '#FF0000';
		return false;
	}
	field = document.getElementsByName('formdata[abgas_station][voll]')[0];
	if (checkValue2(field,0,999) == false)
	{
		field.focus();
		field.style.backgroundColor = '#FF0000';
		return false;
	}
	field = document.getElementsByName('formdata[abgas_ohne_regel][schwach]')[0];
	if (checkValue2(field,0.0,20.0) == false)
	{
		field.focus();
		field.style.backgroundColor = '#FF0000';
		return false;
	}
	field = document.getElementsByName('formdata[abgas_ohne_regel][mittel]')[0];
	if (checkValue2(field,0.0,20.0) == false)
	{
		field.focus();
		field.style.backgroundColor = '#FF0000';
		return false;
	}
	field = document.getElementsByName('formdata[abgas_ohne_regel][voll]')[0];
	if (checkValue2(field,0.0,20.0) == false)
	{
		field.focus();
		field.style.backgroundColor = '#FF0000';
		return false;
	}
	field = document.getElementsByName('formdata[abgas_mit_regel][schwach]')[0];
	if (checkValue2(field,0.0,20.0) == false)
	{
		field.focus();
		field.style.backgroundColor = '#FF0000';
		return false;
	}
	field = document.getElementsByName('formdata[abgas_mit_regel][mittel]')[0];
	if (checkValue2(field,0.0,20.0) == false)
	{
		field.focus();
		field.style.backgroundColor = '#FF0000';
		return false;
	}
	field = document.getElementsByName('formdata[abgas_mit_regel][voll]')[0];
	if (checkValue2(field,0.0,20.0) == false)
	{
		field.focus();
		field.style.backgroundColor = '#FF0000';
		return false;
	}
	field = document.getElementsByName('formdata[abgas_an_co_kante][schwach]')[0];
	if (checkValue2(field,0.0,20.0) == false)
	{
		field.focus();
		field.style.backgroundColor = '#FF0000';
		return false;
	}
	field = document.getElementsByName('formdata[abgas_an_co_kante][mittel]')[0];
	if (checkValue2(field,0.0,20.0) == false)
	{
		field.focus();
		field.style.backgroundColor = '#FF0000';
		return false;
	}
	field = document.getElementsByName('formdata[abgas_an_co_kante][voll]')[0];
	if (checkValue2(field,0.0,20.0) == false)
	{
		field.focus();
		field.style.backgroundColor = '#FF0000';
		return false;
	}
	field = document.getElementsByName('formdata[betriebsstunden]')[0];
	if (checkValue2(field,0.0,8700.0) == false)
	{
		field.focus();
		field.style.backgroundColor = '#FF0000';
		return false;
	}
	field = document.getElementsByName('formdata[lastverteilung][schwach]')[0];
	if (checkValue2(field,0.0,100.0) == false)
	{
		field.focus();
		field.style.backgroundColor = '#FF0000';
		return false;
	}
	field = document.getElementsByName('formdata[lastverteilung][mittel]')[0];
	if (checkValue2(field,0.0,100.0) == false)
	{
		field.focus();
		field.style.backgroundColor = '#FF0000';
		return false;
	}
	field = document.getElementsByName('formdata[lastverteilung][voll]')[0];
	if (checkValue2(field,0.0,100.0) == false)
	{
		field.focus();
		field.style.backgroundColor = '#FF0000';
		return false;
	}
	field = document.getElementsByName('formdata[brennstoffdurchsatz][schwach]')[0];
	if (checkValue2(field,0.0,100000.0) == false)
	{
		field.focus();
		field.style.backgroundColor = '#FF0000';
		return false;
	}
	field = document.getElementsByName('formdata[brennstoffdurchsatz][voll]')[0];
	if (checkValue2(field,0.0,1000000.0) == false)
	{
		field.focus();
		field.style.backgroundColor = '#FF0000';
		return false;
	}
	field = document.getElementsByName('formdata[verbrennungstemperatur][sommer]')[0];
	if (checkValue2(field,-50.0,99.0) == false)
	{
		field.focus();
		field.style.backgroundColor = '#FF0000';
		return false;
	}
	field = document.getElementsByName('formdata[verbrennungstemperatur][winter]')[0];
	if (checkValue2(field,-50.0,99.0) == false)
	{
		field.focus();
		field.style.backgroundColor = '#FF0000';
		return false;
	}
	field = document.getElementsByName('formdata[brennstoffkosten]')[0];
	if (checkValue2(field,0.1,10.0) == false)
	{
		field.focus();
		field.style.backgroundColor = '#FF0000';
		return false;
	}
	
	// Leere Werte löschen
	field = document.getElementsByName('formdata[base][firma]')[0];
	if (field.value == emptyFieldValueFirma)
		field.value = "";
	field = document.getElementsByName('formdata[base][anlage]')[0];
	if (field.value == emptyFieldValueAnlage)
		field.value = "";
	field = document.getElementsByName('formdata[base][projekt]')[0];
	if (field.value == emptyFieldValueProjekt)
		field.value = "";
	field = document.getElementsByName('formdata[base][brennertyp]')[0];
	if (field.value == emptyFieldValueBrennertyp)
		field.value = "";
	field = document.getElementsByName('formdata[base][sonstiges]')[0];
	if (field.value == emptyFieldValueSonstiges)
		field.value = "";
	field = document.getElementsByName('formdata[base][telefon]')[0];
	if (field.value == emptyFieldValueTelefon)
		field.value = "";
	
	return true;
}
