//Menu-----------------------
 function MM_swapImgRestore() { //v3.0
      var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
    }
    function MM_preloadImages() { //v3.0
      var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
        var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
        if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
    }
    function MM_findObj(n, d) { //v4.01
      var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
        d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
      if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
      for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
      if(!x && d.getElementById) x=d.getElementById(n); return x;
    }
    function MM_swapImage() { //v3.0
      var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
       if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
    }
    function MM_jumpMenu(targ,selObj,restore){ //v3.0
      eval(targ+".location='"+selObj.options[selObj.selectedIndex].value+"'");
      if (restore) selObj.selectedIndex=0;
   }
   
// -------------------------------
//-------------------------------- 
   
function validateControl()
{         
     var origin3= document.getElementById('txtOrigin3').value;
     var dest= document.getElementById('txtDestination3').value;
    if(document.getElementById('txtOrigin1').value.trim()=='' || document.getElementById('txtOrigin1').value=='Type Your Departure City' )
    {
        alert('Please enter the Departure Airport1');
        document.getElementById('txtOrigin1').focus();
        return false; 
    }
    if(document.getElementById('txtDestination1').value.trim()=='' || document.getElementById('txtDestination1').value=='Type Your Destination City' )
    {
        alert('Please enter the Destination Airport1');
        document.getElementById('txtDestination1').focus();
        return false; 
    }
    if(document.getElementById('txtDate1').value.trim()=='' || document.getElementById('txtDate1').value=='dd-mm-yyyy' )
    {
        alert('Please enter the Departing Date1');
        document.getElementById('txtDate1').focus();
        return false; 
    }
    if(document.getElementById('txtOrigin2').value.trim()=='' || document.getElementById('txtOrigin2').value=='Type Your Departure City' )
    {
        alert('Please enter the Departure Airport2');
        document.getElementById('txtOrigin2').focus();
        return false; 
    }
    if(document.getElementById('txtDestination2').value.trim()=='' || document.getElementById('txtDestination2').value=='Type Your Destination City' )
    {
        alert('Please enter the Destination Airport2');
        document.getElementById('txtDestination2').focus();
        return false; 
    }
     if(document.getElementById('txtDate2').value.trim()=='' || document.getElementById('txtDate2').value=='dd-mm-yyyy' )
    {
        alert('Please enter the Departing Date2');
        document.getElementById('txtDate2').focus();
        return false; 
    } 
                
            var totAdults = document.getElementById('ddlAdults').value;
            var totChildrens =document.getElementById('ddlChildren').value;
            var totInfants =document.getElementById('ddlInfants').value;
            var totPassenger =parseInt(totAdults) +parseInt(totChildrens) +parseInt(totInfants);
           
    if (totInfants > totAdults)
    {
       alert('Number of infants should be equal to or less than number of adults');
       return false;
    }
    if (totPassenger > 6)
    {                
        alert('Total no of passengers should not be more than 6');                              
        return false;
    }
}


