﻿var numRoomsPac = 0;
var numRoomsActivePac = 0;
var hasRoomValuesPac = false;
var minNumRoomsPac = 1;
var totalChieldrenPac = 0;
var totalAdultsPac = 0;
var strRoomsParameterPac = '';
var isFormValidPac = true;
var strMsgErroPac = '';
var strMsgErroPacCity = '';
var strMsgErroPacRooms = '';
var pxheightalert = 0;
var _roomsQueryPac = '';

$(function () {

    $('[id$=pnlErrorRoomsPac]').hide();
    $('[id$=pnlErrorPac]').hide();
    _roomsQueryPac = $.trim(roomConfigQueryPac).split(' '); //roomConfigQueryPac.trim().split(' '); 
    templateRoomPac = $('#containerRoomPac').html();
    $('#containerRoomPac').empty();
    //$(".essePac").tooltip({ effect: 'slide' });
    $("#search-modal-roomsPac").click(function () {
        $(".search-modal-roomsPac").fadeIn();
    });
    if (!hasRoomValuesPac) {
        numRoomsPac = numRoomsActivePac = 1;
        SetRoomListPac(maxNumRoomsPac);
    }

    //$("select, input.text-field").uniform();

    $("#salvarPac").click(function () {
        isFormValidPac = true;
        SaveRoomOptionsPac();
        if (isFormValidPac) {
            strMsgErroPacRooms = '';
            $(".search-modal-roomsPac").fadeOut();
        }
    });
    $("#btn-cancel-roomPac").click(function () {
        $(".search-modal-roomsPac").fadeOut();
    });
    $("#clear-form-roomsPac").click(function () {
        for (var indexPac = 1; indexPac <= maxNumRoomsPac; indexPac++) {
            $('#containerRoomPacItem' + indexPac).hide();
            $(".set-total-adultsPac" + indexPac).siblings('span').text("1");
            $(".set-total-adultsPac" + indexPac).val("1");
            $(".show-childen-combo-agePac" + indexPac).val("0");
            $(".show-childen-combo-agePac" + indexPac).siblings('span').text("0");
            $(".show-childen-combo-agePac" + indexPac).click();
            $('[id$=pnlErrorRoomsPac]').hide();
            $('[id$=pnlErrorPac]').hide();
            for (var i = 1; i <= 4; i++) {
                $('.childenPac-' + indexPac + i).siblings('span').text("--");
                $('.childenPac-' + indexPac + i).val("--");
                $('#childenPac-' + indexPac + i).removeClass('field-alert');
                $('#childenPac-' + indexPac + i).hide();
            }
            numRoomsPac = 0;
            AddRoomPac();
            isFormValidPac = true;
        }
    });
    SaveRoomOptionsPac();
    GenerateRoomsFromQueryDP();
});

