

	//formvalidation = Validate Form, select required validation for each input...
	function formvalidation(valForm){

		var els = valForm.elements;

		for (i = 0; i < els.length; i++){

			switch (els[i].id){
				case "e-mail":
					if (emailvalidation(els[i])==false){
						return false;
					}
				break;
				case "Κενό":
					if (emptyvalidation(els[i])==false){
						return false;
					}
				break;
				case "Κενό_Hidden":
					if (hiddenemptyvalidation(els[i])==false){
						return false;
					}
				break;
				case "Αριθμητικό":
					if (numericvalidation(els[i])==false){
						return false;
					}
				break;
				case "Τηλέφωνο":
					if (telephonevalidation(els[i])==false){
						return false;
					}
				break;
				case "ΤΚ":
					if (zipvalidation(els[i])==false){
						return false;
					}
				break;
				case "Checked":
					if (checkedvalidation(els[i])==false){
						return false;
					}
				break;
				//case "Ημερομηνία":
				//	if (datevalidation(els[i])==false){
				//		return false;
				//	}
				//break;
				case "Επιλογή":
					if (selectvalidation(els[i])==false){
						return false;
					}
				break;
			}
			
		}	
	}
	
	//emailvalidation = check if entry is a valid email...
	function emailvalidation(objName){
		with (objName){
		
			apos=value.indexOf("@");
			dotpos=value.lastIndexOf(".");
			lastpos=value.length-1;
		
			if (apos<1 || dotpos-apos<2 || lastpos-dotpos>3 || lastpos-dotpos<2){
					alert("Μη αποδεκτό E-mail στο πεδίο:"+value2);
					objName.select();
					objName.focus();
					return false;
			}
			else {
				return true;
			}
		}
	}
	
	//emptyvalidation = check if entry is empty...
	function emptyvalidation(objName){
		with (objName){
			if (value==null || value==""){
					alert("Το πεδίο:"+value2 +" είναι κενό!"); 
					//objName.select();
					objName.focus();
					return false;
				}
			else {
				return true;
			}
		}
	}

	//hiddenemptyvalidation = check if entry is empty for hidden input types...
	function hiddenemptyvalidation(objName){
		with (objName){
			if (value==null || value==""){
					alert("Το πεδίο Παραλήπτης είναι κενό!"); 
					return false;
				}
			else {
				return true;
			}
		}
	}
	
	//numericvalidation = check if entry is a numeric value...
	function numericvalidation(objName){

		if (isNaN(objName.value) == true || objName.value==null || objName.value=="" ){
			alert("Μη αποδεκτό αριθμητικό πεδίο στο:"+ objName.value2); 
			objName.select();
			objName.focus();
			return false;
		}
		else{
			return true;
		}

	}
	
	// telephonevalidation = check if entry is a telephone (10 digit numerical value)...
	function telephonevalidation(objName){

		if (isNaN(objName.value) == true || objName.value==null || objName.value=="" ){
			alert("Μη αποδεκτό τηλέφωνο στο:"+ objName.name); 
			objName.select();
			objName.focus();
			return false;
		}
		else if(objName.value.length < 10 || objName.value.length > 10){
			alert("Μη αποδεκτό τηλέφωνο στο:"+ objName.name +" έως και 10 ψηφία"); 
			objName.select();
			objName.focus();
			return false;
		}
		else{
			return true;
		}

	}
	
	// zipvalidation = check if entry is a zip (5 digit numerical value)...
	function zipvalidation(objName){

		if (isNaN(objName.value) == true || objName.value==null || objName.value=="" ){
			alert("Μη αποδεκτός Τ.Κ. στο:"+ objName.name); 
			objName.select();
			objName.focus();
			return false;
		}
		else if(objName.value.length < 5 || objName.value.length > 5){
			alert("Μη αποδεκτός Τ.Κ. στο:"+ objName.name +" έως και 5 ψηφία"); 
			objName.select();
			objName.focus();
			return false;
		}
		else{
			return true;
		}

	}
	
	//datevalidation = check if entry is a date...
	function datevalidation(objName){
		dtFormat = 'dd/mm/yyyy'
		udt = objName.value;
		if(udt.indexOf("/") == -1){
			alert('Μη αποδεκτή ημερομηνία!'+', διάταξη: '+dtFormat+ ' στο πεδίο:' +objName.name);
			objName.select();
			objName.focus();
			return false;
		}
		dt1 = udt.split("/")
		dd1 = parseInt(dt1[0]);
		mm1 = parseInt(dt1[1]);
		yy1 = parseInt(dt1[2]);
		if(isNaN(dd1) || isNaN(mm1) || isNaN(yy1)){
			alert('Μη αποδεκτή ημερομηνία'+ ' στο πεδίο:' +objName.name);
			objName.select();
			objName.focus();
			return false;
		}
		dt2 = new Date(yy1+'/'+mm1+'/'+dd1)
		dd2 = dt2.getDate();
		mm2 = dt2.getMonth()+1;
		yy2 = dt2.getFullYear();
		
		if(dd1==dd2 && mm1==mm2 && yy1==yy2){
			return true;
		}
		else{
			alert('Μη αποδεκτή ημερομηνία'+ ' στο πεδίο:' +objName.name);
			objName.select();
			objName.focus();
			return false;
		}
	}
	
	//checkedvalidation = check if entry is checked...
	function checkedvalidation(objName){
		with (objName){
			if ((checked) == false){
				alert("Δεν έχει επιλεγεί το πεδίο:" +objName.name);
				objName.select();
				objName.focus();
				return false;
			}
			else{
				return true;
			}
		}
	}

	//selectvalidation = check that the default option is not selected...
	function selectvalidation(objName){
		with (objName){
			if ((value) == "0"){
				alert("Δεν έχετε επιλέξει Παραλήπτη!");
				objName.focus();
				return false;
			}
			else{
				return true;
			}
		}
	}
