function tarkista_form(thisForm) // äiti kertoo jos jotain unohtui
{
var reason = "";
reason += tarkista_enimi(thisForm.enimi);
reason += tarkista_snimi(thisForm.snimi);
// reason += tarkista_kunta(thisForm.pueblo);
// reason += tarkista_puhelin(thisForm.puhelin);
reason += tarkista_spososoite(thisForm.sahkopost);
reason += tarkista_viesti(thisForm.viest);

	if (reason != "")
	{
		alert("Lomake on täytetty virheellisesti:\n\n" + reason);
		return false;
	}

return true;
}

var vari = "#EEEE66";
var vari2 = "#FFFFFF";

function tarkista_enimi(kentta) // NIMI
{
var error = "";
// var illegalChars = /\W/; // allow letters, numbers, and underscores
//  var illegalChars = /^[\wäöüåéè]+ [\wäöüåéè][\w äöüåéè]*$/;
 var legalChars = /^[a-zäöüåéèA-ZÄÖÜÅÉÈ -]+$/;
 
	if (kentta.value == "")
	{
		kentta.style.background = vari; 
		error = "Et kirjoittanut etunimeäsi.\n";
	}
	else if ( (kentta.value.length < 3) || (kentta.value.length > 30) )
	{
		kentta.style.background = vari; 
		error = "Etunimi -kentässä on oltava vähintään 3 ja korkeintaan 30 merkkiä.\n";
	}
	else if (!legalChars.test(kentta.value) )
	{
		kentta.style.background = vari; 
		error = "Nimessä saa olla vain kirjaimia, välilyöntejä ja väliviivoja (-).\n";
	}
	else { kentta.style.background = vari2; }
		
return error;
}

function tarkista_snimi(kentta) // NIMI
{
var error = "";
 var legalChars = /^[a-zäöüåéèA-ZÄÖÜÅÉÈ -]+$/;
 
	if (kentta.value == "")
	{
		kentta.style.background = vari; 
		error = "Et kirjoittanut sukunimeäsi.\n";
	}
	else if ( (kentta.value.length < 4) || (kentta.value.length > 30) )
	{
		kentta.style.background = vari; 
		error = "Sukunimi -kentässä on oltava vähintään 4 ja korkeintaan 30 merkkiä.\n";
	}
	else if (!legalChars.test(kentta.value) )
	{
		kentta.style.background = vari; 
		error = "Nimessä saa olla vain kirjaimia, välilyöntejä ja väliviivoja (-).\n";
	}
	else { kentta.style.background = vari2; }
		
return error;
}


function tarkista_kunta(kentta) // KUNTA
{
var error = "";
var legalChars = /^[a-zäöA-ZÄÖ]+$/;
	if (kentta.value == "")
	{
		kentta.style.background = vari; 
		error = "Et kirjoittanut kunnan nimeä.\n";
	}
 	else if (!legalChars.test(kentta.value) || (kentta.value.length < 2)  || (kentta.value.length > 18) ) // Ii, Kristiinankaupunki
	{
		kentta.style.background = vari;
		error = "Kunta -kentässä on oltava vähintään 2 ja korkeintaan 18 kirjainta.\n";
	}
	else { kentta.style.background = vari2; }
	
return error;  
}


function tarkista_puhelin(kentta) // PUHELIN
{
var error = "";
var legalChars = /^[0-9 -]+$/;

	if (kentta.value == "")
	{
		kentta.style.background = vari;
		error = "Et antanut puhelinnumeroasi.\n";
	}
	else if (!legalChars.test(kentta.value))
	{
		kentta.style.background = vari;
		error = "Anna puhelinnumero muodossa suuntanro-puhelinnro (xxx-xxxxxxx).\n";
	}
	else if (legalChars.length > 12)
	{
		kentta.style.background = vari;
		error = "Puhelinnumero on liian pitkä.\n";
	}
	else { kentta.style.background = vari2; }
	
return error;
}

function trim(s) // siistii bikinirajan
{
	return s.replace(/^\s+|\s+$/, '');
}

function tarkista_spososoite(kentta) // SÄHKÖPOSTIOSOITE
{
var error = "";
var Tkentta = trim(kentta.value); // kentän value ilman välilyöntejä
var emailFilter = /^[^@]+@[^@.]+\.[^@]*\w\w$/ ;
var illegalChars= /[\(\)\<\>\,\;\:\\\/\"\[\]]/ ;

	if (kentta.value == "")
	{
		kentta.style.background = vari;
		error = "Et antanut sähköpostiosoitettasi.\n";
	}
	else if (!emailFilter.test(Tkentta) ) // testaa sahkopostin merkit 
	{
		kentta.style.background = vari;
		error = "Sähköpostiosoitteesi on puutteellinen.\n"; // Please enter a valid email address
	}
	else if (kentta.value.match(illegalChars) )
	{
		kentta.style.background = vari;
		error = "Sähköposti -kentässä on vääriä merkkejä.\n";
	}
	else { kentta.style.background = vari2; }
	
return error;
}


function tarkista_viesti(kentta) // NIMI
{
var error = "";
// var legalChars = /^[a-zäöüåéèA-ZÄÖÜÅÉÈ -.,\:\;\"\']+$/;
 
	if (kentta.value == "")
	{
		kentta.style.background = vari; 
		error = "Et ole ilmaissut asiaasi.\n";
	}
	else if (kentta.value.length > 2000)
	{
		kentta.style.background = vari; 
		error = "Viestikentässä saa olla korkeintaan 2000 merkkiä.\n";
	}
// 	else if (!legalChars.test(kentta.value) )
// 	{
// 		kentta.style.background = vari; 
// 		error = "Viestissä saa olla vain kirjaimia, välilyöntejä ja väliviivoja (-).\n";
// 	}
	else { kentta.style.background = vari2; }
		
return error;
}

