function popPax() {
	//for testing. just puts some data into the pax fields coz its a headache  typing it all the time
	fld = document.getElementById("dgPax__ctl2_txtFirstName");
	fld.value="Test";
	fld = document.getElementById("dgPax__ctl2_txtSurname");
	fld.value="Test";
	fld = document.getElementById("dgPax__ctl2_txtDOBDay");
	fld.value="01";
	fld = document.getElementById("dgPax__ctl2_txtDOBMth");
	fld.value="01";
	fld = document.getElementById("dgPax__ctl2_txtDOBYr");
	fld.value="1970"
	fld = document.getElementById("txtPostcode");
	fld.value="SW17 8NQ";
	fld = document.getElementById("txtAddress1");
	fld.value="Blah House";
	fld = document.getElementById("txtAddress2");
	fld.value="Blah Lane";
	fld = document.getElementById("txtTelDay");
	fld.value="0897654433234";
	fld = document.getElementById("txtEmail");
	fld.value="becky.astley@firemelon.com";
	fld = document.getElementById("txtEmailConf");
	fld.value="becky.astley@firemelon.com";
}

function DisableRightClick() {
//alert (event.button);
if (event.button==0||event.button==2) {
//alert ('disabled');
return false;
}
}


function ExcessChange(sender) {
// turn off the other excess radio buttons except this one (group wont work in the grid)
	for (var i in document.forms[0].elements)
		{
			var obj = document.forms[0].elements[i];
			for (var i in obj)
				{
					if (i=="type")
						{
							if ((obj.type == "radio") && (obj.id !=sender.id))
								{
									obj.checked = false;	
								}
						}		
				}
		}
}

	
function calculateDuration(strStart,strEnd,strDuration)
{
	fldStart = document.getElementById(strStart);
	fldEnd = document.getElementById(strEnd);
	fldDuration = document.getElementById(strDuration);
		
	if (fldStart && fldEnd && fldDuration)
	{
		arrStart = fldStart.value.split('/');
		arrEnd = fldEnd.value.split('/');

		var datStart = new Date(parseInt(arrStart[2], 10), parseInt(parseInt(arrStart[1],10))-1, parseInt(arrStart[0],10));
		var datEnd = new Date(parseInt(arrEnd[2],10), parseInt(parseInt(arrEnd[1],10)) - 1, parseInt(parseInt(arrEnd[0],10)) + 1);

	
		var intDays = Math.round((datEnd.getTime() - datStart.getTime())/(1000*60*60*24));
		if(isNaN(intDays))
		{
			if (fldStart.value != "" && fldEnd.value != "") alert("You must enter a valid Start and End date.");
			return;
		}
		
		if (intDays < 1)
		{
			SetEndDate(2);
			return;
		}
		
		fldDuration.value = intDays.toString();
    }
}

function SetDuration(strStartField,strEndField,strDurationField) {
	var fld2 = document.getElementById(strDurationField)
	fld2.value = calculateDuration(strStartField,strEndField);
}



function SetEndDate(intDuration,strStart,strEnd)
{
	intDuration = parseInt(intDuration);
	fldStart = document.getElementById(strStart);
	fldEnd = document.getElementById(strEnd);
	
	if (fldStart && fldEnd && !isNaN(intDuration))
	{
		arrStart = fldStart.value.split('/');
		var datStart = new Date(arrStart[2], parseInt(arrStart[1]) - 1, arrStart[0]);
		datStart.setDate(datStart.getDate() + parseInt(intDuration) - 1);
		
		fldEnd.value = datStart.getDate() + '/' + (datStart.getMonth() + 1) + '/' + datStart.getFullYear();
		calculateDuration();
	}
}



function TranslateDate(thisfield,strError) {
alert (thisfield);
var retVal = true;
if ((thisfield.value.indexOf('/')==-1) && (thisfield.value!='')) {
var lblError = document.getElementById(strError);
	if ((thisfield.value.length == 6) || (thisfield.value.length == 8)) {
		lblError.innerText='';
		var day = thisfield.value.substring(0,2)
		var mth = thisfield.value.substring(2,4)
		var yr = thisfield.value.substring(4,thisfield.value.length)
		thisfield.value = day + '/' + mth + '/' + yr;		
	}
	else {
		lblError.innerText = 'Accepted date formats: DD/MM/YY, DD/MM/YYYY';
		retVal = false;	
		}
	}
	return retVal;
	}

