﻿var MasterPageId = 'ctl00_ContentPlaceHolder1_';
var defSearchWatermark = ["e.g. city name to search", "اكتب اسم المدينة التي ترغب بالبحث عنها"];
var ilangid = parseInt($("input#langid").val());
$(document).ready(function () {
    documentReady();
});
function documentReady() {
    ilangid = parseInt($("input#langid").val());
    if (ilangid == 0) ilangid = 1;
    var list = availableTags;
    $("#searchinput").autocomplete({
        minLength: 1,
        source: function (request, response) {
            response($.map(list, function (val, i) {
                var text = list[i];
                var matcher = new RegExp($.ui.autocomplete.escapeRegex(request.term), "i");
                if ((!request.term || matcher.test(text)))
                    return { label: text.replace(new RegExp("(?![^&;]+;)(?!<[^<>]*)(" + request.term + ")(?![^<>]*>)(?![^&;]+;)", "gi"), "<strong>$1</strong>"),
                        value: text, option: this
                    };
            }));
        },
        select: function (event, ui) {
            $('#txtResortFromDt').focus();
        }
    }).data("autocomplete")._renderItem = function (ul, item) {
        return $("<li></li>")
					.data("item.autocomplete", item)
					.append("<a>" + item.label + "</a>")
					.appendTo(ul);
    };
    $('#searchinput').click(function () {
        if ($.trim($(this).val()) == defSearchWatermark[ilangid - 1]) {
            $(this).val('');
        }
    }).focus(function () {
        if ($.trim($(this).val()) == defSearchWatermark[ilangid - 1]) {
            $(this).val('');
        }
    }).blur(function () {
        if ($.trim($(this).val()) == "") {
            $(this).val(defSearchWatermark[ilangid - 1]);
        }
    }).val(defSearchWatermark[ilangid - 1]);
}
function ondtstartchange(ele) {
    var v = document.getElementById(ele.id).value;
    var arrDate = v.split('-');
    var langid = 2;
    if (arrDate[0].length != 4) {
        langid = 1;
        v = arrDate[2] + '-' + arrDate[1] + '-' + arrDate[0];
    }
    var txtResortToDt = $('#txtResortToDt');
    $(txtResortToDt).val(DateAdd(v, "D", 1));
}
function CarDateCheck(source, arguments) {

    arguments.IsValid = true;
}
function getRadioSelectedValue(optSel) {
    if ('ctl00_ContentPlaceHolder2_TabDefault_Car_rdoMultiCity'.indexOf(optSel) >= 0) {
        var trobj1 = document.getElementById("trSingleCity");
        trobj1.style.display = "none";

        var trobj2 = document.getElementById("trMultiCity");
        trobj2.style.display = "";

        var objrdo2 = document.getElementById(MasterPageId + 'rdoSingleCity');
        objrdo2.checked = false;
        ValidatorEnable(document.getElementById(MasterPageId + 'rfvMultiCarCity'), true);
    }
    else {
        var trobj1 = document.getElementById("trSingleCity");
        trobj1.style.display = "";

        var trobj2 = document.getElementById("trMultiCity");
        trobj2.style.display = "none";

        var objrdo1 = document.getElementById("ctl00_ContentPlaceHolder1_rdoMultiCity");
        objrdo1.checked = false;

        var objrdo2 = document.getElementById(MasterPageId + 'rdoSingleCity');
        objrdo2.checked = true;

        ValidatorEnable(document.getElementById(MasterPageId + 'rfvMultiCarCity'), false);

    }
}

function AccomodationSelector() {
    var ddlAccomodationType = document.getElementById(MasterPageId + 'ddlAccomodationType')
    var AccomodationType = ddlAccomodationType[ddlAccomodationType.selectedIndex].value;
    document.getElementById(MasterPageId + 'hdnAccomodationType').value = AccomodationType;


}


function AccChecked(chk) {
    if (chk.checked) {
        var modal = $find('mpeAccomodationBehavior');
        if (modal) {
            modal.show();
        }
        document.getElementById('ctl00_ContentPlaceHolder1_tdFlightRoom').style.display = 'block';
    }
    else
        document.getElementById('ctl00_ContentPlaceHolder1_tdFlightRoom').style.display = 'none';
    TripInfoArrangement();
}