function ValidatePassengerDetails()
{
  
    if(document.getElementById('ddlTitleR1').value=="Select")
    {
        alert('Please select passenger title');
        document.getElementById('ddlTitleR1').focus();
        return false; 
    }
    
    
    if(document.getElementById('txtFirstNameR1').value == '')
    {
        alert('Please enter passenger first name');
        document.getElementById('txtFirstNameR1').focus();
        return false; 
    }
    
    if(document.getElementById('txtLastNameR1').value == '')
    {
        alert('Please enter passenger last name');
        document.getElementById('txtLastNameR1').focus();
        return false; 
    }
    
    if(document.getElementById('txtDOBR1').value == 'dd/mm/yyyy')
    {
        alert('Please enter passenger date of birth');
        document.getElementById('txtDOBR1').focus();
        return false; 
    }
    else
    {
        if(!isDate(document.getElementById('txtDOBR1').value))
        {
            document.getElementById('txtDOBR1').focus();
            return false; 
        }
    }
    
    
    if (document.form1.ddlTitleR2) 
    {   
        if(document.getElementById('ddlTitleR2').value=="Select")
        {
            alert('Please select passenger title');
            document.getElementById('ddlTitleR2').focus();
            return false; 
        }
    }
    
    if (document.form1.txtFirstNameR2) 
    {  
        if(document.getElementById('txtFirstNameR2').value == '')
        {
            alert('Please enter passenger first name');
            document.getElementById('txtFirstNameR2').focus();
            return false; 
        }
    }
    
    
    if (document.form1.txtLastNameR2) 
    {
        if(document.getElementById('txtLastNameR2').value == '')
        {
            alert('Please enter passenger last name');
            document.getElementById('txtLastNameR2').focus();
            return false; 
        }
    }
    
    if (document.form1.txtDOBR2) 
    {  
        if(document.getElementById('txtDOBR2').value == 'dd/mm/yyyy')
        {
            alert('Please enter passenger date of birth');
            document.getElementById('txtDOBR2').focus();
            return false; 
        }
        else
        {
            if(!isDate(document.getElementById('txtDOBR2').value))
            {
                document.getElementById('txtDOBR2').focus();
                return false; 
            }
        }
    }
    
    
    
    
    if (document.form1.ddlTitleR3) 
    {   
        if(document.getElementById('ddlTitleR3').value=="Select")
        {
            alert('Please select passenger title');
            document.getElementById('ddlTitleR3').focus();
            return false; 
        }
    }
    
    if (document.form1.txtFirstNameR3) 
    {  
        if(document.getElementById('txtFirstNameR3').value == '')
        {
            alert('Please enter passenger first name');
            document.getElementById('txtFirstNameR3').focus();
            return false; 
        }
    }
    
    if (document.form1.txtLastNameR3) 
    {
        if(document.getElementById('txtLastNameR3').value == '')
        {
            alert('Please enter passenger last name');
            document.getElementById('txtLastNameR3').focus();
            return false; 
        }
    }
    
    if (document.form1.txtDOBR3) 
    {
        if(document.getElementById('txtDOBR3').value == 'dd/mm/yyyy')
        {
            alert('Please enter passenger date of birth');
            document.getElementById('txtDOBR3').focus();
            return false; 
        }
        else
        {
            if(!isDate(document.getElementById('txtDOBR3').value))
            {
                document.getElementById('txtDOBR3').focus();
                return false; 
            }
        }
    }
    
    if (document.form1.ddlTitleR4) 
    {   
        if(document.getElementById('ddlTitleR4').value=="Select")
        {
            alert('Please select passenger title');
            document.getElementById('ddlTitleR4').focus();
            return false; 
        }
    }
    
    if (document.form1.txtFirstNameR4) 
    {  
        if(document.getElementById('txtFirstNameR4').value == '')
        {
            alert('Please enter passenger first name');
            document.getElementById('txtFirstNameR4').focus();
            return false; 
        }
    }
    
    if (document.form1.txtLastNameR4) 
    {
        if(document.getElementById('txtLastNameR4').value == '')
        {
            alert('Please enter passenger last name');
            document.getElementById('txtLastNameR4').focus();
            return false; 
        }
    }
    
    if (document.form1.txtDOBR4) 
    {
        if(document.getElementById('txtDOBR4').value == 'dd/mm/yyyy')
        {
            alert('Please enter passenger date of birth');
            document.getElementById('txtDOBR4').focus();
            return false; 
        }
        else
        {
            if(!isDate(document.getElementById('txtDOBR4').value))
            {
                document.getElementById('txtDOBR4').focus();
                return false; 
            }
        }
    }
    
    
    if (document.form1.ddlTitleR5) 
    {   
        if(document.getElementById('ddlTitleR5').value=="Select")
        {
            alert('Please select passenger title');
            document.getElementById('ddlTitleR5').focus();
            return false; 
        }
    }
    
    if (document.form1.txtFirstNameR5) 
    {  
        if(document.getElementById('txtFirstNameR5').value == '')
        {
            alert('Please enter passenger first name');
            document.getElementById('txtFirstNameR5').focus();
            return false; 
        }
    }
    
    if (document.form1.txtLastNameR5) 
    {
        if(document.getElementById('txtLastNameR5').value == '')
        {
            alert('Please enter passenger last name');
            document.getElementById('txtLastNameR5').focus();
            return false; 
        }
    }
    
    if (document.form1.txtDOBR5) 
    {
        if(document.getElementById('txtDOBR5').value == 'dd/mm/yyyy')
        {
            alert('Please enter passenger date of birth');
            document.getElementById('txtDOBR5').focus();
            return false; 
        }
        else
        {
            if(!isDate(document.getElementById('txtDOBR5').value))
            {
                document.getElementById('txtDOBR5').focus();
                return false; 
            }
        }
    }
    
    if (document.form1.ddlTitleR6) 
    {   
        if(document.getElementById('ddlTitleR6').value=="Select")
        {
            alert('Please select passenger title');
            document.getElementById('ddlTitleR6').focus();
            return false; 
        }
    }
    
    if (document.form1.txtFirstNameR6) 
    {  
        if(document.getElementById('txtFirstNameR6').value == '')
        {
            alert('Please enter passenger first name');
            document.getElementById('txtFirstNameR6').focus();
            return false; 
        }
    }
    
    if (document.form1.txtLastNameR6) 
    {
        if(document.getElementById('txtLastNameR6').value == '')
        {
            alert('Please enter passenger last name');
            document.getElementById('txtLastNameR6').focus();
            return false; 
        }
    }
    
    if (document.form1.txtDOBR6) 
    {
        if(document.getElementById('txtDOBR6').value == 'dd/mm/yyyy')
        {
            alert('Please enter passenger date of birth');
            document.getElementById('txtDOBR6').focus();
            return false; 
        }
        else
        {
            if(!isDate(document.getElementById('txtDOBR6').value))
            {
                document.getElementById('txtDOBR6').focus();
                return false; 
            }
        }
    }
    
    
    
    
    if (document.form1.ddlTitleR7) 
    {   
        if(document.getElementById('ddlTitleR7').value=="Select")
        {
            alert('Please select passenger title');
            document.getElementById('ddlTitleR7').focus();
            return false; 
        }
    }
    
    if (document.form1.txtFirstNameR7) 
    {  
        if(document.getElementById('txtFirstNameR7').value == '')
        {
            alert('Please enter passenger first name');
            document.getElementById('txtFirstNameR7').focus();
            return false; 
        }
    }
    
    if (document.form1.txtLastNameR7) 
    {
        if(document.getElementById('txtLastNameR7').value == '')
        {
            alert('Please enter passenger last name');
            document.getElementById('txtLastNameR7').focus();
            return false; 
        }
    }
    
    if (document.form1.txtDOBR7) 
    {
         if(document.getElementById('txtDOBR7').value == 'dd/mm/yyyy')
        {
            alert('Please enter passenger date of birth');
            document.getElementById('txtDOBR7').focus();
            return false; 
        }
        else
        {
            if(!isDate(document.getElementById('txtDOBR7').value))
            {
                document.getElementById('txtDOBR7').focus();
                return false; 
            }
        }
    }
    if(document.getElementById('txtHomePhone').value == '')
    {
        alert('Please enter home phone number');
        document.getElementById('txtHomePhone').focus();
        return false; 
    }
    
    if(document.getElementById('txtEmail').value == '')
    {
        alert('Please enter email address');
        document.getElementById('txtEmail').focus();
        return false; 
    }
    
    if(document.getElementById('txtVerifyEmail').value == '')
    {
        alert('Please verify email address');
        document.getElementById('txtVerifyEmail').focus();
        return false; 
    }
    
    if(document.getElementById('txtEmail').value.toLowerCase() != document.getElementById('txtVerifyEmail').value.toLowerCase())
    {
        alert('Email address doesn\'t match');
        document.getElementById('txtVerifyEmail').focus();
        return false;
    }

   blockPage();
   return true;
}


