﻿var test = null;
$(document).ready(function () {

    $.ajaxSetup({
        beforeSend: function (xhr) {
            xhr.setRequestHeader('X-Requested-With', 'XMLHttpRequest');
            return xhr;
        }
    });

    $('textarea').autogrow();

    //    swfobject.addDomLoadEvent(function () {
    //        swfobject.embedSWF(
    //					"/Scripts/text_and_image_cloud.swf", "tagCloud",
    //					"270", "270",
    //					"10", "/Scripts/expressInstall.swf",
    //					{
    //					    cloud_data: "../../Scripts/cloud_data.xml",
    //					    tcolor: "0x3CBBC7",
    //					    tcolor2: "0x21676E",
    //					    hicolor: "0xBA5838",
    //					    tspeed: "250",
    //					    fontFace: "Impact"

    //					},
    //					{ wmode: "window", menu: "false", quality: "best" }
    //					);
    //	});

    $(".calendario").datepicker();

});

function changeLang(lang) {
    //    $.cookie('lang', lang);
    //    window.location.reload();
    //    return false;
}

// Track ajax request to analytics reports
function trackAction(category, action, label) {
    try {
        //alert(category + ' - ' + action + ' - ' + label);
        //        var pageTracker = _gat._getTracker("UA-768478-10");
        //        pageTracker._trackEvent(category, action);
        _gaq.push(['_trackEvent', category, action, label]);
    } catch (err) { }
}

function goToByScroll(id) {
    $('html,body').animate({ scrollTop: $("#" + id).offset().top - 50 }, 'slow');
}

//// label = AbsolutePath
//function goto(url, category, action, label) {

//    trackAction(category, action, label)
//    setTimeout('document.location = "' + url + '"', 100)
//}

// label = AbsolutePath
function goto(url) {
    setTimeout('document.location = "' + url + '"', 100)
}

function trackClick(category, action) {
    trackAction(category, action);
}

function trackGoal(action) {
    try {
        _gaq.push(['_trackPageview', '/Goal/' + action]);
    } catch (err) { }
}

function doAjaxPost(btnClicked, divID, category, action, label, scroll) {

    // Aguarde
    $('#' + divID).fadeOut('slow', function () {
        $('#' + divID + 'Aguarde').show();
        if (scroll) {
            goToByScroll(divID + 'Aguarde');
        }
    });

    // Get form stepFrom clicked button
    var $form = $(btnClicked).parents('form');

    // Call post ajax request
    $.ajax({
        type: "GET",
        url: $form.attr('action'),
        cache: false,
        data: $form.serialize(),
        contentType: "application/x-www-form-urlencoded",
        //dataType: "json",
        //timeout: 5000,

        error: function (XMLHttpRequest, textStatus, errorThrown) {

            //trackAction(category, action + '#Error', label);

            //            setTimeout(function () {
            $('#' + divID + 'Aguarde').fadeOut('slow', function () {
                $('#' + divID + 'Erro').show();
            });
            //            }, 1000);

        },
        success: function (data, textStatus) {

            //trackAction(category, action + '#Success', label);

            //            setTimeout(function () {
            $('#' + divID + 'Aguarde').fadeOut('slow', function () {
                $('#' + divID + 'Sucesso').show();
            });
            //            }, 1000);
        }
    });


    return false; // if it's a link to prevent post

};

function gotoStep(stepFrom, stepTo) {

    $('#ReservaStep' + stepFrom).unblock({ onUnblock: function () {
        $('#ReservaStep' + stepFrom).fadeOut('fast', function () { $('#ReservaStep' + stepTo).fadeIn(); });
    }
    });

}


