var Airports={};var Ports={};Airports["ABZ"]="Aberdeen";Airports["BFS"]="Belfast Int'l";Airports["BHX"]="Birmingham";Airports["BRS"]="Bristol";Airports["CWL"]="Cardiff";Airports["DSA"]="Doncaster";Airports["MME"]="Durham Tees Valley";Airports["EMA"]="East-Midlands";Airports["EDI"]="Edinburgh";Airports["EXT"]="Exeter";Airports["LGW"]="Gatwick";Airports["GLA"]="Glasgow";Airports["LHR"]="Heathrow";Airports["LBA"]="Leeds-Bradford";Airports["LPL"]="Liverpool";Airports["LTN"]="Luton";Airports["MAN"]="Manchester";Airports["NCL"]="Newcastle";Airports["PIK"]="Prestwick";Airports["SOU"]="Southampton";Airports["STN"]="Stansted";Ports["DOV"]="Dover";function getLocations(airport){if(typeof Initialize=='function')
{Settings=new Initialize;if(!airport)
{var type=Settings.WhichLocations;var selected=Settings.Preselect;var method=Settings.Sampling;}
else
{var type='all'
var selected=airport;var method='byname';}}
else
{if(!airport)
{var type='all';var selected='detect';var method='byname';}
else
{var type='all';var selected=airport;var method='byname';}}
var elem=1;var AirportName;var AirportCode;var PortName;var PortCode;if(!type)var type='all';if(!selected)var selected='';if(!method)var method='';if(selected=='detect')
{var requri=window.location;selected=requri.toString();}
cut=selected.indexOf("?");if(cut>0)selected=selected.substring(0,cut);selected=selected.toLowerCase();selected=selected.replace("-","_");var returnValue="";returnValue+='<option value="">Please select a location</option>';if(type=="airports"||type=="all")
{for(code in Airports){AirportName=Airports[code].toLowerCase();AirportName=AirportName.replace("-","_");AirportCode=code.toLowerCase();returnValue+='<option value="'+code+'">'+Airports[code]+'</option>';if(method=="bycode"){if(in_array(AirportCode,selected)>0)var num=elem;}
if(method=="byname"){if(in_array(AirportName,selected)>0)var num=elem;}
elem++;}}
if(type=="ports"||type=="all")
for(code in Ports){PortName=Ports[code].toLowerCase();PortCode=code.toLowerCase();returnValue+='<option value="'+code+'" style="color:blue">'+Ports[code]+'</option>';if(method=="bycode"){if(selected.indexOf(PortCode)>=0)var num=elem;}
if(method=="byname"){if(selected.indexOf(PortName)>=0)var num=elem;}
elem++;}
return returnValue;}

