﻿/* Package */
var PackageDestination = "";
var PackageMonth = 13;
var PackageDuration = 0;
var PackageProductType = 0;
var TmpCustomerID = 0;
                     
var FlyingPackage = {

    SearchPackage:function(Package)
    {
        waitbox(true);
        var url		= "aspx/Package.aspx?v=package_001";
        var pars    =  JSON.stringify(Package);
		var req = new Ajax.Updater(
		                    'mainCenter',
							url, 
							{
								method: 'POST',
                                parameters: encodeURIComponent(pars),
								onComplete: this.PackageComplete,
								onFailure:  this.Failed
							});	
    },
    
    PackageLeft:function(Package)
    {
        //waitbox(true);
        var url		= "aspx/Package.aspx?v=package_001_01";
        var pars    =  JSON.stringify(Package);
		var req = new Ajax.Updater(
		                    'mainLeft',
							url, 
							{
								method: 'POST',
								parameters: encodeURIComponent(pars),
								onComplete: this.PackageLeftComplete,
								onFailure:  this.Failed
							});	
    },
    
    PackageDetailLeft:function(Package)
    {
        //waitbox(true);
        var url		= "aspx/Package.aspx?v=package_001_02";
        var pars    =  JSON.stringify(Package);
		var req = new Ajax.Updater(
		                    'mainLeft',
							url, 
							{
								method: 'POST',
								parameters: encodeURIComponent(pars),
								onComplete: this.Complete,
								onFailure:  this.Failed
							});	
    },
    
    PackageLeftComplete: function(xhr)
	{
		waitbox(false);
		Form.enable('form1');
	},
    
    PackageComplete: function(xhr)
	{
		//waitbox(false);
		//Form.enable('form1');
		var Package = {
                     PackageMonth : PackageMonth,
                     PackageProductType : PackageProductType
                   };
        $('mainLeft').innerHTML = imgAjax;           
		FlyingPackage.PackageLeft(Package);
		pageTracker._trackPageview("/PackageResult" );
	},
    
    PackageDetail:function(Package)
    {
        
        pageTracker._trackPageview("/PackageDetail.aspx?ProductCode="+Package.ProductCode);
        
        waitbox(true);
        var url		= "aspx/Package.aspx?v=package_002";
        var pars    =  JSON.stringify(Package);
		var req = new Ajax.Updater(
		                    'mainCenter',
							url, 
							{
								method: 'POST',
								parameters: encodeURIComponent(pars),
								onComplete: this.PackageDetailComplete,
								onFailure:  this.Failed
							});	
    },
    
    PackageDetailComplete: function(xhr)
	{
		waitbox(false);
		Form.enable('form1');
	    $('mainLeft').innerHTML = "";
		$j(function() {
		    $j("#tabPackageDetails").tabs();
	    });
	    var Package = {
                     ProductID : $F('hddProductID'),
                     CustomerID : TmpCustomerID
                   };
	    FlyingPackage.PackageDetailLeft(Package);
	    //pageTracker._trackPageview("/PackageDetail" );
	   
	},
    
	PackageEnquiry:function(Package)
    {
        pageTracker._trackPageview("/PackageEnquiry.aspx?ProductCode="+Package.ProductCode);
        waitbox(true);
        var url		= "aspx/Package.aspx?v=package_009";
        var pars    =  JSON.stringify(Package);
		var req = new Ajax.Updater(
		                    'divShow',
							url, 
							{
								method: 'POST',
								parameters: encodeURIComponent(pars),
								onComplete: this.PackageEnquiryComplete,
								onFailure:  this.Failed
							});	
    },
    
    PackageThank:function()
    {
        waitbox(true);
        var url		= "aspx/Package.aspx?v=package_009_01";
        //var pars    =  JSON.stringify(Package);
		var req = new Ajax.Updater(
		                    'divShowThank',
							url, 
							{
								method: 'POST',
								//parameters: encodeURIComponent(pars),
								onComplete: this.PackageThankComplete,
								onFailure:  this.Failed
							});	
    },
    
    PackageConditions:function()
    {
        waitbox(true);
        var url		= "aspx/Package.aspx?v=package_conditions";
		var req = new Ajax.Updater(
		                    'divflyingcontent',
							url, 
							{
								method: 'POST',
								onComplete: this.Complete,
								onFailure:  this.Failed
							});	
    },
    
    PackageHotelConditions:function()
    {
        waitbox(true);
        var url		= "aspx/Package.aspx?v=package_hotel_conditions";
		var req = new Ajax.Updater(
		                    'divflyingcontent',
							url, 
							{
								method: 'POST',
								onComplete: this.Complete,
								onFailure:  this.Failed
							});	
    },
    
    PackageThankComplete: function(xhr)
	{
		waitbox(false);
		Form.enable('form1');
		pageTracker._trackPageview("/PackageComplete" );
	},
	
    PackageEnquiryComplete: function(xhr)
    {
        waitbox(false);
		Form.enable('form1');
	
		var startDate = $F('hddStartDate');
		var noDay = $F('hddDuration');
		
		var strDate = startDate.substr(3,2) +  "/" + startDate.substr(0,2) + "/" +  startDate.substr(6,4);
						
		var d = new Date(strDate);
		d.setDate(d.getDate() + parseInt(noDay-1)); 
		
	    $('txtEndDepartureDate').value =  (padZero(d.getDate()))  + "/" + (padZero(d.getMonth()+1)) + "/" + d.getFullYear();
	     
    	pageTracker._trackPageview("/PackageEnquiry" );
	        
    },
    
    EmailThisPackage:function(Product)
    {
        pageTracker._trackPageview("/EmailThisPackage.aspx?ProductCode="+Product.ProductCode);
        waitbox(true);
        var url		= "aspx/Package.aspx?v=package_010";
        var pars    =  JSON.stringify(Product);
		var req = new Ajax.Updater(
		                    'divPKShow',
							url, 
							{
								method: 'POST',
								parameters: encodeURIComponent(pars),
								onComplete: this.EmailThisPackageComplete,
								onFailure:  this.Failed
							});	
    },
    
    EmailThisPackageComplete: function(xhr)
	{
		waitbox(false);
		Form.enable('form1');
		$('lblPKEmailShowTitle').innerHTML = $F('hddPackageTitle');
	},
	
	
	PackagePrice:function(Package)
    {
        pageTracker._trackPageview("/PackagePrice.aspx?ProductId="+Package.ProductCode);
        waitbox(true);
        var url		= "aspx/Package.aspx?v=package_price";
        var pars    =  JSON.stringify(Package);
		var req = new Ajax.Updater(
		                    'divPk',
							url, 
							{
								method: 'POST',
								parameters: encodeURIComponent(pars),
								onComplete: this.Complete,
								onFailure:  this.Failed
							});	
    },
	
    Complete: function(xhr)
	{
		waitbox(false);
		Form.enable('form1');
	},
	
	Failed:function(xhr)
	{
	    //alert("Failed");
	    alert(xhr.responseText);
	    waitbox(false);
	}

}

