function validateFormOnSubmit(theForm) {
	var reason = "";
	  reason += validateUsername(theForm.username);
	  reason += validatePassword(theForm.password);
	     
	  if (reason != "") {
   		 alert("Seuraavat kentät vaativat vielä täydentämistä:\n" + reason);
	     return false;
	  }
	  return true;
}
	function validateUsername(fld) {
    var error = "";
     
    if (fld.value == "") {
        fld.style.background = 'Yellow'; 
        error = "Et kirjoittanut käyttäjätunnusta.\n";
    } 
    else {
        fld.style.background = 'White';
    }
    return error;
}
function validateRegisterOnSubmit(theForm,op) {
	var reason = "";
	  reason += validateYritys(theForm.yritys);
  	  reason += validateAsiakasnumero(theForm.asiakasnumero);
  	  reason += validateEtunimi(theForm.etunimi);
  	  reason += validateSukunimi(theForm.sukunimi);
	  reason += validateKatuosoite(theForm.katuosoite);
	  reason += validatePostinumero(theForm.postinumero);
	  reason += validatePostitoimipaikka(theForm.postitoimipaikka);	  	  	  
	  if (op != 'modify') {
	  	reason += validateUsername(theForm.username);
	  	reason += validatePassword(theForm.password);
	  }
	  reason += validateEmail(theForm.email);
	  if (reason != "") {
   		 alert("Seuraavat kentät vaativat vielä täydentämistä:\n" + reason);
	     return false;
	  }
	  return true;
}
	function validateUsername(fld) {
    var error = "";
     
    if (fld.value == "") {
        fld.style.background = 'Yellow'; 
        error = "Et kirjoittanut käyttäjätunnusta.\n";
    } else if ((fld.value.length < 2) || (fld.value.length > 20)) {
        error = "Käyttäjätunnus on väärän pituinen. \n";
        fld.style.background = 'Yellow';
    }else if(isSplChar(fld.value) == true){
        fld.style.background = 'Yellow'; 
        error = "Käytä vain perusmerkistöä kenttään Käyttäjätunnus.\n";
		
	}
    else {
        fld.style.background = 'White';
    }
    return error;
}
function validatePassword(fld) {
    var error = "";
     
    if (fld.value == "") {
        fld.style.background = 'Yellow';
        error = "Et kirjoittanut salasanaa.\n";
    }else if ((fld.value.length < 2) || (fld.value.length > 20)) {
        error = "Salasana on väärän pituinen. \n";
        fld.style.background = 'Yellow';
    } else {
        fld.style.background = 'White';
    }
   return error;
}   
function validateYritys(fld) {
    var error = "";
	var re = /\s/g; //Match any white space including space, tab, form-feed, etc. 
	var str = fld.value.replace(re, "");
   if (str.length == 0 || str == null) {
        fld.style.background = 'Yellow'; 
        error = "Et kirjoittanut Yritystä.\n";
    }else if(isSplChar(str) == true){
        fld.style.background = 'Yellow'; 
        error = "Käytä vain perusmerkistöä kenttään Yritys.\n";
		
	} else {
        fld.style.background = 'White';
    }
    return error;  
}
function validateAsiakasnumero(fld) {
    var error = "";
 
   	var re = /\s/g; //Match any white space including space, tab, form-feed, etc. 
	var str = fld.value.replace(re, "");
   if (str.length == 0 || str == null) {

        fld.style.background = 'Yellow'; 
        error = "Et kirjoittanut Asiakasnumeroa / Yhteistyökumppania	.\n";
    } else if(isSplChar(str) == true){
        fld.style.background = 'Yellow'; 
        error = "Käytä vain perusmerkistöä kenttään Asiakasnumero / Yhteistyökumppani.\n";
		
	}else {
        fld.style.background = 'White';
    }
    return error;  
}
function validateEtunimi(fld) {
    var error = "";
 
    	var re = /\s/g; //Match any white space including space, tab, form-feed, etc. 
	var str = fld.value.replace(re, "");
   if (str.length == 0 || str == null) {

        fld.style.background = 'Yellow'; 
        error = "Et kirjoittanut Etunimeä.\n";
    }else if(isSplChar(str) == true){
        fld.style.background = 'Yellow'; 
        error = "Käytä vain perusmerkistöä kenttään Etunimi.\n";
		
	} else {
        fld.style.background = 'White';
    }
    return error;  
}
function validateSukunimi(fld) {
    var error = "";
 
    	var re = /\s/g; //Match any white space including space, tab, form-feed, etc. 
	var str = fld.value.replace(re, "");
   if (str.length == 0 || str == null) {

        fld.style.background = 'Yellow'; 
        error = "Et kirjoittanut Sukunimeä.\n";
    } else if(isSplChar(str) == true){
        fld.style.background = 'Yellow'; 
        error = "Käytä vain perusmerkistöä kenttään Sukunimi.\n";
		
	}else {
        fld.style.background = 'White';
    }
    return error;  
}
function validateKatuosoite(fld) {
    var error = "";
 
   	var re = /\s/g; //Match any white space including space, tab, form-feed, etc. 
	var str = fld.value.replace(re, "");
   if (str.length == 0 || str == null) {

        fld.style.background = 'Yellow'; 
        error = "Et kirjoittanut Katuosoitetta.\n";
    }else if(isSplChar(str) == true){
        fld.style.background = 'Yellow'; 
        error = "Käytä vain perusmerkistöä kenttään Katuosoite.\n";
		
	} else {
        fld.style.background = 'White';
    }
    return error;  
}
function validatePostinumero(fld) {
    var error = "";
 
   	var re = /\s/g; //Match any white space including space, tab, form-feed, etc. 
	var str = fld.value.replace(re, "");
   if (str.length == 0 || str == null) {

        fld.style.background = 'Yellow'; 
        error = "Et kirjoittanut Postinumeroa.\n";
    }else if(isSplChar(str) == true){
        fld.style.background = 'Yellow'; 
        error = "Käytä vain perusmerkistöä kenttään Postinumero.\n";
		
	} else {
        fld.style.background = 'White';
    }
    return error;  
}
function validatePostitoimipaikka(fld) {
    var error = "";
 
   	var re = /\s/g; //Match any white space including space, tab, form-feed, etc. 
	var str = fld.value.replace(re, "");
   if (str.length == 0 || str == null) {
        fld.style.background = 'Yellow'; 
        error = "Et kirjoittanut Postitoimipaikkaa.\n";
    }else if(isSplChar(str) == true){
        fld.style.background = 'Yellow'; 
        error = "Käytä vain perusmerkistöä kenttään Postitoimipaikka.\n";
		
	} else {
        fld.style.background = 'White';
    }
    return error;  
}
function validateEmail(fld) {
	var error = "";
    var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
    var address = fld.value;
    if (address != "") {
 	   if (reg.test(address) == false) {
   			fld.style.background = 'Yellow';
   			error = "Virheellinen Sähköposti.\n";
	   	}
   		else {
   			fld.style.background = 'White';
	   	}
	  }
	  if (address.length == 0 || address == null) {
	  fld.style.background = 'Yellow';
   			error = "Et kirjoittanut Sähköpostia.\n";
	  }else {
   			fld.style.background = 'White';
	   	}
	  	   	return error;

}
function isSplChar(str)
{	
	var spchar, getChar, SpecialChar;	
	spchar="`()(\\~!@^&*+\"|%:=,<>";
	getChar='Empty';
	SpecialChar='No';
	var spchars =" ` ( )  \\ ~ ! ^ & * + \" | : =  , < > "; 
	for(var i=0; i<str.length;i++)
	{
		for(var j=0; j<spchar.length;j++)
		{			
			if(str.charAt(i)== spchar.charAt(j))
			{			
				SpecialChar='Yes';
				break;
			}
			else
			{
				if (str.charAt(i)!=' ')
				getChar='Normal';
			}
		}		
	}
	if (SpecialChar == 'Yes')
	{
		return true;
	}
	else if (SpecialChar == 'No')
	{
		return false;
	}
}