function TripInfoArrangement() {



}

function ShowFlightSearchAdditionOptions() {
    document.getElementById(MasterPageId + 'hdnShowAdditionOptions').value = "true";
    LoadFilightSearchAdditionalOptionValue();
}
function LoadFilightSearchAdditionalOptionValue() {

    var hdnShowAdditionalOptions = document.getElementById(MasterPageId + 'hdnShowAdditionOptions');
    var spnAdditionOptions = document.getElementById('spnAdditionOptionText');
    if (hdnShowAdditionalOptions.value == "true") {
        document.getElementById("divAdditionOptions").style.display = "";
        spnAdditionOptions.style.display = "none";
    }
    else {
        document.getElementById("divAdditionOptions").style.display = "none";
        spnAdditionOptions.style.display = "";
    }
}
function ResortDateCheck(source, arguments) {

    var strIn = document.getElementById(MasterPageId + 'txtResortFromDt.SelectedDateValueCntrlId %>').value;
    var strOut = document.getElementById(MasterPageId + 'txtResortToDt.SelectedDateValueCntrlId %>').value;
    //strIn = strIn.split('-')[2] + '-' + strIn.split('-')[1] + '-' + strIn.split('-')[0];
    //strOut = strOut.split('-')[2] + '-' + strOut.split('-')[1] + '-' + strOut.split('-')[0];
    if (Date.parse(strIn) >= Date.parse(strOut)) {
        alert('To date not accepted.');
        arguments.IsValid = false;
    }
    else if (Math.round(((Date.parse(strOut) - Date.parse(strIn)) / (1000 * 60 * 60 * 24))) > 365) {
        alert('To date not accepted.');
        arguments.IsValid = false;
    }
    else {

        arguments.IsValid = true;
    }
}

function FlightDateCheck(source, arguments) {

    var strIn = document.getElementById(MasterPageId + 'txtDepartOn.SelectedDateValueCntrlId %>').value;
    var strOut = document.getElementById(MasterPageId + 'txtReturnOn.SelectedDateValueCntrlId %>').value;
    //strIn = strIn.split('-')[2] + '-' + strIn.split('-')[1] + '-' + strIn.split('-')[0];
    //strOut = strOut.split('-')[2] + '-' + strOut.split('-')[1] + '-' + strOut.split('-')[0];

    if (selRoundTrip.value == "1") {
        if (Date.parse(strIn) > Date.parse(strOut)) {
            alert('Check out date not accepted.');
            arguments.IsValid = false;
        }
        else if (Math.round(((Date.parse(strOut) - Date.parse(strIn)) / (1000 * 60 * 60 * 24))) > 365) {

            alert('Check out date not accepted.');
            arguments.IsValid = false;
        }
        else
            arguments.IsValid = true;
    }
    else {
        arguments.IsValid = true;
    }
}
function ValidateTravellers() {

    var ddlAdult = document.getElementById(MasterPageId + 'ddlAdult');
    var ddlChild = document.getElementById(MasterPageId + 'ddlChild');
    var ddlInfant = document.getElementById(MasterPageId + 'ddlInfant');

    var TotalPassenger = parseInt(ddlAdult[ddlAdult.selectedIndex].value) + parseInt(ddlChild[ddlChild.selectedIndex].value) + parseInt(ddlInfant[ddlInfant.selectedIndex].value);
    if (TotalPassenger == 0 || TotalPassenger > 6) {

        alert(TravelerMsg)
        arguments.IsValid = false;

    }
    else {

        arguments.IsValid = true;
    }

    return arguments.IsValid;

}
function SetpackageResort() {

    var chkResortFlight = document.getElementById(MasterPageId + 'chkResortFlight');



    if (chkResortFlight == null) {
        return;
    }
    if (chkResortFlight.checked) {

        document.getElementById('tdReosrtToCitylbl').style.display = "";
        document.getElementById('trResortTraveller').style.display = "inline";
        document.getElementById('trResortTravellerlbl').style.display = "inline";

        document.getElementById(MasterPageId + 'lblResortCity').innerHTML = FlightFromCityMsg;
    }
    else {
        document.getElementById('tdReosrtToCitylbl').style.display = "none";
        document.getElementById('trResortTraveller').style.display = "none";
        document.getElementById('trResortTravellerlbl').style.display = "none";
        document.getElementById(MasterPageId + 'lblResortCity').innerHTML = ApartmentCityMsg;
    }
}