function ValidateCardHolderDetails()
{
   //OnClientClick="return showConfirmation();" its require to check **************************************
   //check also disable page at the time of processing
 
     
     if(document.getElementById('chkThirdParty').checked)
     {
       
        if(document.getElementById('txtFirstName').value == '')
        {
            alert('Please enter first name of card holder');
            document.getElementById('txtFirstName').focus();
            return false; 
        }
        if(document.getElementById('txtLastName').value == '')
        {
            alert('Please enter last name of card holder');
            document.getElementById('txtLastName').focus();
            return false; 
        }
    }
    else
    {
         if(document.getElementById('ddlCardHoldername').value == 'Please Select the Card Holder')
        {
            alert('Please select card holder name');
            document.getElementById('ddlCardHoldername').focus();
            return false; 
        }
    }
    
    if(document.getElementById('txtNameOnCard').value == '')
    {
        alert('Please enter name as on card');
        document.getElementById('txtNameOnCard').focus();
        return false; 
    }
    if(document.getElementById('ddlCardType').value == 'Please select a card type')
    {
        alert('Please select card type');
        document.getElementById('ddlCardType').focus();
        return false; 
    }
    if(document.getElementById('txtCardNo').value == '')
    {
        alert('Please enter valid card number');
        document.getElementById('txtCardNo').focus();
        return false; 
    }
    
    if(document.getElementById('ddlValidExpMonth').value == '')
    {
        alert('Please enter valid card expiry month');
        document.getElementById('ddlValidExpMonth').focus();
        return false; 
    }
    
     if(document.getElementById('ddlValidExpYear').value == '')
    {
        alert('Please enter valid card expiry year');
        document.getElementById('ddlValidExpYear').focus();
        return false; 
    }
    
     
     if(document.getElementById('ddlValidFromMonth').value != '' &&  document.getElementById('ddlValidFromYear').value=='' )
    {
        alert('Please enter Valid From card year');
        document.getElementById('ddlValidFromYear').focus();
        return false; 
    }
    
    if(document.getElementById('txtSecurityNo').value == '')
    {
        alert('Please enter valid security code');
        document.getElementById('txtSecurityNo').focus();
        return false; 
    }
    
    
    

    if(document.getElementById('txtAddressLine1').value == '')
    {
        alert('Please enter address line 1');
        document.getElementById('txtAddressLine1').focus();
        return false; 
    }
    
    if(document.getElementById('txtCity').value == '')
    {
        alert('Please enter city name');
        document.getElementById('txtCity').focus();
        return false; 
    }
    
    if(document.getElementById('txtCity').value == '')
    {
        alert('Please enter city name');
        document.getElementById('txtCity').focus();
        return false; 
    }
    
    if(document.getElementById('txtPostalCode').value == '')
    {
        if(document.getElementById('ddlCountry').value=="IE")
        {
        }
        else
        {
        alert('Please enter postal code');
        document.getElementById('txtPostalCode').focus();
        return false; 
        }
    }    
        
    if(!document.getElementById('chkTermAndCondition').checked)
    {
        alert('Please accept the terms and conditions');
        document.getElementById('chkTermAndCondition').focus();
        return false; 
    }
    
    if(!showConfirmation())
    {
        return false;
    
    }
    return true;

}