//trim all whitespace use in onblur
function trimValue(thisfield) {
thisfield.value = thisfield.value.replace(/ /g,""); 
}

function trimAll(sString) {
while (sString.substring(0,1) == ' ')
	{
	sString = sString.substring(1, sString.length);
	}
	while (sString.substring(sString.length-1, sString.length) == ' ')
	{
	sString = sString.substring(0,sString.length-1);
	}
return sString;
}


//put this into onblur to make all chars uppercase. include 'all' 
//in type parm for all leave blank for first letter only e.g. surnames
function toUpperCase(thisfield,type){
if (thisfield.value.length > 0) {
	if (type=='all') {
	thisfield.value = thisfield.value.replace(thisfield.value,thisfield.value.toUpperCase());
	}
	else {
		var firstletter = thisfield.value.charAt(0);
		thisfield.value=thisfield.value.replace(firstletter,firstletter.toUpperCase());
		}
	}
}

function changeGender(thisfield,genderfield) {
var fld = document.getElementById(genderfield)
if ((thisfield.value == 'Mr') || (thisfield.value == 'Master') || (thisfield.value == 'Sir')) {
	fld.selectedIndex = 1
	}
	else if ((thisfield.value == 'Mrs') || (thisfield.value == 'Miss') || (thisfield.value == 'Ms')){
	fld.selectedIndex = 2	
	}
	else if ((thisfield.value == '') || (thisfield.value == '0')) {
	fld.selectedIndex = 0	
	}
} 



function commideaPayment(certID,methodID) {
var url = './transaction.aspx?cid=' + certID + '&mid=' + methodID;
var fields = new Array('txtRef','txtStart','txtExpiry','txtIssue','txtSecCode','hidAmt','txtHolder');
var values = new Array (7);
var winfeatures="title:no;dialogWidth:400px;dialogHeight:300px;help:no;toolbars:no;scroll:no;status:no;resizable:no";
for (var i=0;i < fields.length;i++) {
	var thisfield = document.getElementById(fields[i]);
	
	if ((fields[i]=='txtExpiry') || (fields[i]=='txtStart'))	
		{
			values[i] = thisfield.value.replace("/","")			
		}
		else
		{
			values[i] = thisfield.value	
		}
	}
var newwin = window.showModalDialog(url,values,winfeatures);
if (newwin == "1") {self.location.href = './confirmation.aspx'}
}

function commideaMsg(){
var btn = document.getElementById('btnPayment');
btn.style.display='none';
var label = document.getElementById('lblWaitMsg');
label.style.display='inline';
} 

function commideaMsgx(){
var btncontinue = document.getElementById('btnContinue');
btncontinue.style.display='none';
var btnclose = document.getElementById('btnClose');
if (btnclose) {
btnclose.style.display='none';
}
var authcode = document.getElementById('txtAuthCode');
if (authcode) {
authcode.style.display='none';
}
var btncancel = document.getElementById('btnCancel');
if (btncancel) {
btncancel.style.display='none';
}
var label = document.getElementById('lblWaitMessage');
label.style.display='inline';
var label2 = document.getElementById('lblPaymentFeedback');
label2.style.display='none';
} 

function getTransactionValues() {
var fields = new Array('hidPan','hidStart','hidExpiry','hidIssue','hidSecurityCode','hidValue','hidHolder');
	for (var i=0;i < window.dialogArguments.length;i++) {
	var thisfield = document.getElementById(fields[i]);
	thisfield.value = window.dialogArguments[i]
	}
}

function winOptionDesc(strOptionID,strIsExcess) {
var winfeatures="title:no;dialogWidth:450px;dialogHeight:350px;help:no;toolbars:no;scroll:no;status:no;resizable:yes";
window.showModalDialog('./option_info.aspx?oid=' + strOptionID + '&e=' + strIsExcess,'',winfeatures);
}



function getDestination() {
	var loaded = document.getElementById('hidIsLoaded');
	if (loaded.value == '0') {
		
		var openerPostcode = self.opener.document.getElementById('txtDestination');		
		var thisFind = document.getElementById('txtFind');
		thisFind.value = openerPostcode.value;
		
		if (thisFind.value !='') {
			var btnFind = document.getElementById('btnFind');	
			loaded.value = '1';											
			btnFind.click();
			}	
	}
}