function SetPackagedCar() {
    var chkCarAccomodation = document.getElementById(MasterPageId + 'chkCarAccomodation');

    if (chkCarAccomodation.checked) {
        ShowCarRentType(true);
        var modal = $find('mpeAccomodationBehavior');
        if (modal) {
            modal.show();
        }
    }
    else {
        ShowCarRentType(false);
    }
}
function ShowCarRentType(bShow) {
    var ddlRentalType = document.getElementById(MasterPageId + 'ddlRentalType');
    var rdoSingleCity = document.getElementById(MasterPageId + 'rdoSingleCity');
    var rdoMultiCity = document.getElementById(MasterPageId + 'rdoMultiCity');
    var chkCarAccomodation = document.getElementById(MasterPageId + 'chkCarAccomodation');

    if (bShow) {
        ddlRentalType.selectedIndex = 0;
        rdoSingleCity.checked = true;
        rdoMultiCity.checked = false;
        document.getElementById('trCarRental').style.display = "none";
        document.getElementById('trSingleCity').style.display = "inline";
        document.getElementById('trMultiCity').style.display = "none";
    }
    else if (!chkCarAccomodation.checked)
        document.getElementById('trCarRental').style.display = "";
}
function SetPackagedCarFlight() {
    var chkCarAccomodation = document.getElementById(MasterPageId + 'chkCarAccomodation');
    var chkCarFlight = document.getElementById(MasterPageId + 'chkCarFlight');
    var rfvCarToCity = document.getElementById(MasterPageId + 'rfvCarToCity');


    if (chkCarFlight.checked) {
        rfvCarToCity.enabled = true;
        ShowCarRentType(true);
        document.getElementById('tdCarToCitylbl').style.display = "";
        document.getElementById('trCarTraveller').style.display = "";
        document.getElementById(MasterPageId + 'lblCarCity').innerHTML = FlightFromCityMsg;
    }
    else {
        rfvCarToCity.enabled = false;
        ShowCarRentType(false);
        document.getElementById('tdCarToCitylbl').style.display = "none";
        document.getElementById('trCarTraveller').style.display = "none";
        document.getElementById(MasterPageId + 'lblCarCity').innerHTML = ApartmentCityMsg;
    }
}

function ShowHideAgePanel() {
    var ddlChild = document.getElementById(MasterPageId + 'ddlChild')
    var totalChild = ddlChild[ddlChild.selectedIndex].value;

    var ddlInfant = document.getElementById(MasterPageId + 'ddlInfant')
    var totalInfant = ddlInfant[ddlInfant.selectedIndex].value;

    if (totalChild == 0 && totalInfant == 0)
        document.getElementById('tdChildrenAge').style.display = "none";
    else
        document.getElementById('tdChildrenAge').style.display = "inline";
}
function SelectionMinorsAge() {

    ShowHideAgePanel();
    var ddlChild = document.getElementById(MasterPageId + 'ddlChild')
    var totalChild = ddlChild[ddlChild.selectedIndex].value;

    switch (parseInt(totalChild)) {
        case 0:
            document.getElementById('tdChild1').style.display = "none";
            document.getElementById('tdChild2').style.display = "none";
            document.getElementById('tdChild3').style.display = "none";
            document.getElementById('tdChild4').style.display = "none";
            document.getElementById(MasterPageId + 'lblSelectChild').style.display = "none";
            break;
        case 1:
            document.getElementById('tdChild1').style.display = "block";
            document.getElementById('tdChild2').style.display = "none";
            document.getElementById('tdChild3').style.display = "none";
            document.getElementById('tdChild4').style.display = "none";
            document.getElementById(MasterPageId + 'lblSelectChild').style.display = "block";
            break;
        case 2:
            document.getElementById('tdChild1').style.display = "block";
            document.getElementById('tdChild2').style.display = "block";
            document.getElementById('tdChild3').style.display = "none";
            document.getElementById('tdChild4').style.display = "none";
            document.getElementById(MasterPageId + 'lblSelectChild').style.display = "block";
            break;
        case 3:
            document.getElementById('tdChild1').style.display = "block";
            document.getElementById('tdChild2').style.display = "block";
            document.getElementById('tdChild3').style.display = "block";
            document.getElementById('tdChild4').style.display = "none";
            document.getElementById(MasterPageId + 'lblSelectChild').style.display = "block";
            break;
        case 4:
            document.getElementById('tdChild1').style.display = "block";
            document.getElementById('tdChild2').style.display = "block";
            document.getElementById('tdChild3').style.display = "block";
            document.getElementById('tdChild4').style.display = "block";
            document.getElementById(MasterPageId + 'lblSelectChild').style.display = "block";
            break;
    }
}