function in_array(needle, haystack){
	needle = needle.toLowerCase();
	if(needle.indexOf(" ")< 0){
		if(haystack.indexOf(needle)>=0)
			return true;
		else
			return false;
	}else{
		var aArray = [];
		aArray = needle.split(" ");
		for(i=0;i<aArray.length;i++){
			if(haystack.indexOf(aArray[i])>=0)
				return true;
		}
		return false;
	}
}
function CheckAirport()
{element=document.getElementById('ap');var a1=element.value;if(a1=="")
{alert("Please select an airport.");return false;}
else
{return true;}}
function ReturnDateFadeOut(obj)
{if(obj.value=="RO")
{document.getElementById('ret_dates').style.visibility="collapse";document.getElementById('rdd').disabled=true;document.getElementById('rdm').disabled=true;document.getElementById('rdy').disabled=true;}
else if(obj.value=="PKG")
{document.getElementById('ret_dates').style.visibility="visible";document.getElementById('rdd').disabled=false;document.getElementById('rdm').disabled=false;document.getElementById('rdy').disabled=false;}}
function SetDays(days,id){var sel=document.getElementById(id);var full=sel.length;var diff=full-days;if(diff>0)
{for(i=0;i<=diff;i++)
{sel.options[full-i]=null;}}
else
{diff=diff*-1;var max=full+diff;var min=(full+1);for(i=min;i<=max;i++)
{sel.options[i-1]=new Option(i,i);}}
return days;}
function UpdateOptions(){if(typeof Initialize=='function')
{Settings=new Initialize;var DepYearId=Settings.depYid;var DepMonthId=Settings.depMid;var DepDayId=Settings.depDid;var RetYearId=Settings.retYid;var RetMonthId=Settings.retMid;var RetDayId=Settings.retDid;}
else
{var DepYearId='ddy';var DepMonthId='ddm';var DepDayId='ddd';var RetYearId='rdy';var RetMonthId='rdm';var RetDayId='rdd';}
var DepYearValue=document.getElementById(DepYearId).value;DepYearValue=DelzeroPad(DepYearValue);var DepMonthValue=document.getElementById(DepMonthId).value-1;DepMonthValue=DelzeroPad(DepMonthValue);var DepNumDays=DaysOfThisMonth(DepYearValue,DepMonthValue);SetDays(DepNumDays,DepDayId);var RetYearValue=document.getElementById(RetYearId).value;RetYearValue=DelzeroPad(RetYearValue);var RetMonthValue=document.getElementById(RetMonthId).value-1;RetMonthValue=DelzeroPad(RetMonthValue);var RetNumDays=DaysOfThisMonth(RetYearValue,RetMonthValue);SetDays(RetNumDays,RetDayId);}
function zeroPad(value){var newvalue=value.toString();if(newvalue.length==1)return"0"+newvalue;else return newvalue;}
function DelzeroPad(value){value=value.toString();var firstdigit=value.substr(0,1);if(value.length>1&&firstdigit=='0')value=value.substr(1);return value;}
function DaysOfThisMonth(year,month){daysofmonth=(32-new Date(year,month,32).getDate());return daysofmonth;}
function Essentials(){this.Name=new Array('January','February','March','April','May','June','July','August','September','October','November','December');this.ShortName=new Array('Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep','Oct','Nov','Dec');}
function PrintDays(){if(typeof Initialize=='function')
{Settings=new Initialize;var dZero=Settings.DayValueFormat;}
else
{var dZero='N2'}
var i=1;var dayValue=null;var thisdate=new Date();var thisDay=thisdate.getDate();var thisMonth=thisdate.getMonth()+1;var thisYear=thisdate.getFullYear();var offset=1;var adjusted=thisdate.getDate()+offset;var daysThisMonth=DaysOfThisMonth(thisYear,thisMonth);var difference=daysThisMonth-thisDay;if(adjusted>daysThisMonth)thisDay=offset-difference;else thisDay=thisDay+offset;var returnValue="";for(i=1;i<=31;i++)
{if(dZero=='N2')dayValue=zeroPad(i);else dayValue=i;returnValue+='<option value="'+dayValue+'"';if(i==thisDay)returnValue+=' selected';returnValue+='>'+i+'</option>';}i=null;return returnValue;}
function PrintMonths(mode){var i=null;Month=new Essentials;if(typeof Initialize=='function')
{Settings=new Initialize;var value=Settings.MonthValueFormat;}
else
{var value='N2';}
var monthvalue=null;var thisdate=new Date();var thisMonth=thisdate.getMonth();var thisYear=thisdate.getFullYear();var offset=1;var adjusted=thisdate.getDate()+offset;var daysThisMonth=DaysOfThisMonth(thisYear,thisMonth);if(adjusted>daysThisMonth)thisMonth=thisMonth+1;var returnValue="";for(i=0;i<12;i++)
{if(value=='N2')monthvalue=zeroPad(i+1);else if(value=='S3')monthvalue=Month.Name[i].substr(0,3);else monthvalue=i+1;returnValue+='<option value="'+monthvalue+'"';if(i==thisMonth)returnValue+=' selected';returnValue+='>';if(mode==1)returnValue+=Month.ShortName[i];else returnValue+=Month.Name[i];returnValue+='</option>';}i=null;return returnValue;}
function PrintYears(){var yearvalue=null;if(typeof Initialize=='function')
{Settings=new Initialize;var value=Settings.YearValueFormat;}
else
{var value='N2';}
var thisdate=new Date();var thisMonth=thisdate.getMonth();var thisYear=thisdate.getFullYear();var offset=1;var adjusted=thisdate.getDate()+offset;var daysThisMonth=DaysOfThisMonth(thisYear,thisMonth);if(adjusted>daysThisMonth)thisMonth=thisMonth+1;if(thisMonth>11)thisYear=thisYear+1;var nextYear=thisYear+1;var returnValue="";for(i=thisYear;i<=nextYear;i++)
{if(value=='N2'){yearvalue=i.toString();yearvalue=yearvalue.substr(2,4);}
returnValue+='<option value="'+yearvalue+'"';if(i==thisYear)returnValue+=' selected';returnValue+='>'+i+'</option>';}i=null;return returnValue;}
function PrintTime(){if(typeof Initialize=='function')
{Variables=new Initialize;var depHrs=Variables.depHrs;var depMin=Variables.depMin;var retHrs=Variables.retHrs;var retMin=Variables.retMin;var timeInterval=Variables.timeInterval;var selDepHr=Variables.selDepHr;var selRetHr=Variables.selRetHr;var TimeSep=Variables.TimeSeparator;}
else
{var depHrs='dth';var depMin='dtm';var retHrs='rth';var retMin='rtm';var timeInterval=30;var selDepHr=6;var selRetHr=18;var TimeSep=':';}
if(selDepHr<1)selDepHr=1;if(selRetHr<1)selDepHr=1;var merged=false;if(depHrs==depMin){merged=true;}
var returnValue="";this.Hours=function(which){var i=0;var hour="";for(i=0;i<24;i++){hour=zeroPad(i);returnValue+='<option value="'+hour+'"';if(which=='dep')if(i==selDepHr)returnValue+=' selected';if(which=='ret')if(i==selRetHr)returnValue+=' selected';returnValue+='>'+hour+'</option>';}
return returnValue;}
this.Mins=function(){var i=0;var min="";for(i=0;i<60;i=i+timeInterval){min=zeroPad(i);returnValue+='<option value="'+min+'">'+min+'</option>';}return returnValue;}
this.Merged=function(which){var i=0;var hour="";var j=0;var min="";var sel_set=false;for(i=0;i<24;i++){hour=zeroPad(i);for(j=0;j<60;j=j+timeInterval){min=zeroPad(j);returnValue+='<option value="'+hour+min+'"';if((which=='dep')&&(!sel_set))if(i==selDepHr){returnValue+=' selected';sel_set=true}
if((which=='ret')&&(!sel_set))if(i==selRetHr){returnValue+=' selected';sel_set=true}
returnValue+='>'+hour+TimeSep+min+'</option>';}}
return returnValue;}}
function GetHours(which)
{var GetTimes=new PrintTime;return GetTimes.Hours(which);}
function GetMins()
{var GetTimes=new PrintTime;return GetTimes.Mins();}
function GetTimesMerged(which)
{var GetTimes=new PrintTime;return GetTimes.Merged(which);}
function CalculateReturnDate(year,month,day)
{var mod_dur=7;var nextyear=year+1;var nextmonth=month+1;var retday=0;var DateArray=new Object;daysofmonth=DaysOfThisMonth(year,month-1);retday=day+mod_dur;if(retday<=daysofmonth){ReturnYear=year;ReturnMonth=month;ReturnDay=retday;}
else
{retday=retday-daysofmonth;month=nextmonth;if(month<=12){ReturnYear=year;ReturnMonth=month;ReturnDay=retday;}
else
{month=month-12;ReturnYear=nextyear;ReturnMonth=month;ReturnDay=retday;}}
DateArray['day']=ReturnDay;DateArray['month']=ReturnMonth;DateArray['year']=ReturnYear;return DateArray;}
function CalculateDate(year,month,day,mod_dur)
{var nextyear=year+1;var nextmonth=month+1;var retday=0;var DateArray=new Object;daysofmonth=DaysOfThisMonth(year,month-1);retday=day+mod_dur;if(retday<=daysofmonth){ReturnYear=year;ReturnMonth=month;ReturnDay=retday;}
else
{retday=retday-daysofmonth;month=nextmonth;if(month<=12){ReturnYear=year;ReturnMonth=month;ReturnDay=retday;}
else
{month=month-12;ReturnYear=nextyear;ReturnMonth=month;ReturnDay=retday;}}
DateArray['day']=ReturnDay;DateArray['month']=ReturnMonth;DateArray['year']=ReturnYear;return DateArray;}
function SplitMergedDates(DateField)
{if(typeof Initialize=='function')
{Variables=new Initialize;var format=Variables.DateFormat;var dat_sep=Variables.DateSeparator;}
else
{var format='GB';var dat_sep='/';}
var dateArray=DateField.split(dat_sep);if(format=="GB")
{var year_part=dateArray[2];year_part=year_part.toString();ydigits=year_part.length;day=parseInt(DelzeroPad(dateArray[0]));month=parseInt(DelzeroPad(dateArray[1]));if(ydigits==2)year="20"+dateArray[2];else year=dateArray[2];}
else
{var year_part=dateArray[0];year_part=year_part.toString();ydigits=year_part.length;day=parseInt(DelzeroPad(dateArray[2]));month=parseInt(DelzeroPad(dateArray[1]));if(ydigits==2)year="20"+dateArray[0];else year=dateArray[0];}
return dateArray;}
function SetDates(whichform,mode,strt,end){var formelement=document.getElementById(whichform);if(!mode)var mode=null;if(!strt)var strt=0;if(!end)var end=7;if(typeof Initialize=='function')
{Variables=new Initialize;var depYid=Variables.depYid;var depMid=Variables.depMid;var depDid=Variables.depDid;var retYid=Variables.retYid;var retMid=Variables.retMid;var retDid=Variables.retDid;var yearvalue=Variables.YearValueFormat;var monthvalue=Variables.MonthValueFormat;var dZero=Variables.DayValueFormat;var format=Variables.DateFormat;var dat_sep=Variables.DateSeparator;}
else
{var depYid='ddy';var depMid='ddm';var depDid='ddd';var retYid='rdy';var retMid='rdm';var retDid='rdd';var yearvalue='N2';var monthvalue='N2';var dZero='N2';var format='GB';var dat_sep='/';}
var merged=false;var retday;var daysofmonth;var monthArray=new Array('January','February','March','April','May','June','July','August','September','October','November','December');var optionvalue;var ydigits;var day;var month;var year;var ReturnDate;var ReturnYear;var ReturnMonth;var ReturnDay;var SelMonth;var today=new Date();var SetDay=today.getDate();var SetMonth=today.getMonth()+1;var SetYear=today.getFullYear();var CalculatedDate=CalculateDate(SetYear,SetMonth,SetDay,strt);var SetDay=CalculatedDate['day'];var SetMonth=CalculatedDate['month'];var SetYear=CalculatedDate['year'];if(depYid===depMid&&depMid===depDid){var dateArray=new Array();var DepDateField=document.getElementById(depYid).value;if((!DepDateField)&&(format=="GB"))
{if(monthvalue=='N2')SetMonth=zeroPad(SetMonth);if(dZero=='N2')SetDay=zeroPad(SetDay);if(yearvalue=='N2'){SetYear=SetYear.toString();SetYear=SetYear.substr(2,4);}
DepDateField=SetDay+dat_sep+SetMonth+dat_sep+SetYear;document.getElementById(depYid).value=DepDateField;}
datearray=SplitMergedDates(DepDateField);var day=parseInt(DelzeroPad(datearray[0]));var month=parseInt(DelzeroPad(datearray[1]));var year=parseInt(DelzeroPad(datearray[2]));}else{document.getElementById(depDid).selectedIndex=SetDay-1;document.getElementById(depMid).selectedIndex=SetMonth-1;document.getElementById(depYid).selectedIndex=SetYear-parseInt("20"+document.getElementById(depYid).value);}
if(mode!="DepOnly")
{if(retYid==retMid&&retMid==retDid)merged=true;var RetDateBlock=CalculateReturnDate(year,month,day);ReturnYear=RetDateBlock['year'];ReturnMonth=RetDateBlock['month'];ReturnDay=RetDateBlock['day'];if(yearvalue=="N2"){ReturnYear=ReturnYear.toString();ReturnYear=zeroPad(ReturnYear);}
if(monthvalue=="N2"){ReturnMonth=zeroPad(ReturnMonth);}
if(dZero='N2')ReturnDay=zeroPad(ReturnDay);if(merged){if(format=="GB")ReturnDate=ReturnDay+dat_sep+ReturnMonth+dat_sep+ReturnYear;else ReturnDate=ReturnYear+dat_sep+ReturnMonth+dat_sep+ReturnDay;var dateField=document.getElementById(retYid);dateField.value=ReturnDate;}
else
{var RetDateBlock=CalculateReturnDate(SetYear,SetMonth,SetDay);if(end&&end!=7){RetDateBlock['day']+=(end-7);}
ReturnYear=RetDateBlock['year'];ReturnMonth=RetDateBlock['month'];ReturnDay=RetDateBlock['day'];document.getElementById(retDid).selectedIndex=ReturnDay-1;document.getElementById(retMid).selectedIndex=ReturnMonth-1;document.getElementById(retYid).selectedIndex=ReturnYear-parseInt("20"+document.getElementById(retYid).value);}}}