function GenerateRoomsFromQueryDP() {
    for (var i = 1; i < numRoomsActiveQueryPac; i++) {
        AddRoomPac();
    }

    if (roomConfigQueryPac != '') {
        
        for (var i = 0; i < _roomsQueryPac.length; i++) {
            var roomPac = _roomsQueryPac[i].split('_');
            var roomTypePac = parseInt(roomPac[1] + roomPac[2]);

            switch (roomTypePac) {
                case 10:
                    $(".set-total-adultsPac" + parseInt(i + 1)).siblings('span').text('1');
                    $(".set-total-adultsPac" + parseInt(i + 1)).val('1');
                    break;
                case 21:
                    $(".set-total-adultsPac" + parseInt(i + 1)).siblings('span').text('2-DBL');
                    $(".set-total-adultsPac" + parseInt(i + 1)).val('2-DBL');
                    break;
                case 22:
                    $(".set-total-adultsPac" + parseInt(i + 1)).siblings('span').text('2-TWIN');
                    $(".set-total-adultsPac" + parseInt(i + 1)).val('2-TWIN');
                    break;
                case 30:
                    $(".set-total-adultsPac" + parseInt(i + 1)).siblings('span').text('3');
                    $(".set-total-adultsPac" + parseInt(i + 1)).val('3');
                    break;
                case 40:
                    $(".set-total-adultsPac" + parseInt(i + 1)).siblings('span').text('4');
                    $(".set-total-adultsPac" + parseInt(i + 1)).val('4');
                    break;
                default:
            }

            var childrenPac = parseInt(roomPac[3]);

            $(".show-childen-combo-agePac" + parseInt(i + 1)).val(childrenPac);
            $(".show-childen-combo-agePac" + parseInt(i + 1)).siblings('span').text(childrenPac);

            switch (childrenPac) {
                case 0:
                    $("#childenPac-" + parseInt(i + 1) + "1").hide();
                    $("#childenPac-" + parseInt(i + 1) + "2").hide();
                    $("#childenPac-" + parseInt(i + 1) + "3").hide();
                    $("#childenPac-" + parseInt(i + 1) + "4").hide();
                    break;
                case 1:
                    $("#childenPac-" + parseInt(i + 1) + "1").css('display', 'inline-block');
                    $("#childenPac-" + parseInt(i + 1) + "2").hide();
                    $("#childenPac-" + parseInt(i + 1) + "3").hide();
                    $("#childenPac-" + parseInt(i + 1) + "4").hide();
                    var childPac = parseInt(roomPac[4]);
                    $(".childenPac-" + parseInt(i + 1) + "1").val(childPac);
                    $(".childenPac-" + parseInt(i + 1) + "1").siblings('span').text(childPac);
                    break;
                case 2:
                    $("#childenPac-" + parseInt(i + 1) + "1").css('display', 'inline-block');
                    $("#childenPac-" + parseInt(i + 1) + "2").css('display', 'inline-block');
                    $("#childenPac-" + parseInt(i + 1) + "3").hide();
                    $("#childenPac-" + parseInt(i + 1) + "4").hide();

                    var childPac1 = parseInt(roomPac[4]);
                    $(".childenPac-" + parseInt(i + 1) + "1").val(childPac1);
                    $(".childenPac-" + parseInt(i + 1) + "1").siblings('span').text(childPac1);

                    var childPac2 = parseInt(roomPac[5]);
                    $(".childenPac-" + parseInt(i + 1) + "2").val(childPac2);
                    $(".childenPac-" + parseInt(i + 1) + "2").siblings('span').text(childPac2);

                    break;
                case 3:
                    $("#childenPac-" + parseInt(i + 1) + "1").css('display', 'inline-block');
                    $("#childenPac-" + parseInt(i + 1) + "2").css('display', 'inline-block');
                    $("#childenPac-" + parseInt(i + 1) + "3").css('display', 'inline-block');
                    $("#childenPac-" + parseInt(i + 1) + "4").hide();

                    var childPac1 = parseInt(roomPac[4]);
                    $(".childenPac-" + parseInt(i + 1) + "1").val(childPac1);
                    $(".childenPac-" + parseInt(i + 1) + "1").siblings('span').text(childPac1);

                    var childPac2 = parseInt(roomPac[5]);
                    $(".childenPac-" + parseInt(i + 1) + "2").val(childPac2);
                    $(".childenPac-" + parseInt(i + 1) + "2").siblings('span').text(childPac2);

                    var childPac3 = parseInt(roomPac[6]);
                    $(".childenPac-" + parseInt(i + 1) + "3").val(childPac3);
                    $(".childenPac-" + parseInt(i + 1) + "3").siblings('span').text(childPac3);
                    break;
                case 4:
                    $("#childenPac-" + parseInt(i + 1) + "1").css('display', 'inline-block');
                    $("#childenPac-" + parseInt(i + 1) + "2").css('display', 'inline-block');
                    $("#childenPac-" + parseInt(i + 1) + "3").css('display', 'inline-block');
                    $("#childenPac-" + parseInt(i + 1) + "4").css('display', 'inline-block');

                    var childPac1 = parseInt(roomPac[4]);
                    $(".childen-" + parseInt(i + 1) + "1").val(childPac1);
                    $(".childen-" + parseInt(i + 1) + "1").siblings('span').text(childPac1);

                    var childPac2 = parseInt(roomPac[5]);
                    $(".childenPac-" + parseInt(i + 1) + "2").val(childPac2);
                    $(".childenPac-" + parseInt(i + 1) + "2").siblings('span').text(childPac2);

                    var childPac3 = parseInt(roomPac[6]);
                    $(".childenPac-" + parseInt(i + 1) + "3").val(childPac3);
                    $(".childenPac-" + parseInt(i + 1) + "3").siblings('span').text(childPac3);

                    var childPac4 = parseInt(roomPac[7]);
                    $(".childenPac-" + parseInt(i + 1) + "4").val(childPac4);
                    $(".childenPac-" + parseInt(i + 1) + "4").siblings('span').text(childPac4);
                    break;
                default:
            }
            SaveRoomOptionsPac();
        }
    }   
}

