﻿jQuery.fn.valueAndChange = function (val) {
    this.val(val).change();
    return this;
}

$(document).ready(function () {
    /*Tratamiento select*/
    $('select[class!=AutoCompleteSelector]').selectbox();
    //$('.AutoCompleteTree').corner("bottom 7px");

    /*Tratamiento input*/
    var inputSelectors = '.busGen input[type=text], #txtNombreHotel, #txtNombreServicio, .buscadorRes input[type=text], .buscadorFac input[type=text], .buscadorPag input[type=text]';
    $(inputSelectors).wrap('<span class="input-text"><span><span></span></span></span>');

    inputSelectors = '.paginareserva input[type=text], .paginareserva input[type=password], #pie input[type=text], #chooseLocation input[type=text]';
    $(inputSelectors).wrap('<span class="input-text-mini"><span><span></span></span></span>');

    /*Tratamiento textarea*/
    $('textarea').each(function () {
        var width = $(this).outerWidth(true); // width + margin
        var wrapper = $(this).wrap('<div class="input-textarea"></div>').parent().width(width);
        wrapper.corner("7px"); //round box and border
    });

    /*Tratamiento checkbox*/
    //$('.busGen input[type="checkbox"], .paginaCars .booking input[type="checkbox"], .asistente input[type="checkbox"]').ezMark();

    /*Corner*/
    $('.box').corner("7px");

    $(document).click(function (e) {
        var obj = $('#_ctl0_cestaCompra:visible');
        if (obj.length > 0 && $(e.target).attr('id') != 'yourShoppingBasket') {
            var calx1 = obj.offset().left;
            var caly1 = obj.offset().top;
            var calx2 = calx1 * 1 + obj.width();
            var caly2 = caly1 * 1 + obj.height();
            if (e.pageX < calx1 || e.pageX > calx2 || e.pageY < caly1 || e.pageY > caly2) {
                obj.fadeOut();
            }
        }
    });

    $(document).ready(function () {
        //utilizamos .live() xq permite añadir eventHandlers a elementos creados dinamicamente, siempre q contengan el identificador
        $(".ajaxLoad").live("click", function () {
            var $cargando = $("#mainWaiting");
            var $container = $("#centro");
            $cargando.fadeIn();
            $container.fadeOut("fast");
            var url = $(this).attr('href');
            var id = $.getUrlVar(url, "id");
            var url_dest = '/listadoproducto/listadoContenidosHome.aspx?idCon=' + id;
            $.get(url_dest, function (data) {
                $container.html(data).fadeIn("fast");
                $cargando.fadeOut("slow");
            });
            return false;
        });
    });

    $.extend({
        //explotar URL's y conseguir un array tipo elem["variable"] = valor
        getUrlVars: function (url) {
            var vars = [], hash;
            var hashes = url.slice(url.indexOf('?') + 1).split('&');
            for (var i = 0; i < hashes.length; i++) {
                hash = hashes[i].split('=');
                vars.push(hash[0]);
                vars[hash[0]] = hash[1];
            }
            return vars;
        },
        //obtener directamente el valor de una variable
        getUrlVar: function (url, name) {
            return $.getUrlVars(url)[name];
        }
    });
});