//mon is the calendar month, not 0 based month, Jan = 1, Feb = 2
//yr is 4 digits - 2010
function DaysInMonth(mon, yr) {
    return new Date(yr, mon, 0).getDate();
}

function emptyNode(node){
    while(node.hasChildNodes()){
        node.removeChild(node.firstChild);
    }
}

function UpdateReturnDate(change) {
	var change = change || true; //empty for update return values
    var dat_sep="/";
    if(typeof Initialize=='function'){
        Variables=new Initialize;
        var depYid=Variables.depYid;
        var depMid=Variables.depMid;
        var depDid=Variables.depDid;
        var retYid=Variables.retYid;
        var retMid=Variables.retMid;
        var retDid=Variables.retDid;
        var yearvalue=Variables.YearValueFormat;
        var monthvalue=Variables.MonthValueFormat;
        var dZero=Variables.DayValueFormat;
        var format=Variables.DateFormat;
    }else{
        var depYid='ddy';
        var depMid='ddm';
        var depDid='ddd';
        var retYid='rdy';
        var retMid='rdm';
        var retDid='rdd';
        var yearvalue='N2';
        var monthvalue='N2';
        var dZero='N2';
        var format='GB';
    }
    if(retYid==retMid&&retMid==retDid)
        var merged=true;
    if(!merged){
        var DepDay = document.getElementById(depDid).options[document.getElementById(depDid).selectedIndex].value;
        var DepMon = document.getElementById(depMid).options[document.getElementById(depMid).selectedIndex].value;
        var DepYear = document.getElementById(depYid).options[document.getElementById(depYid).selectedIndex].value;

		var origRetD = document.getElementById(retDid).selectedIndex;
		var origRetM = document.getElementById(retMid).selectedIndex;
		var origRetY = document.getElementById(retYid).selectedIndex;
        var RetDate = new Date("20" + DepYear, (parseInt(DepMon) - 1), (parseInt(DepDay) + 7), 0, 0, 0, 0);
        var RetDay = RetDate.getDate();
        var RetMon = RetDate.getMonth() + 1; //getMonth is zero based
        var RetYear = RetDate.getFullYear();
        var RetDays = DaysInMonth(RetMon, "20"+RetYear);
        var RetDayOpt = document.getElementById(retDid);

        emptyNode(RetDayOpt);
//		var DepDays = DaysInMonth(DepMon, "20" + DepYear);
//        var DepDayOpt = document.getElementById(depDid);
//        emptyNode(DepDayOpt);
//        for(var dDay = 1; dDay <= DepDays; dDay++){
//            var opt = document.createElement("OPTION");
//            opt.value = dDay;
//            opt.appendChild(document.createTextNode(dDay));
//            if(dDay == DepDay){
//                opt.setAttribute("selected","selected");
//            }
//            DepDayOpt.appendChild(opt);
        //        }
        if (change === true && RetYear != "20" + DepYear) {
        	var yrInd = document.getElementById(retYid).selectedIndex;
        	document.getElementById(retYid).options[yrInd].removeAttribute("selected");
        	document.getElementById(retYid).options[(yrInd + 1)].setAttribute("selected", "selected");
        }
        if (parseInt(RetMon +1) != parseInt(DepMon)) {
        	document.getElementById(retMid).options[document.getElementById(retMid).selectedIndex].removeAttribute("selected");
			var l = document.getElementById(retMid).options.length;
			for (var rM = 0; rM < l; rM++) {
				if ((change === true && document.getElementById(retMid).options[rM].value == RetMon) || (change !== true && rM == origRetM)) {
					document.getElementById(retMid).options[rM].setAttribute("selected", "selected");
					break;
				}
			}
        }
        for(var rDay = 1; rDay <= RetDays; rDay++){
            var opt = document.createElement("OPTION");
            opt.value = rDay;
            opt.appendChild(document.createTextNode(rDay));
            if((change === true && rDay == RetDay) || (change !== true && rDay == origRetD)){
                opt.setAttribute("selected","selected");
            }
            RetDayOpt.appendChild(opt);
        }
    }
    /*if(!merged){
        var day_ind=document.getElementById(depDid).selectedIndex;
        var day=document.getElementById(depDid).options[day_ind].value;
        var month_ind=document.getElementById(depMid).selectedIndex;
        var month=document.getElementById(depMid).options[month_ind].value;
        var year_ind=document.getElementById(depYid).selectedIndex;
        var year=document.getElementById(depYid).options[year_ind].value;
    }else{
        var DepDateField=document.getElementById(depYid).value;
        datearray=SplitMergedDates(DepDateField);
        var day=parseInt(DelzeroPad(datearray[0]));
        var month=parseInt(DelzeroPad(datearray[1]));
        var year=parseInt(DelzeroPad(datearray[2]));
    }
    day=parseInt(DelzeroPad(day));
    month=parseInt(DelzeroPad(month));
    if(year.length==2)
        year=parseInt("20"+year);
    ydigits=year.length;
    var RetDateBlock=CalculateReturnDate(year,month,day);
    ReturnYear=RetDateBlock['year'];
    ReturnMonth=RetDateBlock['month'];
    ReturnDay=RetDateBlock['day'];
    if(yearvalue=="N2"){
        ReturnYear=ReturnYear.toString();
        ReturnYear=zeroPad(ReturnYear);
    }
    if(monthvalue=="N2"){
        ReturnMonth=zeroPad(ReturnMonth);
    }
    if(dZero=='N2')
        ReturnDay=zeroPad(ReturnDay);
    if(merged){
        if(format=="GB")
            ReturnDate=ReturnDay+dat_sep+ReturnMonth+dat_sep+ReturnYear;
        else
            ReturnDate=ReturnYear+dat_sep+ReturnMonth+dat_sep+ReturnDay;
    var dateField=document.getElementById(retYid);
    dateField.value=ReturnDate;
    }else{
        var year_options=document.getElementById(retYid).options.length;
        for(i=0;i<year_options;i++){
            optionvalue=document.getElementById(retYid).options[i].value;
            optionvalue="20"+optionvalue.toLowerCase();
            if(optionvalue==ReturnYear)
                document.getElementById(retYid).selectedIndex=i;
        }
        var num_options=document.getElementById(retMid).options.length;
        if(monthvalue=="S3"){
            SelMonth=monthArray[ReturnMonth-1];
            SelMonth=SelMonth.substr(0,3);
            for(i=0;i<num_options;i++){
                optionvalue=document.getElementById(retMid).options[i].value;
                optionvalue=optionvalue.toLowerCase();
                SelMonth=SelMonth.toLowerCase();
                if(optionvalue==SelMonth)
                    document.getElementById(retMid).selectedIndex=i;
            }
        }else if(monthvalue=="N2"|| monthvalue=="N"){
            SelMonth=ReturnMonth;
            for(i=0;i<num_options;i++){
                optionvalue=document.getElementById(retMid).options[i].value;
                if(optionvalue==SelMonth)
                    document.getElementById(retMid).selectedIndex=i;
            }
        }else{
            alert("ERROR: Wrong monthvalue parameter");
        }
        document.getElementById(retDid).selectedIndex=ReturnDay-1;
    }*/
}