function SaveRoomOptionsPac() {
    totalAdultsPac = 0;
    totalChieldrenPac = 0;
    strRoomsParameterPac = '';
    numRoomsActivePac = numRoomsActiveQueryPac > 0 ? numRoomsActiveQueryPac : numRoomsActivePac;
    for (var i = 1; i <= numRoomsActivePac; i++) {
        var totalAdultSelectPac = $(".set-total-adultsPac" + i).val().split('-');
        var adultsPac = totalAdultSelectPac[0];
        var TypeBadPac = totalAdultSelectPac.length > 1 ? totalAdultSelectPac[1] == 'DBL' ? "1" : "2" : "0";
        var numAdultsPac = parseInt(adultsPac);
        totalAdultsPac += numAdultsPac;

        var numChieldrenPac = parseInt($(".show-childen-combo-agePac" + i).val() != 'Selecione' ? $(".show-childen-combo-agePac" + i).val() : 0);
        totalChieldrenPac += numChieldrenPac;

        strRoomsParameterPac += "r_" + numAdultsPac + '_' + TypeBadPac + '_' + numChieldrenPac;

        var tmpStrChieldrenAgesPac = '';
        for (var indexPac = 1; indexPac <= numChieldrenPac; indexPac++) {
            var chieldPac = $('.childenPac-' + i + indexPac).val();
            if (chieldPac == '--') {
                isFormValidPac = false;
                strMsgErroPacRooms = '<p>Informe as idades das crianças.</p>';
                $('#childenPac-' + i + indexPac).addClass('field-alert');
            }
            else {
                tmpStrChieldrenAgesPac += '_' + chieldPac;
                $('[id$=pnlErrorRoomsPac]').hide();
                $('[id$=panlErrorPac]').hide();
                $('#childenPac-' + i + indexPac).removeClass('field-alert');
            }
        }
        strRoomsParameterPac += tmpStrChieldrenAgesPac == '' ? '_0' : tmpStrChieldrenAgesPac;
        strRoomsParameterPac += '+';
    }
    if (!isFormValidPac) {
        $('[id$=pnlErrorRoomsPac]').show();
        $('[id$=pnlErrorRoomsPac]').html(strMsgErroPacRooms);
    }
    var strRoomsPac = numRoomsActivePac == 1 ? numRoomsActivePac + ' Quarto (' : numRoomsActivePac + ' Quartos (';
    var strAdultosPac = totalAdultsPac == 1 ? totalAdultsPac + ' Adulto' : totalAdultsPac + ' Adultos';
    var strChieldrenPac = totalChieldrenPac == 1 ? ' e ' + totalChieldrenPac + ' Criança' : totalChieldrenPac == 0 ? '' : ' e ' + totalChieldrenPac + ' Crianças';
    var strLabelRoomsPac = strRoomsPac + strAdultosPac + strChieldrenPac;
    strLabelRoomsPac += ')';
    $("#search-modal-roomsPac-label").text(strLabelRoomsPac);
    $(".search-box-rooms").hide();
    hasRoomValuesPac = true;

}

function SetRoomListPac(numRoomPac) {
    for (var i = 1; i <= numRoomPac; i++) {
        var values = {
            indexPac: i
        };
        $('#containerRoomPac').append($.tmpl(templateRoomPac, values));
        if ($('#containerRoomPacItem' + i) != null)
            $('#containerRoomPacItem' + i).hide();
        if ($('#containerRoomPacItem' + numRoomsPac) != null)
            $('#containerRoomPacItem' + numRoomsPac).show();
    }
    ShowAddRemoveRoomPac();
    hasRoomValuesPac = true;
}

function AddRoomPac() {
    numRoomsPac = numRoomsPac + 1;
    numRoomsActivePac = numRoomsPac;
    $('#containerRoomPacItem' + numRoomsPac).show();
    ShowAddRemoveRoomPac();
}

function RemoveRoomPac() {
    $('#containerRoomPacItem' + numRoomsPac).hide();
    numRoomsPac = numRoomsPac - 1;
    numRoomsActivePac = numRoomsPac;
    ShowAddRemoveRoomPac();
}

function ShowAddRemoveRoomPac() {
    if (numRoomsPac == maxNumRoomsPac)
        $('#AddRoomPac').hide();
    else
        $('#AddRoomPac').show();
    if (numRoomsPac == minNumRoomsPac)
        $('#RemoveRoomPac').hide();
    else
        $('#RemoveRoomPac').show();
}

function SubmitFormPac() {
    if (!ValidateFormPac()) {
        $('[id$=pnlErrorPac]').show();
        $('[id$=pnlErrorPac]').html(strMsgErroPac);        
    }
    else {
        $('[id$=hddUrlRoomConfigPac]').val(strRoomsParameterPac);
        $('[id$=btnSearchServerPac]').click();
    }

}

function ValidateFormPac() {
    strMsgErroPac = '';

    var check = $('#rbtHotelCarro').attr('checked');

    if (check) {
        if ($('[id$=txtOrigemHC]').val() == '') {
            strMsgErroPac = resourcesDynamicPackages.messageDeliveryLocation;
            isFormValidPac = false;
        }
    }
    else {
        if ($('[id$=txtDestino]').val() == '') {
            strMsgErroPac = resourcesDynamicPackages.messageDeliveryLocation;
            isFormValidPac = false;
        }
        if ($('[id$=txtOrigem]').val() == '') {
            strMsgErroPac += resourcesDynamicPackages.messagePickupLocation;
            isFormValidPac = false;
        }
    }

    if (strMsgErroPacRooms != '') {
        strMsgErroPac += strMsgErroPacRooms;
        isFormValidPac = false;
    }

    if (strMsgErroPac == '') {
        isFormValidPac = true;
    }
    return isFormValidPac;
} 