function SelectionChildrenAge() {
    ShowHideAgePanel();

    var ddlInfant = document.getElementById(MasterPageId + 'ddlInfant')
    var totalInfant = ddlInfant[ddlInfant.selectedIndex].value;

    switch (parseInt(totalInfant)) {
        case 0:
            document.getElementById('tdinfant1').style.display = "none";
            document.getElementById('tdinfant2').style.display = "none";
            document.getElementById('tdinfant3').style.display = "none";
            document.getElementById('tdinfant4').style.display = "none";
            document.getElementById(MasterPageId + 'lblSelectAge').style.display = "none";
            break;
        case 1:
            document.getElementById('tdinfant1').style.display = "block";
            document.getElementById('tdinfant2').style.display = "none";
            document.getElementById('tdinfant3').style.display = "none";
            document.getElementById('tdinfant4').style.display = "none";
            document.getElementById(MasterPageId + 'lblSelectAge').style.display = "block";
            break;
        case 2:
            document.getElementById('tdinfant1').style.display = "block";
            document.getElementById('tdinfant2').style.display = "block";
            document.getElementById('tdinfant3').style.display = "none";
            document.getElementById('tdinfant4').style.display = "none";
            document.getElementById(MasterPageId + 'lblSelectAge').style.display = "block";
            break;
        case 3:
            document.getElementById('tdinfant1').style.display = "block";
            document.getElementById('tdinfant2').style.display = "block";
            document.getElementById('tdinfant3').style.display = "block";
            document.getElementById('tdinfant4').style.display = "none";
            document.getElementById(MasterPageId + 'lblSelectAge').style.display = "block";
            break;
        case 4:
            document.getElementById('tdinfant1').style.display = "block";
            document.getElementById('tdinfant2').style.display = "block";
            document.getElementById('tdinfant3').style.display = "block";
            document.getElementById('tdinfant4').style.display = "block";
            document.getElementById(MasterPageId + 'lblSelectAge').style.display = "block";
            break;
    }
}

function CounryChange(CtrlId, CityTextBox, CityBookingType, CityCountryId) {
    var e = document.getElementById(CtrlId);
    document.getElementById(CityCountryId).value = e.options[e.selectedIndex].value;
    document.getElementById(CityTextBox).value = '';
    document.getElementById(CityBookingType).value = 'I';
}



function ClosePopup() {
    $find('ctl00_ContentPlaceHolder1_mde').hide();
    return false;
}