function onSearchPackageClick()
{
    //debugger;
    PackageDestination = $F('lstPackageLocator');
    PackageMonth = $F('lstPackageMonth');
    PackageDuration = $F('lstPackageDuration');
    PackageProductType = $F('lstPackageProductType');
    var Package = {
                     PackageDestination : PackageDestination,
                     PackageMonth : PackageMonth,
                     PackageDuration : PackageDuration,
                     PackageProductType : PackageProductType
                   };
    FlyingPackage.SearchPackage(Package);
}

function onNavigatorPackageClick()
{
    var Package = {
                     PackageDestination : PackageDestination,
                     PackageMonth : PackageMonth,
                     PackageDuration : PackageDuration,
                     PackageProductType : PackageProductType
                   };
    FlyingPackage.SearchPackage(Package);
}

function onViewPackageDetailsClick(PackageID,ProductID,ProductCode,ProductTypeID,NavigatorName,NavigatorEvent)
{
    var Package = {
                    CustomerID: '0',
                    PackageID : PackageID,
                    ProductID : ProductID,
                    ProductCode : ProductCode,
                    ProductTypeID : ProductTypeID,
                    NavigatorName : NavigatorName,
                    NavigatorEvent : NavigatorEvent
                  };
    FlyingPackage.PackageDetail(Package);
}

