/*******************/
/* Kotelezo adatok */
/*******************/
function CheckForm() {
	
    var CheckFormObj = new Object();
	
	// E-mail cim ellenorzo
	function echeck(str) {
		text_invemail = "Prosím, zadajte platnú e-mailovú adresu!";
		var at="@"
		var dot="."
		var lat=str.indexOf(at)
		var lstr=str.length
		var ldot=str.indexOf(dot)
		var validChars = /^([a-zA-Z0-9])(([a-zA-Z0-9])*([\._-])?([a-zA-Z0-9]))*@(([a-zA-Z0-9\-])+(\.))+([a-zA-Z]{2,4})+$/
		if (str.indexOf(at)==-1){
		   alert(text_invemail)
		   return false
		}
		if (str.indexOf(at)==-1 || str.indexOf(at)==0 || str.indexOf(at)==lstr){
		   alert(text_invemail)
		   return false		}

		if (str.indexOf(dot)==-1 || str.indexOf(dot)==0 || str.indexOf(dot)==lstr){
		    alert(text_invemail)
		    return false
		}
		if (str.indexOf(at,(lat+1))!=-1){
		    alert(text_invemail)
		    return false
		}
		if (str.substring(lat-1,lat)==dot || str.substring(lat+1,lat+2)==dot){
		    alert(text_invemail)
		    return false
		}
		if (str.indexOf(dot,(lat+2))==-1){
		    alert(text_invemail)
		    return false
		}		
		if (str.indexOf(" ")!=-1){
		    alert(text_invemail)
		    return false
		}
		if (lstr-ldot<=2){ // A dot utan minimum 2 karakternek kell lennie
		    alert(text_invemail)
		    return false
		}
		if (str.search(validChars)==-1){ // Specialis karakterek nem engedelyezettek
		    alert(text_invemail)
		    return false
		}		
 		return true					
	}	
	
	function checkname(id,alerttext,required){ // Nev ellenorzese
		var nameID = document.getElementById(id);
		if(required == true){ // Kotelezo adat-e
			if(!nameID.value){
				alert(alerttext);
				nameID.focus();
				return false;
			}
		}				
	}
	function checkusername(id,alerttext1,alerttext2,required){ // Ellenorizzuk, hogy megadta-e a megrendelo felhasznalo nevet
		var userID = document.getElementById(id);
		var validUser = /^[a-zA-Z0-9]{6,12}$/;
		if(required == true){ // Kotelezo adat-e
			if( (userID.value == null) || (userID.value == "") ){ // Ha nincsen megadva adat
				alert(alerttext1);
				userID.focus();
				return false;
			}
		}
			if( (!userID.value == null) || (!userID.value == "") ){ // Ha van megadva adat es ellenorizni szeretnenk
				if(userID.value.search(validUser)==-1){
					alert(alerttext2);
					userID.focus();
					return false;
				}
			}
	}
	function checkspecchar(id,alerttext,required,specchar){ // Specialis megadott charakterek keresese
		var speccharID = document.getElementById(id);
		if(required == true){ // Kotelezo adat-e
			if(speccharID.value == specchar){
				alert(alerttext);
				speccharID.focus();
				return false;
			}
		}				
	}	
	function checkprice(id,alerttext,required,penznem,fokusz){ // Ar ellenorzese
		var priceID = document.getElementById(id);
		var fokuszID = document.getElementById(fokusz);
		if(required == true){ // Kotelezo adat-e
			if((!priceID.value) || (priceID.value == penznem)){
				alert(alerttext);
				fokuszID.focus();
				return false;
			}
		}				
	}
	function checktelephone(id,alerttext,required){ // Ellenorizzuk, hogy megadta-e a megrendelo telefonszamat
		var telephoneID = document.getElementById(id);
		var validTel = /^[0-9+#( ),-_]{6,50}$/;
		if(required == true){ // Kotelezo adat-e
			if( (telephoneID.value == null) || (telephoneID.value == "") ){ // Ha nincsen megadva adat
				alert(alerttext);
				telephoneID.focus();
				return false;
			}
		}
			if( (!telephoneID.value == null) || (!telephoneID.value == "") ){ // Ha van megadva adat es ellenorizni szeretnenk
				text_invtel = "Prosím, zadajte platné telefónne číslo!";
				if(telephoneID.value.search(validTel)==-1){
					alert(text_invtel);
					telephoneID.focus();
					return false;
				}
			}
	}
	function checkemail(id,alerttext,required){ // Ellenorizzuk, hogy megadta-e a megrendelo e-mail cimet
		var emailID = document.getElementById(id);
		if(required == true){ // Kotelezo adat-e			
			if( (emailID.value == null) || (emailID.value == "") ){ // Ha nincsen megadva adat
				alert(alerttext);
				emailID.focus();
				return false;
			}
		}
			if( (!emailID.value == null) || (!emailID.value == "") ){ // Ha van megadva adat es ellenorizni szeretnenk
				if(echeck(emailID.value) == false){
					emailID.value = "";
					emailID.focus();
					return false;
				}			
			}
			return true;
	}	
    CheckFormObj.checkname = checkname;
	CheckFormObj.checkusername = checkusername;
	CheckFormObj.checkprice = checkprice;
	CheckFormObj.checkemail = checkemail;
	CheckFormObj.checktelephone = checktelephone;
    return CheckFormObj;
    }
function CheckFormData(form){
	CheckData = new CheckForm(); // Behuzza a fugvenyobjektumot
	FORM_TYPE = form.formtype.value; // Meghatarozzuk, hogy milyen tipusu a form
	
	// Felepitese: FormID, Figyelmezteto szoveg, Kotelezo adat-e
	if(FORM_TYPE == 'newsletter'){ 
		if(CheckData.checkname('newslname','Prosím, zadajte Vaše meno!',true) == false){
			return false;
		}
		if(CheckData.checkemail('newslemail','Prosím, zadajte Vašu e-mailovú adresu!',true) == false){
			return false;
		}	
	}
	if(FORM_TYPE == 'contactus'){
		if(CheckData.checkname('contactname','Prosím, zadajte Vaše meno!',true) == false){
			return false;
		}
		if(CheckData.checkname('contactfirm','Prosím, zadajte názov Vašej firmy!',false) == false){
			return false;
		}
		if(CheckData.checktelephone('contacttel','Prosím, zadajte Vaše telefónne číslo!',false) == false){
			return false;
		}
		if(CheckData.checkemail('contactemail','Prosím, zadajte Vašu e-mailovú adresu!',true) == false){
			return false;
		}	
		if(CheckData.checkname('contactsubject','Prosím, zadajte predmet správy!',true) == false){
			return false;
		}	
		if(CheckData.checkname('contacttext','Prosím, zadajte text správy!',true) == false){
			return false;
		}			
	}		
}
