/*
    This File for save validate functions for all page.
    !!! PLEASE DO NOT WRITE LEFT FUNCTIONS AND CODE. !!!
*/


/* Check Validate ContactUs Page */
var contactus_rules = new Array();
contactus_rules.push("required,name,Name is required field");
contactus_rules.push("required,email,Email is required field");
contactus_rules.push("required,comments,Message is required field");
contactus_rules.push("valid_email,email,Please enter valid email address.");

function testContactUsForm(frm)
{
	var f = document.forms[frm];
	if(!f) {
		alert("Fatal error: Cant Load Form!");
		return false;
	}
	if(validateFields(f, contactus_rules)) {
		f.submit();
		return true;
	}
	return false;
}
/* /Check Validate ContactUs Page */

/* Check Validate SingUp Page */
var reg_rules = new Array();
reg_rules.push("required,firstname,First Name is required field.");
reg_rules.push("required,lastname,Last Name is required field.");
reg_rules.push("required,address,Address is required field.");
reg_rules.push("required,city,City is required field.");
reg_rules.push("required,country,Country  is required field.");
reg_rules.push("required,phone,Phone is required field.");
reg_rules.push("digits_only,phone,Please enter valid phone number.\n Format:XXXXXXXXXX");
reg_rules.push("length=10,phone,Please enter valid phone number.\n Format:XXXXXXXXXX");
reg_rules.push("length<=10,fax,Please enter valid fax number.");
reg_rules.push("required,email,Email is required field.");
reg_rules.push("valid_email,email,Please enter valid email address.");
reg_rules.push("required,login,Username is required field.");
reg_rules.push("length=6-20,login,Username must be 6 to 20 characters.");
reg_rules.push("required,password,Password is required field.");
reg_rules.push("length=6-20,password,Password must be 6 to 20 characters.");
reg_rules.push("required,cpassword,Confirm Password is required field.");
reg_rules.push("same_as,cpassword,password,Invalid Confirm Password.");

function testRegForm(frm)
{
	var f = document.forms[frm];
	if(!f) {
		alert("Fatal error: Cant Load Form!");
		return false;
	}
	if(validateFields(f, reg_rules)) {
		f.submit();
		return true;
	}
	return false;
}
/* /Check Validate SingUp Page */

/* Check Validate Login Page */
var loginRules = new Array();
loginRules.push("required,login,Username is required field.");
loginRules.push("required,password,Password is required field.");

function testLoginForm(frm)
{
    var form = document.forms[frm];
	if(!form) {
		alert("Fatal error: Cant Load Form!");
		return false;
	}
	if(validateFields(form, loginRules))	{
		form.submit();
		return true;
	}
	return false;
}
/* /Check Validate Login Page */

/* Check Validate Reservation Page */
var reservationRules = new Array();
reservationRules.push("required,firstname,First Name is required field.");
reservationRules.push("required,lastname,Last Name is required field.");
reservationRules.push("required,address,Address is required field.");
reservationRules.push("required,city,City is required field.");
reservationRules.push("required,country,Country is required field.");
reservationRules.push("required,phone,Daytime Phone is required field.");
reservationRules.push("digits_only,phone,Please enter valid phone number.\n Format:XXXXXXXXXX");
reservationRules.push("length=10,phone,Please enter valid phone number.\n Format:XXXXXXXXXX");
reservationRules.push("length<=10,fax,Please enter valid fax number.");
reservationRules.push("digits_only,mobilePhone,Please enter valid phone number.\n Format:XXXXXXXXXX");
//reservationRules.push("length=10,mobilePhone,Please enter valid phone number.");
reservationRules.push("required,email,Email is required field.");
reservationRules.push("valid_email,email,Please enter valid email address.");
reservationRules.push("required,email,Email is required field.");
advancedReservationRules(document.getElementById('pageSelect')); // For first load page
reservationRules.push("required,creditCard,Credit Card is required field."); // Credit Card validation part 
reservationRules.push("required,nameOnCard,Name On Card is required field.");
reservationRules.push("required,cardNumber,Card Number is required field.");
reservationRules.push("digits_only,cardNumber,Please enter valid Card Number.");
reservationRules.push("length=16,cardNumber,Please enter valid Card Number.");
reservationRules.push("required,cv2,CV2 is required field.");
reservationRules.push("length=3-4,cv2,Please enter valid CV2.");
reservationRules.push("digits_only,cv2,Please enter valid CV2.");
reservationRules.push("required,agreement,Please confirm Your infomation.");
//...

//		function test() // testing
//		{
//    		var str = "";
//    		for(i=0; i<reservationRules.length; i++)
//    		    str += '['+i+']'+reservationRules[i] + '\n';
//    		alert(str);
//		} // /testing
function advancedReservationRules(_this)
{
    if (_this != null) {   
        switch (_this.value) {
        case '1': // From Airport
              reservationRules.splice(13, 1, "required,puAirportName,Airport Name is required field.");
              reservationRules.splice(14, 1, "required,puAirlineName,Airline Name is required field.");
              reservationRules.splice(15, 1, "required,puFlight,Flight # is required field.");
              reservationRules.splice(16, 1, "required,puCityFlyingFrom,City Flying From is required field.");
              reservationRules.splice(17, 1, "required,dolAddress,Address is required field.");
              reservationRules.splice(18, 1, "required,dolCity,Address is required field.");
              reservationRules.splice(19, 1, "required,dolCountry,Country is required field.");
              break;
        case '2': // To Airport 
              reservationRules.splice(13, 1, "required,pulAddress,Address is required field.");
              reservationRules.splice(14, 1, "required,pulCity,Address is required field.");
              reservationRules.splice(15, 1, "required,pulCountry,Country is required field.");
              reservationRules.splice(16, 1, "required,doAirportName,Airport Name is required field.");
              reservationRules.splice(17, 1, "required,doAirlineName,Airline Name is required field.");
              reservationRules.splice(18, 1, "required,doFlight,Flight # is required field.");
              reservationRules.splice(19, 1, "required,doCityFlyingFrom,City Flying From is required field.");
              break;
        case '3': // Point To Point
              reservationRules.splice(13, 1, "required,pul2Address,Address is required field.");
              reservationRules.splice(14, 1, "required,pul2City,Address is required field.");
              reservationRules.splice(15, 1, "required,pul2Country,Country is required field.");
              reservationRules.splice(16, 1, "required,pul2State,State is required field.");
              reservationRules.splice(17, 1, "required,dol2Address,Address is required field.");
              reservationRules.splice(18, 1, "required,dol2City,Address is required field.");
              reservationRules.splice(19, 1, "required,dol2Country,Country is required field.");
              break;
        default: alert('ERROR: No Items.\n File: header.tpl.php\n');
              break;
        }    
    } else {
        reservationRules.push("required,puAirportName,Airport Name is required field.");
        reservationRules.push("required,puAirlineName,Airline Name is required field.");
        reservationRules.push("required,puFlight,Flight # is required field.");
        reservationRules.push("required,puCityFlyingFrom,City Flying From is required field.");
        reservationRules.push("required,dolAddress,Address is required field.");
        reservationRules.push("required,dolCity,Address is required field.");
        reservationRules.push("required,dolCountry,Country is required field.");
    }
		    
}

function testReservationForm(frm)
{
    var form = document.forms[frm];
	if(!form) {
		alert("Fatal error: Cant Load Form!");
		return false;
	}
	if(validateFields(form, reservationRules))	{
		form.submit();
		return true;
	}
	return false;
}
/* /Check Validate Reservation Page */