function onLinkViewPackageDetailsClick(PackageID, CustomerID, PackageCode) {

    var ProductTypeID = 0;
    var NavigatorEvent = "";
    var NavigatorName = "";

    var p = PackageCode.substring(0, 1);
    switch (p) {
        case "B":
            ProductTypeID = 12;
            NavigatorName = "budget";
            NavigatorEvent = "onMenuBudgetClick()";
            break;
        case "G":
            ProductTypeID = 7;
            NavigatorName = "getaway";
            NavigatorEvent = "onMenuGetawayClick()";
            break;
        case "H":
            ProductTypeID = 6;
            NavigatorName = "hip";
            NavigatorEvent = "onMenuHipClick()";
            break;
        case "R":
            ProductTypeID = 5;
            NavigatorName = "romance";
            NavigatorEvent = "onMenuRomanceClick()";
            break;
        case "A":
            ProductTypeID = 8;
            NavigatorName = "adventure";
            NavigatorEvent = "onMenuAdventureClick()";
            break;
        case "W":
            ProductTypeID = 9;
            NavigatorName = "work";
            NavigatorEvent = "onMenuWorkClick()";
            break;
    }

    var Package = {
        CustomerID: CustomerID,
        PackageID: PackageID,
        ProductID: PackageID,
        ProductCode: PackageCode,
        ProductTypeID: ProductTypeID,
        NavigatorName: NavigatorName,
        NavigatorEvent: NavigatorEvent
    };
    TmpCustomerID = CustomerID;
    FlyingPackage.PackageDetail(Package);
}

function onPackageOverviewClick()
{
    FlyingPackage.PackageOverview();
}

function onPackageEnquiryHotelClick()
{
    var PackageID = $F('hddPkPackageID');
    var ProductID = $F('hddProductID');
    var ProductCode = $F('hddProductCode');
    var ProductTypeID = $F('hddProductTypeID');
    
    onPackageEnquiryClick(PackageID,ProductID,ProductCode,ProductTypeID);
}

function onPackageEnquiryClick(PackageID, ProductID, ProductCode, ProductTypeID)
{
    var Package = {
                    CustomerID: ($("hddCustomerID"))?$F("hddCustomerID"):'0',
                    PackageID : PackageID,
                    ProductID : ProductID,
                    ProductCode : ProductCode,
                    ProductTypeID : ProductTypeID
                  };
    Element.show('winPackageEnquiry');
    //$('divHeader').innerText = "Add New User";
	YAHOO.FlyingWeb.Flying.panel.show();
	FlyingPackage.PackageEnquiry(Package);
}

function onSendEnquiryClick(UniqueId,PackageID,ProductID,ProductCode,ProductTypeID,ProductPrice)
{
    
    var country = $F('lstCountryOfRescidence');
    var city = $('txtCityOfResidence');
    var startdate = $F('txtStartDepartureDate');
    var enddate = $F('txtEndDepartureDate');
    var nopax = $F('lstPackagePax');
    var packagename = $('txtPackageName');
    var packageemail = $('txtPackageEmail');
    var packagemobile = $('txtPackageMobile');
    var packagephone = $('txtPackagePhone'); 
    var packagemessage = $F('txtShortMessage');
    var securitycode = $('txtSecurityCode');
    
    if(city.value=="")
    {
       alert("Required Data city.");
       city.focus();
    }
    else if(packagename.value=="")
    {
       alert("Required Data Name.");
       packagename.focus();
    }
    else if(!ValidateEmail(packageemail.value))
    {
        alert("The e-mail address is invalid..");
        packageemail.focus();
    }
    else if(packagemobile.value=="")
    {
       alert("Required Data Mobile Number.");
       packagemobile.focus();
    }
//    else if(!ValidateMobile(packagemobile.value))
//    {
//        alert("Invalid mobile number. Please include the country &amp; city codes, without symbols or spaces. (e.g. 6681234567 for Thailand)");
//        packagemobile.focus();
//    }
//    else if(packagephone.value=="")
//    {
//       alert("Required Data Phone.");
//       packagephone.focus();
//    }
//&& !ValidatePhone(packagephone.value)
//    else if(packagephone.value == "" )
//    {
//        alert("Invalid telephone number. Please include the country &amp; city codes, without symbols or spaces. (e.g. 026576161 for Thailand)");
//        packagephone.focus();
//    }
    else if(securitycode.value=="")
    {
       alert("Required Data security code .");
       securitycode.focus();
    }
    else
    {
         var Package = {
                        UniqueId: UniqueId,
                        CustomerID: $F('hddCustomerID'),
                        PackageID : PackageID,
                        PackageName : $F('hddPackageName'),
                        ProductID : ProductID,
                        ProductCode : ProductCode,
                        ProductTypeID : ProductTypeID,
                        ProductPrice : ProductPrice,
                        PackageCountry : country,
                        PackageCity : city.value,
                        PackageStartDate : startdate,
                        PackageEndDate : enddate,
                        PackageNoPax : nopax,
                        PackageContactName : packagename.value,
                        PackageContactEmail : packageemail.value,
                        PackageContactMobile : packagemobile.value,
                        PackageContactPhone : packagephone.value,
                        PackageMessage : packagemessage,
                        PackageSecurityCode : securitycode.value
                      };
                      
        FlyingService.SendEnquiryPackage(Package);
   } 
}