function ValidateResort() {
    var IsValidated = true;
    var ddlResortCountry = $('#' + MasterPageId + 'ddlResortCountry');
    var LocalCityName = $("#searchinput").val();  //$('#' + MasterPageId + 'ddlResortCity :selected').text();
    var hdnLanguage = $('#' + MasterPageId + 'hdnLanguage');
    //var ddlResortCity = $('#' + MasterPageId + 'ddlResortCity');
    var ddlResortToCity = $('#' + MasterPageId + 'ddlResortToCity');
    var txtResortFromDt = $('#txtResortFromDt');
    var txtResortToDt = $('#txtResortToDt');
    var chkResortFlight = $('#' + MasterPageId + 'chkResortFlight');
    var selRRooms = $('#' + 'selRRooms');
    var selRAdult = $('#' + 'selRAdult');
    var selRMinor = $('#' + 'selRMinor');
    var selInfants = $('#' + 'selInfants');
    var txtResortPrice = $('#' + MasterPageId + 'txtResortPrice');
    var chkResortCar = $('#' + MasterPageId + 'chkResortCar');
    var ddlResortPriceBase = $('#' + MasterPageId + 'ddlResortPriceBase');
    var strIn = txtResortFromDt.val();
    var strOut = txtResortToDt.val();
    //var IntCity = $('#' + DepCityClientID);
    var spnCitySearchControl = document.getElementById(CitySearchControlClientId);
    //var lnkDomesticLoadging = $('#' + MasterPageId + 'lnkDomesticLoadging');
    var InternationalCityText = $('#' + MasterPageId + 'ccsLodgingCity_txtSelectText');
    var LocalCountry = "";
    //    if (ddlResortCity != null && ddlResortCity.val() == "0")
    //    {
    //        $('#spnFromCity').css('display', '');
    //        IsValidated = false;
    //    }
    //    else 
    //    {
    //        $('#spnFromCity').css('display', 'none');
    //    }


    if (chkResortFlight.checked && ddlResortToCity != null && ddlResortToCity.val() == "0") {
        $('#spnToCity').css('display', '');
        IsValidated = false;
    }
    else {
        $('#spnToCity').css('display', 'none');
    }

    //    if (hdnLanguage.val() == "1") {
    //        LocalCountry = "Saudi Arabia";
    //        strIn = strIn.split('-')[2] + '-' + strIn.split('-')[1] + '-' + strIn.split('-')[0];
    //        strOut = strOut.split('-')[2] + '-' + strOut.split('-')[1] + '-' + strOut.split('-')[0];
    //    }
    //    else {
    //        LocalCountry = "السعودية";
    //        strIn = strIn.split('-')[0] + '-' + strIn.split('-')[1] + '-' + strIn.split('-')[2];
    //        strOut = strOut.split('-')[0] + '-' + strOut.split('-')[1] + '-' + strOut.split('-')[2];
    //    }

    if (Date.parse(strIn) >= Date.parse(strOut)) {
        alert('To date not accepted.');
        IsValidated = false;
    }
    else if (Math.round(((Date.parse(strOut) - Date.parse(strIn)) / (1000 * 60 * 60 * 24))) > 365) {
        alert('To date not accepted.');
        IsValidated = false;
    }
    if ($.trim(LocalCityName) == "" || LocalCityName == defSearchWatermark[ilangid - 1]) {
        alert('city is not set. Please select city.');
        IsValidated = false;
    }

    if (spnCitySearchControl.style.display != "none" && IntCity.length != null && jQuery.trim(IntCity.val()) == "") {
        alert('Lodging city is not set. Please select city.');
        IsValidated = false;
    }

    if (IsValidated == true) {
        var IsDomesticLodging = true;
        var querystring = "";
        var IsInterantional = false;
        var HotelCityId = 0;
        var idx = jQuery.inArray($("#searchinput").val(), availableTags);
        if (idx > -1) {
            HotelCityId = availableTagsId[idx].split('_')[0];
        }
        if (HotelCityId == null || HotelCityId == 'undefined' || jQuery.trim(HotelCityId) == '') {
            HotelCityId = 0;
        }
        querystring = "HotelCityId=" + HotelCityId;  // ddlResortCity.val();

        querystring += "&FromDate=" + strIn;
        querystring += "&ToDate=" + strOut;

        if (selRRooms.length > 0 && selRRooms.val() != "0")
            querystring += "&Rooms=" + selRRooms.val();

        if (selRAdult.length > 0 && selRAdult.val() != "0")
            querystring += "&Adult=" + selRAdult.val();

        if (selRMinor.length > 0 && selRMinor.val() != "0")
            querystring += "&Child=" + selRMinor.val();

        if (selInfants.length > 0 && selInfants.val() != "0")
            querystring += "&Infant=" + selInfants.val();

        if (txtResortPrice != null && txtResortPrice.val().trim() != "")
            querystring += "&MaxRate=" + txtResortPrice.val();

        if (chkResortCar.attr('checked'))
            querystring += "&HotelCar=" + "Y";

        if (chkResortFlight.attr('checked'))
            querystring += "&HotelFlight=Y";
        if (IsInterantional == false) {
            location.href = SitePath + "/search_hotels_apartments.aspx?" + querystring;
        }
        else {
            location.href = "search_ineternational_hotels.aspx?" + querystring;
        }

    }

    return false;
}


