﻿
//----------------VALIDATION PART--------
function validform() {
	var rs=true;
	var flds=new Array();
	addFldsToArray(flds);
	
	for(var i=0; i<flds.length; i++) {unMarkControl(flds[i]);}
	rs=validateFlds(flds);
	
	return rs;
}

function addFldsToArray(fld){
	fld.push(['reqDepPortID', 'isNotEmpty', msg_DepId, 'reqDepPortID']);
	fld.push(['reqArrPortID', 'isNotEmpty', msg_ArrId, 'reqArrPortID']);
	fld.push(['reqDate', 'isNotEmpty', msg_DepDT, 'reqDate']);
	fld.push(['reqDate', 'checkDate', msg_DepDT1, 'reqDate', 'DD/MM/YYYY']);
	fld.push(['reqPassengers', 'ComboSelection', msg_Passengers, 'reqPassengers']);
	if (isRoundTrip()){
		fld.push(['reqRetDate', 'isNotEmpty', msg_RetDT, 'reqRetDate']);
		fld.push(['reqRetDate', 'checkDate', msg_RetDT1, 'reqRetDate', 'DD/MM/YYYY']);
		fld.push(['reqRetDate', 'isLaterDate', msg_RetDT2, 'reqRetDate', 'reqDate']);
	}
}

function isRoundTrip() {
	var rb=RadioButtonSelection(document.Form1.reqRoundTrip);
	return (rb=="yes");
}

function validateFlds(flds) {
	var fld;
	var str;
	var msg='';
	for(var i=0; i<flds.length; i++) {
		fld=flds[i];
		str=fld[1]+"(fld)";
		if (!eval(str)) {
			msg+=fld[2]+'\n\r';
			markControl(fld);
		}
	}
	if (msg!='') {alert(msg); return false;} else {return true;}
}

function isNotEmpty(fld) {
	var obj=document.getElementById(fld[0]);
	var vl = obj.value;
	var re = /.+/;
    if(!vl.match(re)) {return false;} else {return true;}
}

function isNotZero(fld){
	var obj=document.getElementById(fld[0]);
	var vl = obj.value;
	return (vl!="0");
}

function RadioButtonSelection(frm) {
	if (frm.length) {
	for(var i=0; i<frm.length; i++) {
		if (frm[i].checked) return frm[i].value;}
	return "";
	}
	if (frm.checked) return frm.value; else return "";
}

function ComboSelection(ctrl) {
	var obj=document.getElementById(ctrl[0]);
	var vl=obj.options[obj.selectedIndex].value;
	if (vl==0) {return false;} else {return true;}
}

function checkDate(ctrl) {
	var obj=document.getElementById(ctrl[0]);
	vl = obj.value; 
	return isDate(vl, ctrl[4]);
}

function isLaterDate(fld){
	var obj=document.getElementById(fld[0]);
	var obj1=document.getElementById(fld[4]);
	var obj_d=ConvertStringToDate(obj.value);
	var obj1_d=ConvertStringToDate(obj1.value);
	if (obj_d>=obj1_d){return true;} else {return false;}
}

function ConvertStringToDate(str) {
	var ar=str.split("/");
	return new Date(ar[2], ar[1]-1, ar[0], 0,0,0);
}
	
function markControl(ctrl) {
	var obj=document.getElementById(ctrl[3]);
	obj.className = "input_ctrl_error";
	//obj.style.borderColor="red";
}

function unMarkControl(ctrl){
	var obj=document.getElementById(ctrl[3]);
	obj.className = "input_ctrl";
	//obj.style.borderColor="white";
}

function HelpBooking(page){
	var op=window.open('helpBooking.asp?p='+page, 'helpBooking', 'width=400,height=320,scrollbars=auto,location=bo,resizable=no');
	op.focus();
}