function getPostcode() {
	var loaded = document.getElementById('hidIsLoaded');
	if (loaded.value == '0') {
		var method;
		var prefix = document.getElementById('hidPrefix');
		var openerPostcode = self.opener.document.getElementById(prefix.value + 'txtPostcode');
		var openerStreet = self.opener.document.getElementById(prefix.value + 'txtAddress1');
		var thisFind = document.getElementById('txtFind');
		if (openerPostcode.value !='') {
			thisFind.value = openerPostcode.value;
			method=1;			
		}
		else {
			thisFind.value = openerStreet.value;
			method=0;
			}
		var rbByPostcode = document.getElementById('rbByPostcode');	
		if (thisFind.value !='') {
			var btnFind = document.getElementById('btnFind');	
			loaded.value = '1';
			var rbByStreet = document.getElementById('rbByStreet');
			if (method == 1) {
			rbByPostcode.checked=true;	
				}
				else {
					rbByStreet.checked=true;
					}										
			btnFind.click();
			}
			else {
			rbByPostcode.checked=true;
			}
	}
}
function openAddressFinder(fieldprefix) {
window.open("AddressFinder.aspx?pref=" + fieldprefix, "AddressFinder", "Menu=False, Toolbar=False, Width=500, Height=400");
return false; 
} 

function openDestinationFinder() {
window.open("Airportfinder.aspx", "Airportfinder", "Menu=False, Toolbar=False, Width=500, Height=400");
return false; 
} 

function setAddressValue(field,value) { 
    var g = document.getElementById(field); 
    g.value = value; 
}
 
 function selectDestination() 
{  
	var d = document.getElementById('hidAddress1'); 
	
	self.opener.setAddressValue('txtDestination',d.value);	
	
    var txtStart = self.opener.document.getElementById('txtSTStart'); 
    txtStart.focus();
    self.close(); 
    return false; 
} 

function selectAddress() 
{    
	var addressvalues = new Array(5);
	var d = document.getElementById('hidAddress1'); 
	addressvalues[0]=d.value
    var d = document.getElementById('hidAddress2'); 
	addressvalues[1]=d.value
	var d = document.getElementById('hidAddress3'); 
	addressvalues[2]=d.value
    var d = document.getElementById('hidAddress4'); 
	addressvalues[3]=d.value  
	var d = document.getElementById('hidAddress5'); 
	addressvalues[4]=d.value
    var pcode = document.getElementById('hidPostcode'); 

	//removing blanks from array of address values, so it all shifts upwards in personal section
	var noblanks = new Array()
	var count = 0
	for (var i=0;i < 5;i++) {
		if (addressvalues[i]!='') {
			noblanks[count] = addressvalues[i]
			count++
			}
		}
	var count = noblanks.length
	while (count < 5) {
	noblanks[count] = ""
	count++
	}
	var fldPrefix = document.getElementById('hidPrefix');
	var strPrefix = fldPrefix.value;
	self.opener.setAddressValue(strPrefix + 'txtAddress1',noblanks[0]);	
	self.opener.setAddressValue(strPrefix + 'txtAddress2',noblanks[1]); 
	self.opener.setAddressValue(strPrefix + 'txtAddress3',noblanks[2]); 	
	self.opener.setAddressValue(strPrefix + 'txtPostcode',pcode.value); 
    var email = self.opener.document.getElementById(strPrefix + 'txtEmail'); 
    email.focus();
    self.close(); 
    return false; 
} 

function popUp()
    {   
    document.getElementById('hidDisable').value = "false";    
     if(document.getElementById('txtTelEve').value.length == 0)
     {
        if( window.confirm("Please confirm you have not entered your mobile number as you do not wish to receive your policy details by SMS."))
        {
            document.getElementById('hidDisable').value = "false";         
        }
        else
        {
            document.getElementById('hidDisable').value = "mobile";
        }
     }
     else if (!document.getElementById('chkOffers').checked)
     {
        if(window.confirm("Please confirm you have not ticked to receive information on further discounts and special offers."))
        {
            document.getElementById('hidDisable').value = "false";         
        }
        else
        {
            document.getElementById('hidDisable').value = "offer";
        }
     }      
    }


    
    function ShowPopUp()
    {          
    document.getElementById('hidDisable').value = "false"; 
         if(document.getElementById('hidDays').value == "1")
         {
            if( window.confirm("The start date of this policy is within 5 days of today\'s date and therefore this policy is only available if you have purchased your travel documents today – please press OK to confirm that this is correct."))
            {
                document.getElementById('hidDisable').value = "false";         
            }
            else
            {
                document.getElementById('hidDisable').value = "true";
            }
         }
     }