function onEnquieryCloseClick()
{

    Element.hide('winPackageEnquiry');
    //waitbox(false);
    YAHOO.FlyingWeb.Flying.panel.hide();
}

function onPackageThankCloseClick()
{

    Element.hide('winFlyingThank');
    YAHOO.FlyingWeb.Flying.ThankPanel.hide();
}


function onPackageTypeClick(rdo)
{
    var rc= !rdo.checked;
    rdo.checked = rc;
    var show = "PK-Package-" + rdo.value + "-Show";
    var hide = "PK-Package-" + rdo.value + "-Hidden";
    if (rc) {
        $j("."+hide).toggleClass(show);

    }
    else {
        $j("." + show).addClass(hide, 1000).removeClass(show);
    }
}

function onSelectPackageAllClick()
{
    setDisplaySelectTheme(true);
}

function onClearPackageAllClick()
{
    setDisplaySelectTheme(false);
}

function setDisplaySelectTheme(rc) {
    var idRdo = "rdoId5";
    $(idRdo).checked = rc;
    var show = "PK-Package-5-Show";
    var hide = "PK-Package-5-Hidden";
    if (rc) {
        $j("." + hide).toggleClass(show);

    }
    else {
        $j("." + show).addClass(hide, 1000).removeClass(show);
    }

    idRdo = "rdoId6";
    $(idRdo).checked = rc;
    show = "PK-Package-6-Show";
    hide = "PK-Package-6-Hidden";
    if (rc) {
        $j("." + hide).toggleClass(show);

    }
    else {
        $j("." + show).addClass(hide, 1000).removeClass(show);
    }

    idRdo = "rdoId7";
    $(idRdo).checked = rc;
    show = "PK-Package-7-Show";
    hide = "PK-Package-7-Hidden";
    if (rc) {
        $j("." + hide).toggleClass(show);

    }
    else {
        $j("." + show).addClass(hide, 1000).removeClass(show);
    }

    idRdo = "rdoId8";
    $(idRdo).checked = rc;
    show = "PK-Package-8-Show";
    hide = "PK-Package-8-Hidden";
    if (rc) {
        $j("." + hide).toggleClass(show);

    }
    else {
        $j("." + show).addClass(hide, 1000).removeClass(show);
    }

    idRdo = "rdoId9";
    $(idRdo).checked = rc;
    show = "PK-Package-9-Show";
    hide = "PK-Package-9-Hidden";
    if (rc) {
        $j("." + hide).toggleClass(show);

    }
    else {
        $j("." + show).addClass(hide, 1000).removeClass(show);
    }

    idRdo = "rdoId12";
    $(idRdo).checked = rc;
    show = "PK-Package-12-Show";
    hide = "PK-Package-12-Hidden";
    if (rc) {
        $j("." + hide).toggleClass(show);

    }
    else {
        $j("." + show).addClass(hide, 1000).removeClass(show);
    }
}

function onBudgetTypeClick(rdo, budgettype) {
    var rc = rdo.checked;
    rdo.checked = !rc;

    var rclux = $('rdoBudgetLux').checked;
    var rclite = $('rdoBudgetLite').checked;

    if (rclux) {
        $j('.PK-Package-Lux-Hidden').addClass("PK-Package-Lux-Show");
        $j('.PK-Package-Lux-Hidden').removeClass("PK-Package-Lux-Hidden");
    }
    else {
        $j('.PK-Package-Lux-Show').addClass("PK-Package-Lux-Hidden");
        $j('.PK-Package-Lux-Show').removeClass("PK-Package-Lux-Show");
    }

    if (rclite) {
        $j('.PK-Package-Lite-Hidden').addClass("PK-Package-Lite-Show");
        $j('.PK-Package-Lite-Hidden').removeClass("PK-Package-Lite-Hidden");
    }
    else {
        $j('.PK-Package-Lite-Show').addClass("PK-Package-Lite-Hidden");
        $j('.PK-Package-Lite-Show').removeClass("PK-Package-Lite-Show");
    }
    
}