function FormValueConverter(formobj,formtype)
{
	var formelement=document.getElementById(formobj.id);
	var a1=formelement.ap.value;
	if(a1=="Request"||a1==""){alert("Please select an airport.");return false;}
	if(formtype=='main_parking')
	{
		var mergedDTvalue=formelement.dtime.value;
		var mergedRTvalue=formelement.rtime.value;
		formelement.dth.value=mergedDTvalue.substr(0,2);
		formelement.dtm.value=mergedDTvalue.substr(2);
		formelement.rth.value=mergedRTvalue.substr(0,2);
		formelement.rtm.value=mergedRTvalue.substr(2);
	}
	if(formtype=='parking')
	{	
		var mergedDTvalue=formelement.dtime.value;
		var mergedRTvalue=formelement.rtime.value;
		formelement.dth.value=mergedDTvalue.substr(0,2);
		formelement.dtm.value=mergedDTvalue.substr(2);
		formelement.rth.value=mergedRTvalue.substr(0,2);
		formelement.rtm.value=mergedRTvalue.substr(2);
	}
	return true;
}

Array.prototype.in_array=function(p_val){
	for(var i=0,l=this.length;i<l;i++){
		if(this[i]==p_val){
			return true;
		}
	}
	return false;
}

function GoogleCrossDomainConverter(formobj,formtype,trackingID){

	var parkmanEntry = "http://booking.aph.com/aph/aphbook.asp";	

	// THE FOLLOWING SETTINGS OVERRULE ALL SETTINGS REGARDING THE TEMPLATES 
	// group codes in the folloing array will be sent to ParkMan
	var parkman_groups = new Array('PP');
	
	// code in the folling array or the on retrieved by ajax from the CSV file will be sent to ParkMan
	var pman_array_ajax = newAjax("POST","/admin/mainadmin/parkman/parkman_codes.csv");
	pman_array_ajax.send(false);
	s = pman_array_ajax.status;
	var parkman_array;
	if(s == 200 || s == 304){
		parkman_array = pman_array_ajax.responseText.split(",");
	}else{
		parkman_array = new Array('ASDA','APH','ASDAE','ASDAR','ASDAF','25OFF','ASALE','EDISC','EM06A','EM06B','EM06C','EM06D','EM06E','EM06F','ENEWS','EPARK','EXPEM','EZINE','FWCS1','FWCS2','FWCS3','FWCS4','KISS','KRING','MATAL','SALE','THKS','WBWEB','WCOME','CHAN2','HOT10','AFU');
	}
	
	// codes in the folloing array will be using agentcode for tmp, other will default to epark
	var tmp_exceptions = new Array('APH','AFU','ASDAE','ASDAR','ASDAF');
	
	// codes in the folloing array will be using agentcode for tmp, other will default to epark
	var disc_exceptions = Array();

    var tmp = formobj.tmp.value;
    if(!tmp)
        tmp = APHScriptLibrary.ReadCookie('tmp');
	if(APHScriptLibrary.ReadCookie('dep') && APHScriptLibrary.ReadCookie('dep').toUpperCase() == "CH"){
    	if(!tmp){
        	tmp = "disc";
        }
    }else{
    	if(!tmp){
            if(agentCode.toLowerCase() == "aph"){
                tmp = "aph";
            }else{
                tmp = "epark";   
            }
        }
    }
	var dest = null;
	var agentgroup = APHScriptLibrary.ReadCookie('group');
    var querystr = "";
	
	switch(formtype){
	
	// hotels
	case'hotel':
		dest = (parkman_array.in_array(agentCode.toUpperCase())||(parkman_groups.in_array(agentgroup.toUpperCase()))?
			parkmanEntry: parkmanEntry);//"http://www.parking-quote.co.uk/hotprof/HotProf.ASP");
		/*if(parkman_array.in_array(agentcode.toUpperCase())||(parkman_groups.in_array(agentgroup.toUpperCase())))
		{
			if (!tmp) tmp = "epark";
			
			if(tmp_exceptions.in_array(agentcode.toUpperCase()))
				tmp = agentcode;
			if(disc_exceptions.in_array(agentcode.toUpperCase()))
				tmp = "disc";
		}//*/
		var ddd = formobj.ddd.value;
		var ddm = formobj.ddm.value;
		var ddy = formobj.ddy.value;
        var zn = formObj.zn.value;
        var pkg_ro = "";
        if(zn.toUpperCase() == "PKG"){
		    var rdd = formobj.rdd.value;
		    var rdm = formobj.rdm.value;
		    var rdy = formobj.rdy.value;
            pkg_ro = '&rdd='+rdd+'&rdm='+rdm+'&rdy='+rdy;
        }
		var ur = null;
		if(formobj.ur!=null)
		 ur = formobj.ur.value;
		var airport = formobj.ap.value;
		var zn = formobj.zn.value;
		if(formobj.prod)
			var prod = formobj.prod.value;
		querystr = dest+'?agent='+agentCode+'&tmp='+tmp+'&ddd='+ddd+'&ddm='+ddm+'&ddy='+ddy+pkg_ro+'&ap='+airport+'&zn='+zn;
		if(prod)
			querystr+='&prod='+prod;
		if(dest.indexOf("/aph/aphbook")>=0)
			querystr+="&p=h";
		break;
		
	// parking	
	case'parking':
		dest=(parkman_array.in_array(agentCode.toUpperCase())||(parkman_groups.in_array(agentgroup.toUpperCase()))?
			parkmanEntry: parkmanEntry);//"http://www.parking-quote.co.uk/parking/profpark.asp");
		/*if(parkman_array.in_array(agentCode.toUpperCase())||(parkman_groups.in_array(agentgroup.toUpperCase())))
		{
			if (!tmp) tmp = "epark";
			
			if(tmp_exceptions.in_array(agentCode.toUpperCase()))
				tmp = agentCode;
			if(disc_exceptions.in_array(agentCode.toUpperCase()))
				tmp = "disc";
		}//*/
		var ddd=formobj.ddd.value;
		var ddm=formobj.ddm.value;
		var ddy=formobj.ddy.value;
		var dth=formobj.dth.value;
		var dtm=formobj.dtm.value;
		var rdd=formobj.rdd.value;
		var rdm=formobj.rdm.value;
		var rdy=formobj.rdy.value;
		var rth=formobj.rth.value;
		var rtm=formobj.rtm.value;
		var ur = null;
		if(formobj.ur!=null) ur=formobj.ur.value;
		var airport=formobj.ap.value;
		if(formobj.cp)
			var cp = formobj.cp.value;
		var px = formobj.px.value;
		querystr = dest+'?agent='+agentCode+'&tmp='+tmp+'&ddd='+ddd+'&ddm='+ddm+'&ddy='+ddy+'&dth='+dth+'&dtm='+dtm+'&rdd='+rdd+'&rdm='+rdm+'&rdy='+rdy+'&rth='+rth+'&rtm='+rtm+'&ap='+airport+'&px='+px;
		if(cp)
			querystr+='&cp='+cp;
		if(dest.indexOf("/aph/aphbook")>=0)
			querystr+="&p=p";
		break;
	// lounge
	case'lounge':
		dest=(parkman_array.in_array(agentCode.toUpperCase())||(parkman_groups.in_array(agentgroup.toUpperCase()))?
			parkmanEntry: parkmanEntry);//"http://www.parking-quote.co.uk/lge/APHBook.ASP");
		/*if(parkman_array.in_array(agentCode.toUpperCase())||(parkman_groups.in_array(agentgroup.toUpperCase())))
		{
			if (!tmp) tmp = "epark";
			
			if(tmp_exceptions.in_array(agentCode.toUpperCase()))
				tmp = agentCode;
			if(disc_exceptions.in_array(agentCode.toUpperCase()))
				tmp = "disc";
		}//*/
		var ddd=formobj.ddd.value;
		var ddm=formobj.ddm.value;
		var ddy=formobj.ddy.value;
		var t=formobj.t.value;
		var ad=formobj.ad.value;
		var ch=formobj.ch.value;
		var inf=0;
		var airport=formobj.ap.value;
		var ur=null;
		if(formobj.ur!=null)
            ur=formobj.ur.value;
        var querystr=dest+'?agent='+agentCode+'&tmp='+tmp+'&d='+ddd+'&m='+ddm+'&y='+ddy+'&t='+t+'&ad='+ad+'&ch='+ch+'&in='+inf+'&ap='+airport;
		if(dest.indexOf("/aph/aphbook")>=0)
            querystr+="&p=l";
		break;
        default:
            return false;
            break;
	}
    if(querystr != ""){
        querystr+="&googletr=true&ur="+ur;
        pageTracker._link(querystr);
    }
    return false;
}