function showConfirmation()
{          
    if(confirm('We are now ready to process your booking.\n\nAll booking details must be correct before you proceed. To go back to the form and\ncheck these details, press CANCEL. To proceed with the booking, press OK.\n\nProcessing your booking can take up to 60 seconds. Please do not click on\nBOOK NOW, REFRESH, BACK, or STOP buttons until the next page is displayed.'))
    {               
        blockPage();                
        return true;
    }
    else
    {               
        return false;
    }            
}


//----------------------------------------
//Validate Date dd/mm/yyyy
//-----------------------------------------
// Declaring valid date character, minimum year and maximum year
var dtCh= "/";
var minYear=1900;
var maxYear=2100;

function isInteger(s){
	var i;
    for (i = 0; i < s.length; i++){   
        // Check that current character is number.
        var c = s.charAt(i);
        if (((c < "0") || (c > "9"))) return false;
    }
    // All characters are numbers.
    return true;
}

function stripCharsInBag(s, bag){
	var i;
    var returnString = "";
    // Search through string's characters one by one.
    // If character is not in bag, append to returnString.
    for (i = 0; i < s.length; i++)
    {   
        var c = s.charAt(i);
        if (bag.indexOf(c) == -1) return String += c;
    }
    return returnString;
}

function daysInFebruary (year){
	// February has 29 days in any year evenly divisible by four,
    // EXCEPT for centurial years which are not also divisible by 400.
    return (((year % 4 == 0) && ( (!(year % 100 == 0)) || (year % 400 == 0))) ? 29 : 28 );
}
function DaysArray(n) {
	for (var i = 1; i <= n; i++) {
		this[i] = 31
		if (i==4 || i==6 || i==9 || i==11) {this[i] = 30}
		if (i==2) {this[i] = 29}
   } 
   return this
}

