// JavaScript Document

function validateForm() {

  var i,p,q,nm,restr,minChars,errors='',args=validateForm.arguments;
  for (i=0; i<(args.length-2); i+=3) {
		//START FOR
		val=findObj(args[i]);	
		minChars=args[i+1];
			restr=args[i+2];
		try{
			if (val) {
				nm=val.id;
				if ((vl=val.value)!="") {
					if (restr.indexOf('isEmail')!=-1) {
						p=vl.indexOf('@');
						q=vl.indexOf('.');
						if (p<1 || p==(length-1) || q<1 || q==(length-1)) {
							errors+=' - Το πεδίο \"'+nm+'\" πρέπει να περιέχει το email σας.\n';
							val.style.backgroundColor=errorColor;
						}
					}else if (restr.indexOf('isNum')!=-1) {
						p=isNaN(vl);
						if (p){
							errors+=' - Το πεδίο \"'+nm+'\" πρέπει να περιέχει αριθμητική τιμή.\n';
							val.style.backgroundColor=errorColor;
						}
					}else if (vl.length<minChars){
						errors+=' - Το πεδίο \"'+nm+'\" δεν μπορεί να περιέχει λιγότερο από '+minChars+' χαρακτήρες .\n';
						val.style.backgroundColor=errorColor;
					}
				}else if (restr.charAt(0) == 'R') {
					errors += ' - Το πεδίο \"'+nm+'\" είναι προαπαιτούμενο.\n'; 
					val.style.backgroundColor=errorColor;			
				}
			}
		}catch(e){
			//FOR OPTIONLISTS...
			var lstObjs,k,j,tmpSel=false;
			for(k=0;k<document.forms.length;k++){
				if(lstObjs=document.forms[k].elements[args[i]]) break;
			}		
			for(j=0;j<lstObjs.length;j++){
				tmpSel=tmpSel||lstObjs[j].checked;
			} 
			
			if(!tmpSel){
				errors += ' - Πρέπει να επιλέξετε τουλάχιστο ένα από: \"'+lstObjs[0].id+'\".\n';
				lstObjs[0].style.backgroundColor=errorColor;
			}else{
				lstObjs[0].style.backgroundColor=okColor;
			}
		}
		if(!(errors.indexOf(nm)>=0)){
			if (val){ if (val.style) {if (val.style.backgroundColor){ val.style.backgroundColor=okColor;}}	}
		}
		//END FOR
  }
	
	 if (errors) alert('Παρουσιάστηκαν τα παρακάτω προβλήματα:\n'+errors);

	try{
  	document.returnValue = (errors == '');
	}catch(e){
		document.returnValue = true;
	}
}

function requireAtLeastOne(){
	var args=requireAtLeastOne.arguments;
	var searchStuff="";
	for (i=1; i<args.length; i++) {
		searchStuff+=document.forms[args[0]][args[i]].value;
	}
	if (searchStuff==""){
		for (i=1; i<args.length; i++) {
			document.forms[args[0]][args[i]].style.backgroundColor=errorColor;
		}
		alert("Πρέπει να εισάγετε κάποιο ελάχιστο κείμενο.");		
		document.returnValue=false;
	}else{
		for (i=1; i<args.length; i++) {
			document.forms[args[0]][args[i]].style.backgroundColor=okColor;
		}
		document.returnValue=true;
	}
}

function comparePasswords(pass1,pass2){
	  if (findObj(pass1).value!=findObj(pass2).value){
			alert("Οι κωδικοί που εισάγατε διαφέρουν.");
			return false;
			}else return true;		
}

