var password =  "";	
var errtxt	 =  "";
var validlanguage;	// DK = 0
var validnow = false;
var validerror;

function mmerr(lang, txt)
{
var err = new Array(2);
	err[0] = new Array(" - skal være mindst "," - må max være "," tegn");
	err[1] = new Array(" - has to be at least "," - can at most be "," characters");
	
return err[lang][txt];
}
	
function tterr(lang, txt)
{
var err 	 = new Array(2);
	err[0] = new Array("Nogle felter er ikke korrekt fyldt ud.",
						 " - Venligst indtast korrekt email adresse",
						 " - Venligst indtast et valid nummer",
						 " - Venligst indtast et valid telefonnummer",
						 " - Venligst udfyld feltet",
						 " - Venligst indtast et valid URL",						 
						 "Passwords er ikke ens!",
						 " - Skal være mindst 6 tegn og kun A-z 0-9 tegn må bruges");
						 
	err[1] = new Array("Some fields are not correctly filled out. - please correct it",
						 " - Please enter a valid e-mail address",
						 " - Please enter a valid number",
						 " - Please enter a valid phone number",
						 " - Please fill out the field",
						 " - Please enter a valid URL",
 						 "Passwords does not match!",
						 " - has to be at least 6 and only A-z 0-9 characters");
return err[lang][txt];
}

function valid(felt,valid)
{
if(!validate(felt,valid))
	validerror = false;

return true;
}

function validate(felt,valid)
{
	var field = felt.value;
	var RegE = "";
	var errmsg = "";
	
	if(errtxt == null) {
		errtxt = ""; // Netscape bug
		password = "";
		validnow = false;
		}
		
	if(validnow == false || validnow == null) return true;

	var Varr = valid.split(",");

	Varr[0] = Varr[0].toLowerCase();
	if(field.length == 0 && parseInt(Varr[1]) == 0)
		return true;

    if ((field.length < parseInt(Varr[1])) && (parseInt(Varr[1])>0))
    	errmsg += "- "+Varr[3]+mmerr(validlanguage,0)+Varr[1]+mmerr(validlanguage,2)+"\n";
	else if ((field.length > parseInt(Varr[2])) && (parseInt(Varr[2])>0)) 
    	errmsg += "- "+Varr[3]+mmerr(validlanguage,1)+Varr[2]+mmerr(validlanguage,2)+"\n";

	if( errmsg != "" )
	{
  		errtxt += errmsg;
		return false;
	}

	if( Varr[0] == "email") {
		errmsg = "- "+Varr[3]+tterr(validlanguage,1)+"\n";
		RegE = "^ *[-a-zA-Z0-9_\.]+@[-a-zA-Z0-9_]+\\.[-a-zA-Z0-9_\.]+$";

		var maildk = field.split(".");
		var rx=new RegExp("^[a-zA-Z][a-zA-Z][a-zA-Z]?$"); // Kontrol af top level domain
  		if (rx.exec(maildk[maildk.length-1]) ==null ) 
			{
			 errtxt += errmsg;
			 return false;  // fejl
			}
		}
		
	if( Varr[0] == "number"){
		errmsg = "- "+Varr[3]+tterr(validlanguage,2)+"\n";
			
	    if(validlanguage == 0) RegE = "^ *-?[0-9]*,?[0-9]*$";
		else if(validlanguage == 1) RegE = "^ *-?[0-9]*.?[0-9]*$";
		}

	if( Varr[0] == "phone"){
		errmsg = "- "+Varr[3]+tterr(validlanguage,3)+"\n";
		RegE = "^[-+#()0-9 ]+$";
		}
		
	if( Varr[0] == "text") {
		errmsg = "- "+Varr[3]+tterr(validlanguage,4)+"\n";
		// RegE = "^.+$";
		return true;
		}

	
	if(Varr[0] == "url") {
		errmsg = "- "+Varr[3]+tterr(validlanguage,5)+"\n";
	
		RegE = "^ *.+$";
		var urldk = field.split(".");
		var rx=new RegExp("^[a-zA-Z][a-zA-Z][a-zA-Z]?(/.*)* *$"); // Kontrol af top level domain
  		if (rx.exec(urldk[urldk.length-1]) == null ) 
			{
    		 errtxt += errmsg;
      		 return false;  // ok
			}
		}

	if( Varr[0] == "password") {
		if( password.length != 0) {
			if( password != field) {
				errtxt += tterr(validlanguage,6)+"\n";
				password = "";
				return false;
				}
			}
		else
			password = field;

		errmsg = "- "+Varr[3]+tterr(validlanguage,7)+"\n";
		RegE = "^[a-zA-Z0-9]{6,}$";
		}

  var rx=new RegExp(RegE);
  if (rx.exec(field)!=null ) 
       return true; 

  errtxt += errmsg;
  return false;
}

function showerror()
 {
	var msg = "";

	msg = tterr(validlanguage,0)+"\n"+errtxt;
	alert(msg);
	errtxt = "";
	return false;
}

function checkform(frm)
{
validlanguage = 1; // DK = 0 , UK = 1
validerror=true;
validnow = true;

for(var i = 0; i < frm.elements.length; i++)
	if(frm.elements[i].onblur != null)
		frm.elements[i].onblur();

validnow = false;

if (validerror == false) showerror();
else {
//Municipality selectbox
	var mun = document.getElementById('searchMunicipality');
    var req_text = mun.options[mun.selectedIndex].text;

    var firstLetter = req_text.substr(0,1).toLowerCase();
    var convertedText = escape(firstLetter + req_text.substr(1,req_text.length));

   



    for(var i=0;i<LocationsArray.length;i++){

	        if (LocationsArray[i] != undefined) {
	               
	            var city = LocationsArray[i][2];
	            var firstLettercity = city.substr(0,1).toLowerCase();
                	var convertedTextcity = escape(firstLettercity + city.substr(1,city.length));
	        

	              if (convertedTextcity==convertedText) {
    	            
	                var amt = LocationsArray[i][0];
			if (convertedTextcity=='all')
			amt = '99,35,25,20'

			var documentId = LocationsArray[i][1];
			var encodedTitle =  LocationsArray[i][3];

				    
				        				
			    document.forms['OlineSearchForm'].amt_region.value = amt;
      			    document.forms['OlineSearchForm'].documentId.value = documentId;
      			    
      			    
      			    if (convertedTextcity == "copenhagen") encodedTitle = "k%F8benhavn";
      			    if (convertedTextcity == "egedal") encodedTitle = "led%F8je%2DSm%f8rum%2CStenl%F8se%2C%D8lstykke";
      			    if (convertedTextcity == "rudersdal") encodedTitle = "s%F8ller%F8d%2Cbirker%F8d";
      			    if (convertedTextcity == "gribskov") encodedTitle = "gr%E6sted%2Dgilleleje%2Chelsinge";
      			     
      			     document.forms['OlineSearchForm'].Municipality.value = encodedTitle;
      
          		
		           }
	            }
	    }
	 };



return validerror;
}