function doReservaAjaxPost(btnClicked, stepFrom) {

    $(".fullblock").block({ message: '<img src="../Images/ajax-loader(9).gif" style="float: left; margin: 4px 0 0 0;" /><div style="font-size: 18px; font-weight: bold;">Aguarde...</div>', centerY: 0, css: { width: '250px', top: '10px', border: 'none', background: 'none', color: '#FFF'} });
    goToByScroll("divScroll");


    //    // Aguarde
    //    $('#' + divID).fadeOut('slow', function () {
    //        $('#' + divID + 'Aguarde').show();
    //        if (scroll) {
    //            goToByScroll(divID + 'Aguarde');
    //        }
    //    });

    // Get form stepFrom clicked button
    var $form = $(btnClicked).parents('form');

    // Call post ajax request
    $.ajax({
        type: "POST",
        url: $form.attr('action'),
        cache: false,
        data: 'step=' + stepFrom + '&' + $form.serialize(),
        contentType: "application/x-www-form-urlencoded",
        //dataType: "json",
        //timeout: 5000,

        error: function (XMLHttpRequest, textStatus, errorThrown) {
            $(".fullblock").unblock();
            alert('erro');

        },

        success: function (data, textStatus) {
            test = data;

            if (data.success == false) {

                $('#ReservaStep' + stepFrom).unblock();
                $('#ReservaStep' + stepFrom + '-Erro-Msg').html(data.msg);
                $('#ReservaStep' + stepFrom + '-Erro').show();
                goToByScroll('ReservaStep' + stepFrom);
            }
            else {

                switch (data.confirmation) {
                    case 0: // STEP1: cupom invalido
                        {
                            //$('#ReservaStep' + stepFrom).unblock();
                            $('#ReservaStep' + stepFrom + '-Erro-Msg').html(data.msg);
                            $('#ReservaStep' + stepFrom + '-Erro').show();
                            //goToByScroll('ReservaStep' + stepFrom);
                            break;

                        }
                    case 1: // STEP1: cupom valido
                        {

                            gotoStep(stepFrom, stepFrom + 1);
                            //goToByScroll('ReservaStep' + stepFrom + 1);

                            break;
                        }


                    case 2: // STEP1: cupom usado
                        {
                            //$('#ReservaStep' + stepFrom).unblock();
                            $('#ReservaStep' + stepFrom + '-Erro-Msg').html(data.msg);
                            $('#ReservaStep' + stepFrom + '-Erro').show();
                            //goToByScroll('ReservaStep' + stepFrom);
                            break;
                        }

                    case 3: // STEP2: validacao
                        {
                            $('#ReservaStep' + stepFrom + '-Header').css('background-color', '#ffffbb')
                            $('#ReservaStep' + stepFrom + '-Erro-Msg').html(data.msg);
                            $('#ReservaStep' + stepFrom + '-Erro').show();
                            $('.header-step').hide();
                            $('.header-step-error').show();
                            break;
                        }
                    case 4: // STEP2: dados enviados
                        {
                            $('.header-step').show();
                            $('.header-step-error').hide();
                            gotoStep(stepFrom, stepFrom + 1);
                            //goToByScroll('ReservaStep' + (stepFrom + 1));
                            $('#Nome').val(data.reserva.Nome);
                            $('#Email').val(data.reserva.Email);
                            $('#Cidade').val(data.reserva.Cidade);
                            $('#UF').val(data.reserva.UF);
                            $('#DDD').val(data.reserva.DDD);
                            $('#Telefone').val(data.reserva.Telefone);
                            $('#NumeroPessoas').val(data.reserva.NumeroPessoas);

                            break;
                        }
                    case 5: // STEP2: reserva confirmada
                        {
                            //goToByScroll('ReservaStep' + (stepFrom + 1));
                            $('#lblNome').html(data.reserva.Nome);
                            $('#lblEmail').html(data.reserva.Email);
                            $('#lblCidade').html(data.reserva.Cidade);
                            $('#lblUF').html(data.reserva.UF);
                            $('#lblTelefone').html('(' + data.reserva.DDD + ') ' + data.reserva.Telefone);
                            $('#lblNumeroPessoas').html(data.reserva.NumeroPessoas);
                            $('#lblDataCheckin').html(data.reserva.DataCheckin);
                            $('#lblDataCheckout').html(data.reserva.DataCheckout);
                            gotoStep(stepFrom, stepFrom + 1);
                            $('.header-step').show();
                            $('.header-step-error').hide();
                            break;
                        }
                    case 6: // STEP2: erro validacao, sem disponibilidade no periodo
                        {
                            $('#ReservaStep' + stepFrom + '-Header').css('background-color', '#ffffbb')
                            $('.header-step').hide();
                            $('.header-step-error').show();
                            //$('#ReservaStep' + stepFrom).unblock();
                            $('#ReservaStep' + stepFrom + '-Erro-Msg').html(data.msg);
                            $('#ReservaStep' + stepFrom + '-Erro').show();
                            $('#ReservaStep' + stepFrom + '-Mapa').show();
                            //goToByScroll('ReservaStep' + stepFrom + '-Erro-Msg');
                            break;
                        }
                }
            }

            $(".fullblock").unblock();

        }
    });


    return false; // if it's a link to prevent post

};




function verificarDisponibilidade(btnClicked, divID, scroll) {
    $('#' + divID + 'Disponivel').hide();
    $('#' + divID + 'Indisponivel').hide();
    $('#' + divID + 'Erro').hide();

    //    // Aguarde
    //    $('#' + divID).fadeOut('slow', function () {
    //        $('#' + divID + 'Aguarde').show();
    //        if (scroll) {
    //            goToByScroll(divID + 'Aguarde');
    //        }
    //    });

    // Get form stepFrom clicked button
    var $form = $(btnClicked).parents('form');

    // Call post ajax request
    $.ajax({
        type: "POST",
        url: $form.attr('action'),
        cache: false,
        data: $form.serialize(),
        contentType: "application/x-www-form-urlencoded",
        //dataType: "json",
        //timeout: 5000,

        error: function (XMLHttpRequest, textStatus, errorThrown) {

            //$('#' + divID + 'Erro').show();
            test = XMLHttpRequest;
            $('#' + divID).show();

        },
        success: function (data, textStatus) {

            test = data;

            if (data.success == true) {
                if (data.aptos > 0) {
                    $('#AptosDisponiveis').html(data.aptos);
                    $('#' + divID + 'Disponivel').show();
                }
                else {
                    $('#' + divID + 'Indisponivel').show();
                }
            }
            else {
                $('#MsgErro').html(data.msg);
                $('#' + divID + 'Erro').show();
            }

            //$('#' + divID + 'Sucesso').show();

        }
    });


    return false; // if it's a link to prevent post

};