function AgentUpdater(formobj){alert(formobj.bref.value);return false;}

	function checkExists(file){
		var ajax = null;
		if (window.ActiveXObject) { 
			ajax = new ActiveXObject("Microsoft.XMLHTTP"); 
		} 
		else if (window.XMLHttpRequest) { 
			ajax = new XMLHttpRequest(); 
			ajax.overrideMimeType('text/html');
		}
		ajax.open("HEAD",file,false);
		ajax.send(null);
		s = ajax.status;
		if(s == 200 || s == 304){
			return true;
		}else{
			return false;
		}
	}
	
	var cssCodes = ["5hot","asda","asdae","asdaf","asdar","em06b","renew","wbweb"];
    function codesp_style(){
	   	var head = document.getElementsByTagName("HEAD")[0];
		if(APHScriptLibrary.ReadCookie("wb_offers") != null && parseInt(APHScriptLibrary.ReadCookie("wb_offers")) == 1){
	   		var offersStyle = document.createElement("LINK");
	   		offersStyle.href = "/stylesheet/offers.css";
	   		offersStyle.type = "text/CSS";
			offersStyle.rel = "stylesheet";
			offersStyle.media = "all";
			head.appendChild(offersStyle);
		   	return;	
	   	}
    	if(agentCode != "aph"){
    		var script = document.createElement("SCRIPT");
    		script.type = "text/Javascript";
    		script.src = "/javascript/homeonly.js";
    		head.appendChild(script);
	    	var cssFile = "../stylesheet/codespec/"+agentCode+".css";
	    	if(InArray(agentCode, cssCodes)){
	    		var cssFile = "/stylesheet/codespec/"+agentCode+".css"
	    		var css = document.createElement("LINK");
				css.type = "text/CSS";
				css.rel = "stylesheet";
				css.media = "all";
				css.href = cssFile;
				head.appendChild(css);
	    	}
	    	/*if(checkExists(cssFile)){
	    		var css = document.createElement("LINK");
				css.type = "text/CSS";
				css.rel = "stylesheet";
				css.media = "all";
				css.href = cssFile;
				head.appendChild(css);
	    	}else{
	    		var themeCode = APHScriptLibrary.ReadCookie("theme");
	    		if(agentCode.toLowerCase() != "aph" && themeCode){
		    		var themeFile = "/stylesheet/themes/"+themeCode+".css";
		    		if(checkExists(themeFile)){
		    			var css = document.createElement("LINK");
						css.type = "text/CSS";
						css.rel = "stylesheet";
						css.media = "all";
						css.href = themeFile;
						head.appendChild(css);
		    		}else{}
	    		}
	    	}//*/
    	}
	}
	
	function newAjax(t,u){
		var resource = null;
		if(window.ActiveXObject){
			resource = new ActiveXObject("Microsoft.XMLHTTP");
		}else if(window.XMLHttpRequest){
			resource = new XMLHttpRequest();
			resource.overrideMimeType('text/html');
		}
		resource.open(t,u,false);
		resource.setRequestHeader('Content-Type','application/x-www-form-urlencoded; charset=UTF-8');
		return resource;
	}
	