function isDate(dtStr)
{
  	var daysInMonth = DaysArray(12)
	var pos1=dtStr.indexOf(dtCh)
	var pos2=dtStr.indexOf(dtCh,pos1+1)
	var strDay=dtStr.substring(0,pos1)

	var strMonth=dtStr.substring(pos1+1,pos2)

	var strYear=dtStr.substring(pos2+1)
	strYr=strYear
	
	if (strDay.charAt(0)=="0" && strDay.length>1) strDay=strDay.substring(1)
	if (strMonth.charAt(0)=="0" && strMonth.length>1) strMonth=strMonth.substring(1)
	for (var i = 1; i <= 3; i++) {
		if (strYr.charAt(0)=="0" && strYr.length>1) strYr=strYr.substring(1)
	}
	month=parseInt(strMonth)
	day=parseInt(strDay)
	year=parseInt(strYr)
	if (pos1==-1 || pos2==-1){
		alert("The date format should be : dd/mm/yyyy")
		return false
	}
	if (strMonth.length<1 || month<1 || month>12){
		alert("Please enter a valid month")
		return false
	}
	if (strDay.length<1 || day<1 || day>31 || (month==2 && day>daysInFebruary(year)) || day > daysInMonth[month]){
		alert("Please enter a valid day")
		return false
	}
	if (strYear.length != 4 || year==0 || year<minYear || year>maxYear){
		alert("Please enter a valid 4 digit year between "+minYear+" and "+maxYear)
		return false
	}
	/*if (dtStr.indexOf(dtCh,pos2+1)!=-1 || isInteger(stripCharsInBag(dtStr, dtCh))==false)
	{
		alert("Please enter a valid date")
		return false
	}*/
return true
}

function ConvertIntoCapital(elementID)
{
    var text=document.getElementById(elementID).value;   
    document.getElementById(elementID).value=text.toUpperCase();
}





function PaymentThirdParty()
{
    if(document.getElementById("chkThirdParty").checked )
    {        
        document.getElementById("divCardHolderSelect").style.display = "none"
        document.getElementById("divThirdPartyPayment").style.display = "block"
        document.getElementById("divCardHolderName").style.display = "block"
        document.getElementById("divAdminFee").style.display = "block"
        document.getElementById("lblAdminFee").innerHTML="5.00"
        
        document.getElementById("txtFirstName").value ='';
        document.getElementById("txtLastName").value ='';
        
    }
    else
    {
        document.getElementById("divCardHolderSelect").style.display = "block"
        document.getElementById("divThirdPartyPayment").style.display = "none"
        document.getElementById("divCardHolderName").style.display = "none"
        document.getElementById("divAdminFee").style.display = "none" 
        document.getElementById("lblAdminFee").innerHTML="0.00"
        
        document.getElementById("txtFirstName").value ='';
        document.getElementById("txtLastName").value ='';   
    }
    
   CalcCCSurcharge();
   CalcTotalTicketPrice();     
 } 
 
    