function onBudgetTypeClick(rdo,budgettype)
{
    var rc= rdo.checked;
    rdo.checked = !rc;
    
    var rclux = $('rdoBudgetLux').checked;
    var rclite = $('rdoBudgetLite').checked;

    if(rclux)
    {
        $j('.PK-Package-Lux-Hidden').addClass("PK-Package-Lux-Show");
        $j('.PK-Package-Lux-Hidden').removeClass("PK-Package-Lux-Hidden");
    }
    else
    {
        $j('.PK-Package-Lux-Show').addClass("PK-Package-Lux-Hidden");
        $j('.PK-Package-Lux-Show').removeClass("PK-Package-Lux-Show");
    }
    
    if(rclite)
    {
        $j('.PK-Package-Lite-Hidden').addClass("PK-Package-Lite-Show");
        $j('.PK-Package-Lite-Hidden').removeClass("PK-Package-Lite-Hidden");
    }
    else
    {
        $j('.PK-Package-Lite-Show').addClass("PK-Package-Lite-Hidden");
        $j('.PK-Package-Lite-Show').removeClass("PK-Package-Lite-Show");
    }
}


function onPkImgClick(imgShowID,imgSrc)
{
    var img =  imgSrc.replace("_s_", "_L_");
    $(imgShowID).src = img;
}

function onEmailThisPackageClick(ProductID,ProductCode)
{
    Element.show('winEmailThisPackage');
	YAHOO.FlyingWeb.Flying.PKpanel.show();
	var Product = {
	                ProductID:ProductID,
	                ProductCode : ProductCode
	              };
	
	FlyingPackage.EmailThisPackage(Product);
}

function onEmailThisPackageCloseClick()
{
    Element.hide('winEmailThisPackage');
    YAHOO.FlyingWeb.Flying.PKpanel.hide();
}

function onSendEmailClick(ProductID)
{
    var txtPKEmailName01 = $('txtPKEmailName01');
    var txtPKEmail = $('txtPKEmail');
    var txtPKEmail01 = $('txtPKEmail01');
    var txtPKEmail02 = $('txtPKEmail02');
    var txtPKEmail03 = $('txtPKEmail03');
    if(txtPKEmailName01.value=="")
    {
       alert("Required Data Name.");
       txtPKEmailName01.focus();
    }
    else if(!ValidateEmail(txtPKEmail.value))
    {
        alert("The e-mail address is invalid..");
        txtPKEmail.focus();
    }
    else if(txtPKEmail01.value !='' && !ValidateEmail(txtPKEmail01.value))
    {
        alert("The e-mail address is invalid..");
        txtPKEmail01.focus();
    }
    else if(txtPKEmail02.value !='' && !ValidateEmail(txtPKEmail02.value))
    {
        alert("The e-mail address is invalid..");
        txtPKEmail02.focus();
    }
    else if(txtPKEmail03.value !='' && !ValidateEmail(txtPKEmail03.value))
    {
        alert("The e-mail address is invalid..");
        txtPKEmail03.focus();
    }
    else
    {
        var PackageEmail = {
                            ProductID   : ProductID,
                            ProductCode : $F('hddProductCode'),
                            PackageName : $F('hddPackageTitle'),
                            PKEmailName : txtPKEmailName01.value,
                            PKEmail     : txtPKEmail.value,
                            PKEmail01   : txtPKEmail01.value,
                            PKEmail02   : txtPKEmail02.value, 
                            PKEmail03   : txtPKEmail03.value, 
                            PKDetail    : $F('txtPKDetail')
                           };
        //Element.hide('winEmailThisPackage');
        //YAHOO.FlyingWeb.Flying.PKpanel.hide();
        FlyingService.SendEmailThisPackage(PackageEmail);
    }
}

/*Package Condistions*/
function onPkConditionClick()
{
    $('divflyingcontent').innerHTML = "";
    Element.show('divflying');
	YAHOO.FlyingWeb.Flying.flying.show();
	FlyingPackage.PackageConditions();
}

/*Package Hotel Condistions*/
function onConditionClick()
{
    $('divflyingcontent').innerHTML = "";
    Element.show('divflying');
	YAHOO.FlyingWeb.Flying.flying.show();
	FlyingPackage.PackageHotelConditions();
}

function onConditionCloseClick()
{
    Element.hide('divflying');
	YAHOO.FlyingWeb.Flying.flying.hide();
}

function onViewPackageRateAndDealClick()
{
    var PackageID = $F('hddPkPackageID');
    var ProductID = $F('hddProductID');
    var ProductCode = $F('hddProductCode');
    var ProductTypeID = $F('hddProductTypeID');
    Element.show('winPackage');
	YAHOO.FlyingWeb.Flying.PkPrice.show();
	
    var Package = {
                        PackageID:PackageID,
                        ProductID:ProductID,
                        ProductCode:ProductCode,
                        ProductTypeID:ProductTypeID
                    };
	FlyingPackage.PackagePrice(Package);
    
}

function onPkPriceCloseClick()
{
    Element.hide('winPackage');
	YAHOO.FlyingWeb.Flying.PkPrice.hide();
}