function SelectCardHolder(ddlCardHoldername)
{
  var ddlCardHoldername = document.getElementById('ddlCardHoldername').value;  
 
  if(document.getElementById('ddlCardHoldername').selectedIndex > 0)
  {
     var arr = ddlCardHoldername.split(",");
     var nameoncard = arr[0] + ' ' + arr[1];
     document.getElementById("txtFirstName").value =arr[0];
     document.getElementById("txtLastName").value =arr[1];         
  }
  else
  {
     document.getElementById("txtFirstName").value ='';
     document.getElementById("txtLastName").value ='';
  } 
}
    
    
    
function CardTypeChange(ddlCardType)
{
    //alert(document.getElementById('ddlCardType').selectedIndex);
    document.getElementById("hfCardTypeIndex").value=document.getElementById('ddlCardType').selectedIndex;  
    CalcCCSurcharge();
    CalcTotalTicketPrice();  
}
    
    
function CalcCCSurcharge()
{
    if(document.getElementById('ddlCardType').selectedIndex!=0)
    {
        var ddlCardType1=document.getElementById('ddlCardType').value;
        var arr = ddlCardType1.split("-");
        var ccSurchargeRate = arr[1];
        var validFromDate = arr[2]; 
        
        if(validFromDate=='Y')
        {            
            document.getElementById("divVaildFromAndIssueNo").style.display = "block";                       
            document.getElementById("hfVaildFromAndIssueNo").value="block";           
        }
        else
        {
            document.getElementById("divVaildFromAndIssueNo").style.display = "none";               
            document.getElementById("hfVaildFromAndIssueNo").value="none";
        }             

        if(ccSurchargeRate !='0.00')
        {          
            document.getElementById("divCardFee").style.display = "block";  
            var Price = document.getElementById('lblAmount').innerHTML;           
            var bookinfFee=0;
            var adminFee=0;
            if(document.getElementById('divAdminFee').style.display == "block")
            {
                var adminFee =document.getElementById('lblAdminFee').innerHTML;
            }
           
            if(document.getElementById('divBookingFee').style.display == "block")
            {
                bookinfFee=document.getElementById('lblBookingFee').innerHTML;
            }         
           
            var ccSurcharge = ( Number(Price) + Number(adminFee) + Number(bookinfFee)) * ( Number(ccSurchargeRate) / 100);
            document.getElementById("lblCCSurcharge").innerHTML = ccSurcharge.toFixed(2);                             
        }
        else
        {
            document.getElementById("lblCCSurcharge").innerHTML="0.00"
            document.getElementById("divCardFee").style.display = "none";           
        }       
    }
    else
    {
        document.getElementById("lblCCSurcharge").innerHTML="0.00"
        document.getElementById("divCardFee").style.display = "none"; 
    }
}

function CalcTotalTicketPrice()
{       
    var price = document.getElementById('lblAmount').innerHTML;   
    var bookingfee=0;
    var adminfee=0;            
    var creditcardsurcharge=0;    
    if(document.getElementById('divAdminFee').style.display == "block")
    {
        adminfee=document.getElementById('lblAdminFee').innerHTML;            
    }        

    if(document.getElementById('divBookingFee').style.display == "block")
    {            
        bookingfee=document.getElementById('lblBookingFee').innerHTML;            
    }
       
    if(document.getElementById('divCardFee').style.display == "block")
    {
        creditcardsurcharge=document.getElementById('lblCCSurcharge').innerHTML;           
    }
    
    var totalTicketprice =Number(price) + Number(adminfee)+ Number(bookingfee) + Number(creditcardsurcharge);     
    document.getElementById('lblTotalAmt').innerHTML =totalTicketprice.toFixed(2); 
    
    document.getElementById('hfAdminFee').value =Number(adminfee).toFixed(2);
    document.getElementById('hfBookingFee').value =Number(bookingfee).toFixed(2); 
    document.getElementById('hfCCSurcharge').value =Number(creditcardsurcharge).toFixed(2); 
    document.getElementById('hfTotalAmt').value =totalTicketprice.toFixed(2); 
    
//    alert(document.getElementById('hfAdminFee').value)
//    alert(document.getElementById('hfBookingFee').value)
//    alert(document.getElementById('hfCCSurcharge').value)
//    alert(document.getElementById('hfTotalAmt').value)
}
        



        







