/* Variables requeridas
 * BASE URL = $view->getBaseUrl();
 * UpdateTwitter = $view->linkTo('AjaxRss/updateTwitter')
 * UpdateFaceBook = $view->linkTo('AjaxRss/updateFacebook')
 */
$(document).ready(function(){
    SexyLightbox.initialize();
    $('.btn').button();
    //centerMiniImages();   
    showContentPageProtected();
    centerImagesCatalogs();
    initSelectGruposTags();
    initSelectCatalogos();
    initCustomSearch();
    var idCatalogo=$('#initCatalogStoreId').val();
    initKindViewCatalog(idCatalogo);
    initClickTagsSearch();
    initLinkMoreTags();
    initLinkMoreGroupsAndTags();
    initLinkNavigation();
    fixLongNamesVerticalMenu('menuVertical',40);
    fixLongNamesVerticalMenu('submenuVertical',20);    
    $('#formCitas').validate({
        errorPlacement: function(error, element) {
            //error.appendTo($('#load'));
            $('#load').html(error);
        },
        rules: {
            telefono: {
                minlength: 10
            }
        },
        messages: {
            nombre:{
                required:""
            },
            mail: {
                required:"",
                email:"E-mail inv&aacute;lido"
            },
            telefono:{
                required:"",
                digits:"Ingresa solo n&uacute;meros",
                minlength:"El n&uacute;mero debe ser a 10 d&iacute;gitos"
            },
            comentario:{
                required:""
            }
        }/*,
            debug:true*/
    });
    
    var isThisPageProtected = $('#isThisPageProtected').val();
    if(isThisPageProtected == 0)
        iniCaptify();
    initialize_galleries();
    var edicion = false;   
    inicializa_mapas_validation(edicion);
    //inicializa_mapas(edicion);

    $('.datepicker').each(function(){
        var id = $(this).attr('id');
        if(id != 'citas_datepicker')
        {
            $(this).datepicker({
                dateFormat: 'yy-mm-dd',
                monthNames: ['Enero','Febrero','Marzo','Abril','Mayo','Junio','Julio','Agosto','Septiembre','Octubre','Noviembre','Diciembre'],
                dayNamesMin: ['Do', 'Lu', 'Ma', 'Mi', 'Ju', 'Vi', 'Sa']
            });
        }
        else
        {
            $(this).datepicker({
                dateFormat: 'yy-mm-dd',
                minDate: +0,
                monthNames: ['Enero','Febrero','Marzo','Abril','Mayo','Junio','Julio','Agosto','Septiembre','Octubre','Noviembre','Diciembre'],
                dayNamesMin: ['Do', 'Lu', 'Ma', 'Mi', 'Ju', 'Vi', 'Sa'],
                onSelect:function(fecha)
                {
                    $('#fecha_cita').val(fecha);
                    arrFecha = fecha.split('-');
                    year = arrFecha[0];
                    day = arrFecha[2];
                    month = parseInt(arrFecha[1], 10)-1;
                    $('#calendar').fullCalendar('gotoDate', year , month, day);
                }
            });
        }
    });

    // inicializar calendario
    initCalendar();
       
    $("#form_mensajes").validate({
        rules:{
            phone:{
            minlength:10,
            maxlength:10,
            digits:true, 
            required:true            
            }
        },
        messages: {
            nombre:{
                required:"Por favor escriba su nombre..."
            },
            correo: {
                required:"Por favor escriba su email...",
                email:"El email no es v&aacute;lido..."
            },
            phone:  {
                minlength:"escriba 10 digitos",
                maxlength:"escriba 10 digitos",
                digits:"Ingresa solo n&uacute;meros",
                required:"Por favor escriba su Teléfono..."
            },
            contenido:{
                required:"Por favor escriba su mensaje..."
            }
        },
        errorContainer: "#msgError",
        errorLabelContainer: "#msgError"
    });
//    getGroupTags();
    hideMenuCatalogosVistaElemento();
    initJCarousel();
    initialize_slides();
    init_ajaxForms();
    init_buttons();
    init_Recaptcha();   
});

function hideMenuCatalogosVistaElemento()
{
    var vistaElemento = $('#vistaElemento').val();
    if(vistaElemento == undefined)
        vistaElemento = 0;
    else
        vistaElemento = parseInt(vistaElemento);

//    if(vistaElemento == 1)
//    {
//        $('#botonesCatalogosTienda').hide();
//    }
}

function iniCaptify()
{
    $('img.captify').captify();
}

function muestraForm()
{
    $('#area_citas').show('slow');
    $('#txtAction').html('<a onclick="escondeForm()">Cerrar</a>');
}

function escondeForm()
{
    $('#area_citas').hide();
    $('#txtAction').html('<a onclick="muestraForm()">Solicita aqui tu cita</a>');
}

function solicitud()
{
    if($('#formCitas').valid())
    {
        var date = new Date();        

        var id_sitio = $('#idSitio').val();
        var id_usuario = $('#idUsuario').val();
        var nombre = $('#nombre').val();
        var correo = $('#mail').val();
        var telefono = $('#telefono').val();

        var hora_inicio = $('#hora').val()+':'+$('#min').val();
        var arrHora = $('#duracion').val().split(':');
        var mins = parseFloat($('#min').val()) + parseFloat(arrHora[1]);
        var hrs = parseFloat($('#hora').val()) + parseFloat(arrHora[0]);
        if(mins >= 60)
        {
            var exc = mins - 60;
            hrs += 1;
            if(exc == 0)
                mins = '00';
            else
                mins = exc;
        }
        var hora_fin = hrs+':'+mins;

        var comentario = $('#comentario').val();
        var fecha_cita = $('#fecha_cita').val();
        var mes = date.getMonth()+1;
        if(mes < 10)
            mes = '0'+mes;
        var fecha = date.getFullYear()+'-'+mes+'-'+date.getDate()+' '+date.getHours()+':'+date.getMinutes();

        permitido = true;        
        if(fecha_cita == date.getFullYear()+'-'+mes+'-'+date.getDate())
            if($('#hora').val() < date.getHours())
                permitido = false;
        
        if(permitido)
        {
            loading('<span style="font-size:12px;">Realizando solicitud</span>');
            $.post(linkDisponible,{
                id_sitio:id_sitio,
                hora_inicio:hora_inicio,
                hora_fin:hora_fin,
                fecha_cita:fecha_cita
            },function(data){
                if(data == 0)
                    insertaCita();
                else
                {
                    alert('Horario ocupado');
                    endLoading();
                }
            });
        }
        else
            alert('Por favor revisa la hora de tu solicitud.');
    }
}

function insertaCita()
{
    var date = new Date();
    var id_sitio = $('#idSitio').val();
    var id_usuario = $('#idUsuario').val();
    var nombre = $('#nombre').val();
    var correo = $('#mail').val();
    var telefono = $('#telefono').val();

    var hora_inicio = $('#hora').val()+':'+$('#min').val();
   
    var arrHora = $('#duracion').val().split(':');
    var mins = parseFloat($('#min').val()) + parseFloat(arrHora[1]);
    var hrs = parseFloat($('#hora').val()) + parseFloat(arrHora[0]);
    if(mins >= 60)
    {
        var exc = mins - 60;
        hrs += 1;
        if(exc == 0)
            mins = '00';
        else
            mins = exc;
    }
    var hora_fin = hrs+':'+mins;

    var comentario = $('#comentario').val();
    var fecha_cita = $('#fecha_cita').val();
    var fecha = date.getFullYear()+'-'+(date.getMonth()+1)+'-'+date.getDate()+' '+date.getHours()+':'+date.getMinutes();
    var mail_destino = $('#mail_destino') .val();
    var recaptcha_challenge_field = $('#recaptcha_challenge_field').val();
    var recaptcha_response_field = $('#recaptcha_response_field').val();

    //  Verificando que el horario escogido no interfiera con citas previas
    loading('');
    $.post(linkDisponible,
    {
        id_sitio:id_sitio,
        hora_inicio:hora_inicio,
        hora_fin:hora_fin,
        fecha_cita:fecha_cita
    },function(data)
    {
        if(data == 0)
        {
            $.post(linkInsertaCita,
            {
                recaptcha_challenge_field:recaptcha_challenge_field,
                recaptcha_response_field:recaptcha_response_field,
                mail_destino:mail_destino,
                id_sitio:id_sitio,
                id_usuario:id_usuario,
                nombre:nombre,
                correo:correo,
                telefono:telefono,
                hora_inicio:hora_inicio,
                hora_fin:hora_fin,
                comentario:comentario,
                fecha_creacion:fecha,
                fecha_cita:fecha_cita
            },
            function(data)
            {
                if(data == 1)
                {
                    //endLoading();
                    $('#load').html('<div class="cita_success">Tu solicitud ha sido registrada.</div></hr>');
                    $('#recaptcha_response_field').val('');
                    escondeForm();
                }
                if(data == 2)
                {
                    //endLoading();
                    $('#load').html('<div class="cita_error">Se ha introducido las palabras incorrectamente, intenta de nuevo.</div>');
                }
                if(data == 0)
                {
                    //endLoading();
                    $('#load').html('<div class="cita_error">Se ha producido un error al generar la cita, por favor intenta mas tarde.</div>');
                }
            });
        }
        else
        {
            alert('Horario ocupado');
            endLoading();
        }
    });
}

function refreshTwitter(name)
{    
    $('#'+name+'twOverFlow').html('<div style="text-align:center"><img src="'+baseUrl+'/images/silver-blue/images/loading.gif" style="margin-top:10em;"/></div>');
    $.post(UpdateTwitter,{
        name:name,
        width:width
    },function(data){
        $('.rss_'+name).each(function(){
            $(this).html(data);
        });
    });
}

function refreshFacebook(id)
{
    $('#'+id+'twOverFlow').html('<div style="text-align:center"><img src="'+baseUrl+'/images/silver-blue/images/loading.gif" style="margin-top:10em;"/></div>');
    $.post(UpdateFaceBook,{
        id:id,
        width:width
    },function(data){
        $('#rss_'+id).html(data);
    });

}

function gallery()
{
//    ancho = width.split('p');
    var ancho = $('#photos').width();
    //'colorFondo':fondoElement
    var fondoElement=$('#fondoElement').val();
//    alert(ancho);
    $('.galleryview').galleryView({
        panel_width: ancho,
        panel_height: 300,
        frame_width: 100,
        frame_height: 100,
        overlay_height: 40,
        overlay_position: 'bottom',
        overlay_opacity: 0.4,
        overlay_color: fondoElement,
        nav_theme: 'light',
        background_color:fondoElement
    });
    $('.panel').each(function(){
        $(this).css('background', fondoElement);
    });
}

function initCalendar()
{
    var date = new Date();
    var options = {
        aspectRatio: 1,
        defaultEventMinutes:60,
        slotMinutes : 15,
        columnFormat:{
            month: 'ddd',    // Mon
            week: 'ddd d', // Mon 9/7
            day: 'd MMMM '  // Monday 9/7
        },
        /*loading: function(bool) {
            if (bool) $('#loading').show();
            else $('#loading').hide();
        },*/
        // eventsources requiere la url de donde llega el archivo json
        eventSources:[$('#linkGetCalendar').attr('value')],/// pruebaGetPost
        theme:true,
        defaultView :'agendaDay',
        //inicializa fecha de vista
        year:date.getFullYear(),
        month:date.getMonth(),
        date:date.getDate(),
        monthNames:['Enero', 'Febrero', 'Marzo', 'Abril', 'Mayo', 'Junio', 'Julio', 'Agosto', 'Septiembre', 'Octubre', 'Noviembre', 'Diciembre'],
        monthNamesShort:['Enero', 'Febrero', 'Marzo', 'Abril', 'Mayo', 'Junio','Julio', 'Agosto', 'Septiembre', 'Octubre', 'Noviembre', 'Diciembre'],

        dayNames:['Domingo', 'Lunes', 'Martes', 'Miercoles','Jueves', 'Viernes', 'Sabado'],
        dayNamesShort:['Dom', 'Lun', 'Mar', 'Mier', 'Jue', 'Vier', 'Sab'],
        buttonText:{
            today:    'Hoy',
            month:    'Mes',
            week:     'Semana',
            day:      'Día'
        },
        header: {
            left: 'prev,next today',
            center: 'title',
            right: 'month,agendaWeek,agendaDay'
        },
        editable: true,
        titleFormat:{
            month: 'MMMM yyyy',                             // September 2009
            week: "MMM d[ yyyy]{ '&#8212;'[ MMM] d ' de' yyyy}", // Sep 7 - 13 2009
            day: "dddd d 'de' MMM 'de' yyyy"
        },
        allDayText:'',
        minTime:$('#hora_inicio').val(),
        maxTime:$('#hora_final').val()
    }

    $('#calendar').fullCalendar(options);
}

function loading(texto)
{
    $('#load').html('<img src="'+baseUrl+'/images/ui/loading.gif" /><br/><span style="font-size:12px;">'+texto+'</span>');
}

function endLoading()
{
    $('#load').html('');
}

function mensajes()
{
    if($('#form_mensajes').valid())
    {
        var nom_fix = $('#nomFix').val();
        var id_usuario = $('#idUsuario').val();
        var id_form = $('#idForm').val();
        var nombre = $('#nombre').val();
        var correo = $('#correo').val();
        var phone = $('#phone').val();
        var contenido = $('#contenido').val();

        loading('<b>Enviando ...</b>');
        var recaptcha_challenge_field = $('#recaptcha_challenge_field').val();
        var recaptcha_response_field = $('#recaptcha_response_field').val();

        $.post(linkMensajesCaptcha,{
            recaptcha_challenge_field:recaptcha_challenge_field,
            recaptcha_response_field:recaptcha_response_field
        },function(respuesta){
           
            if(respuesta == 1)
                $.post(linkMensajes,{
                    id_usuario:id_usuario,
                    nom_fix:nom_fix,
                    id_form:id_form,
                    nombre:nombre,
                    correo:correo,
                    phone:phone,
                    contenido:contenido
                },function(data){
                    $('#area_mensajes').html(data);
                });
            else
                $('#load').html('<div class="error"><label class="error">Revisa las palabras de seguridad</label></div>');
        });
    }
}

/*
 * Inicializa el select para ejecutar consultas del grupo de tags seleccionados
 * Desplegara los productos correspondientes a los tags asociados al producto
 */
function initSelectGruposTags()
{
    var  url, idSitio,idGrupo;
    url = $('#urlGetProductsByTagGroup').val();
    idSitio = $('#idSitioTienda').val();
    
    $('#selectTagGroups').change(function(){
        $('#selectCatalogos').val('');//strSearchProduct
        $('#strSearchProduct').val('');
        idGrupo = $(this).val();
        if(idGrupo != '')
        {
            $.post(url,{
                'idSitio':idSitio,
                'idGrupo':idGrupo
            },function(data){
                $('#productsStoreData').html(data);
                $('.btn').button();
            });
            
        }
    });
}

function initClickTagsSearch()
{
    $('.selectBoxTags').live('change',function()
    {
        var idTag,url;
        idTag = $(this).val();

        arrTag = idTag.split('-');
        var nGroup = arrTag[2];
        idTag = arrTag[1];

        var tag = arrTag[3];        
        var initCatalogStoreId = $('#initCatalogStoreId').val();
        var idSitioTienda = $('#idSitioTienda').val();
  
        if(idTag != undefined && idTag !='')
        {
            $('#tagsNameSelected').val($('#tagsNameSelected').val()+'***'+tag);
            $('#nameGroupsSelected').val($('#nameGroupsSelected').val()+'***'+nGroup);
            
            setBreadCrums();
            url = $('#urlGetProductsByTagsAndCatalogId').val();
            $.post(url,{
                'tagsNameSelected':$('#tagsNameSelected').val(),
                'initCatalogStoreId':initCatalogStoreId,
                'idSitio':idSitioTienda,
                'edicion':0
            },function(data){
                $('#productsStoreData').html(data);
                $('.btn').button();

                var nameGroupsSelected = $('#nameGroupsSelected').val();
                var tagsNameSelected = $('#tagsNameSelected').val();

                getGroupsAndTagsToShowByCatalog(nameGroupsSelected, tagsNameSelected, initCatalogStoreId);
                setBreadCrums();
                //getGroupTags();
            //                add_to_cart();
            //                initKindViewCatalog(idCatalogo);
            });
        }
    });
    
}

function initLinkMoreTags()
{
    $('.linkMoreTags').click(function()
    {
        var idGrupoTags,url;
        idGrupoTags = $(this).attr('id');
        idGrupoTags = idGrupoTags.split('-');
        idGrupoTags = idGrupoTags[1];

        if(idGrupoTags != undefined && idGrupoTags !='')
        {
            url = $('#urlShowTagsGroup').val();
            $.post(url,{
                'idGrupoTags':idGrupoTags,
                'tagsNameSelected':$('#tagsNameSelected').val(),
                'idCatalogo':$('#initCatalogStoreId').val(),
                'idSitio':$('#idSitioTienda').val(),
                'edicion':0
            },function(data){
                $('#divLinkMoreTags').html(data);
                $('#divLinkMoreTags').dialog({
                    zIndex : 100000,
                    resizable:false
                });
            //                add_to_cart();
            //                initKindViewCatalog(idCatalogo);
            });
        }
    });
}

/*
 * Inicializa el select para ejecutar consultas de catalogo seleccionado 
 */
function initSelectCatalogos()
{
    var  url, idSitio,idCatalogo,tipoVista,text;
    url = $('#urlGetProductsCatalog').val();
    idSitio = $('#idSitioTienda').val();
    tipoVista = $('#tipoVistaCatalogo').val();    
    $('.catalogoSidebar').click(function(){
        
        var vistaPreview = $('#tipoPreview').val();
        if(vistaPreview == undefined)
        {
            vistaPreview = 0;
        }
        else
        {
            vistaPreview = 1;
        }

        //        $(this).addClass('ui-state-active');
        $('#selectTagGroups').val('');//strSearchProduct
        $('#strSearchProduct').val('');
        idCatalogo = $(this).attr('id');
        idCatalogo = idCatalogo.split('-');
        idCatalogo = idCatalogo[1];
        //        alert(idCatalogo);
        if(idCatalogo != '')
        {
            $.post(url,{
                'idSitio':idSitio,
                'idCatalogo':idCatalogo,
                'tipoVista':tipoVista,
                'esPreview':vistaPreview
            },function(data){
                $('#productsStoreData').html(data);
                $('.btn').button();
                initKindViewCatalog(idCatalogo);
                $('#nameGroupsSelected').val('');
                $('#tagsNameSelected').val('');
                $('#initCatalogStoreId').val(idCatalogo);
                getGroupsAndTagsToShowByCatalog('', '', idCatalogo);
                setBreadCrums();
                //getGroupTags();
            });
        }
        text = $(this).children('span').text();
        refreshLinkNavigation(text,idCatalogo);
    });
}

function refreshLinkNavigation(text,idCatalogo)
{
    //catalogoSidebar

    $('.navCat').html(text);
    $('.navCat').attr('id','cat-'+idCatalogo);
}

function initLinkNavigation()
{
    var  url, idSitio,idCatalogo,tipoVista;
    url = $('#urlGetProductsCatalog').val();
    idSitio = $('#idSitioTienda').val();
    tipoVista = $('#tipoVistaCatalogo').val();
    
    $('.navCat').click(function(){
        url = $('#urlGetProductsCatalog').val();        
        idSitio = $('#idSitioTienda').val();
        tipoVista = $('#tipoVistaCatalogo').val();
        
        //        $(this).addClass('ui-state-active');
        
        idCatalogo = $(this).attr('id');
        idCatalogo = idCatalogo.split('-');
        idCatalogo = idCatalogo[1];
        //        alert(idCatalogo);
        if(idCatalogo != '')
        {
            $.post(url,{
                'idSitio':idSitio,
                'idCatalogo':idCatalogo,
                'tipoVista':tipoVista
            },function(data){
                $('#productsStoreData').html(data);
                $('.btn').button();
                initKindViewCatalog(idCatalogo);
                //getGroupTags();
            });
        }
       
    });
}

/**
* trae los grupos de tags relacionados con el producto o productos q actualmente se estan viendo
*
*/
function getGroupTags()
{
    var strProducId = '';
    var id,url;
    $('.key').each(function(){
        id = $(this).attr('id');
        id = id.split('-');
        id = id[1];
        if(strProducId.length > 0)
        {
            strProducId +=',';
        }
        strProducId +=id;
    });
    if(strProducId.length > 0)
    {
        url = $('#urlGetGroupTagsCustom').val();
        $.post(url,{
            'strProducId':strProducId
        },function(data){
            $('#tagsGroupsData').html(data);
            initLinkMoreTags();
        });
    //alert(strProducId);

    }
}

function getGroupsAndTagsToShowByCatalog(groupsSelected, tagsNameSelected, idCatalog)
{
    var url = $('#urlGetGroupsAndTagsByCatalog').val();
    var tagsIni=$('#tagsInitSelected').val();
    if($('#numProductos').val()<=1)
            $('#tagsGroupsData').hide();
    var idSitio = $('#idSitioTienda').val();
    $.post(url,
    {
        'groupsName':groupsSelected,
        'catIdSelected':idCatalog,
        'tagsNameSelected':tagsNameSelected,
        'siteId':idSitio,
        'tagsIni':tagsIni,
        'showMoreGroupTags':0,
        'showAllTags':0
    },function(data)
    {
        if($('#numProductos').val()<=1)
            $('#tagsGroupsData').hide();
        else
            $('#tagsGroupsData').show();
        $('#tagsGroupsData').html(data);
        initLinkMoreGroupsAndTags();
        initLinkMoreTags();
        $('#divMoreGroupTags').dialog("close");
        $('#divLinkMoreTags').dialog("close");
    });
}


/*
 * Ejecuta una busqueda tipo Like por tags de los productos existentes en la tienda
 */
function initCustomSearch()
{
    //inicializacion del click boton buscar
    $('#btnStrSearchProduct').click(function(){
        $('#selectTagGroups').val('');//strSearchProduct
        $('#selectCatalogos').val('');
        var url,strSearch,idSitio;
        idSitio = $('#idSitioTienda').val();
        strSearch = $('#strSearchProduct').val();
        url = $('#urlCustomSearch').val();
        
        $.post(url,{
            'idSitio':idSitio,
            'strSearch':strSearch
        },function(data){
            $('#productsStoreData').html(data);
            $('.btn').button();

            $('#nameGroupsSelected').val('');
            $('#tagsNameSelected').val('');
            getGroupsAndTagsToShowByCatalog('', '', $('#initCatalogStoreId').val());
            setBreadCrums();
            //getGroupTags();
        });
    });

    initAutocompleteCustomSearch();
//inicializacion del autocomplete
    
}

function initAutocompleteCustomSearch()
{
    var url;
    url = $('#urlTagsAutoComplete').val();
    var idSitioTienda = $('#idSitioTienda').val();
    $( "#strSearchProduct" ).autocomplete({
        source: function(request,response){
            var inputStr,index;
            inputStr = request.term;
            index = inputStr.lastIndexOf(',');
            if(index >= 0)
            {
                inputStr = inputStr.substring(index+1);
            }
            $.post(url,{
                'term':inputStr,
                'idSitio':idSitioTienda
            },function(data){
                response(data);
                $('.btn').button();
            },'json');
        },
        minLength: 2,
        select: function( event, ui ) {
            var oldStr,idx;
            oldStr = $('#strSearchProduct').val();
            idx = oldStr.lastIndexOf(',');
            if(idx >= 0)
            {
                oldStr = oldStr.substring(0,idx) + ',';
            }
            else{
                oldStr = '';
            }
            ui.item.value = oldStr + ui.item.value;
        },
        focus: function(event, ui) {
            return false;

        }

    });

}


function itemSelectedFromCatalog(nomFixProduct, idProduct, urlBase)
{
    //var dir = urlBase+$('#nomFixPage').val()+'/Element/'+idElement+'/'+idProduct+'/'+nomFixProduct;
    var dir = urlBase+idProduct+'/'+nomFixProduct;
    location.href = dir;
}

//function itemSelectedFromCatalog(nomFixProduct, idElement, idProduct, urlBase)
//{
//    var dir = urlBase+'/tienda/Element/'+idElement+'/'+idProduct+'/'+nomFixProduct;
//    location.href = dir;
//}

function changeImgBigRoom(tagIdImg, tagIdImgPrincipal,idProd)
{
    var adjustX = $('#adjustX').val();
    var adjustY = $('#adjustY').val();
        
//  Leyendo de la imagen chica para ponerla en el lugar de la grande
    var rutaImagenGrande = $('#'+tagIdImg+'_bigImage');    
        rutaImagenGrande = rutaImagenGrande.html();        
    var rutaImagenChica = $('#'+tagIdImg+'_smallImage');
        rutaImagenChica = rutaImagenChica.html(); 
    var options = $('#'+tagIdImg+'_options');
        options = options.html();
        //ésta linea se añade debido a que ie8 no acepta trim como funcion
        if(typeof String.prototype.trim !== 'function') 
        {
            String.prototype.trim = function()
            {            
                return this.replace(/^\s+|\s+$/g, ''); 
            }
        }
        options = options.trim(options);
    var arrayOptions = options.split(' ');
    
    var stringImageZoom  = '<a rel="position: \'inside\' , showTitle: false, adjustX:'+adjustX+', adjustY:'+adjustY+'" class="cloud-zoom" href="'+rutaImagenGrande+'" style="position: relative; display: auto; max-width: 400px !important; max-height:400px;">';
//        stringImageZoom +=  '<img alt="" title="" src="'+rutaImagenGrande+'" style="max-height: auto; max-width: 400px;"/>';
        stringImageZoom +=  '<img alt="" title="" src="'+arrayOptions[0]+'/FixImages/roomViewImage/'+arrayOptions[2]+'/'+arrayOptions[1]+'/'+arrayOptions[3]+'" style="max-height: auto; max-width: 400px;"/>';
        stringImageZoom += '</a>';
        stringImageZoom += '<span id="'+tagIdImgPrincipal+'_bigImage" style="display: none;">';
        stringImageZoom +=      rutaImagenGrande;
        stringImageZoom += '</span>';
        stringImageZoom += '<span id="'+tagIdImgPrincipal+'_smallImage" style="display: none;">';
        stringImageZoom +=      rutaImagenChica;
        stringImageZoom += '</span>';
        stringImageZoom += '<span id="'+tagIdImgPrincipal+'_options" style="display: none;">';
        stringImageZoom +=      options;
        stringImageZoom += '</span>';

    //  Imagen secundaria
    var rutaImagenGrande2 = $('#'+tagIdImgPrincipal+'_bigImage');
        rutaImagenGrande2 = rutaImagenGrande2.html();
    var rutaImagenChica2 = $('#'+tagIdImgPrincipal+'_smallImage');
        rutaImagenChica2 = rutaImagenChica2.html(); 
    var options2 = $('#'+tagIdImgPrincipal+'_options');
        options2 = options2.html();
        options2 = options2.trim(options2);
       //alert(options2);
    var arrayOptions2 = options2.split(' ');
    var stringImageZoom2  = '<center><img alt="*" src="'+arrayOptions2[0]+'/FixImages/imagesGalleryCatalogOfRoom/0/'+arrayOptions2[1]+'/'+arrayOptions2[2]+'/'+arrayOptions2[3]+'" width="80px" height="80px" /></center>';
        stringImageZoom2 += '<span id="'+tagIdImg+'_bigImage" style="display: none;">';
        stringImageZoom2 +=     rutaImagenGrande2;
        stringImageZoom2 += '</span>';
        stringImageZoom2 += '<span id="'+tagIdImg+'_smallImage" style="display: none;">';
        stringImageZoom2 +=     rutaImagenChica2;
        stringImageZoom2 += '</span>';
        stringImageZoom2 += '<span id="'+tagIdImg+'_options" style="display: none;">';
        stringImageZoom2 +=     options2;
        stringImageZoom2 += '</span>';

    var a = rutaImagenGrande.trim(rutaImagenGrande);
    $('#'+tagIdImgPrincipal+'_lightBox').html('&nbsp; <a class="view-product-img-sf" href="'+a+'" rel="sexylightbox" ><img alt="bigImg" style="max-width: 116px; max-height: 20px; display:block;" src="'+baseUrl+'/images/ui/btn_ampliarImagen.png" /></a>');

    $('#'+tagIdImg).html('');
    $('#'+tagIdImgPrincipal).html('');

    $('#'+tagIdImg).html(stringImageZoom2);
    $('#'+tagIdImgPrincipal).html(stringImageZoom);

    SexyLightbox.refresh();
    
}


/**
 * Cambia el contenido HTML entre 2 elementos
 * en este caso se trata unicamente de imagenes
 */
function changeImg(tagIdImg, tagIdImgPrincipal,idProd)
{
    var adjustX = $('#adjustX').val();
    var adjustY = $('#adjustY').val();

//  Leyendo de la imagen chica para ponerla en la grande
    var rutaImagenGrande = $('#'+tagIdImg+'_bigImage');    
        rutaImagenGrande = rutaImagenGrande.html();        
    var rutaImagenChica = $('#'+tagIdImg+'_smallImage');
        rutaImagenChica = rutaImagenChica.html();        
    var options = $('#'+tagIdImg+'_options');
        options = options.html();
        //ésta linea se añade debido a que ie8 no acepta trim como funcion
        if(typeof String.prototype.trim !== 'function') 
        {
            String.prototype.trim = function()
            {            
                return this.replace(/^\s+|\s+$/g, ''); 
            }
        }
        options = options.trim(options);
    var arrayOptions = options.split(' ');
    
    var stringImageZoom  = '<a rel="position: \'inside\' , showTitle: false, adjustX:'+adjustX+', adjustY:'+adjustY+'" class="cloud-zoom" href="'+rutaImagenGrande+'" style="position: relative; display: auto; max-width: 400px !important; max-height:400px;">';
//        stringImageZoom +=  '<img alt="" title="" src="'+rutaImagenGrande+'" style="max-height: auto; max-width: 400px;"/>';
        stringImageZoom +=  '<img alt="" title="" src="'+arrayOptions[0]+'/FixImages/productViewImage/'+arrayOptions[2]+'/'+arrayOptions[1]+'/'+arrayOptions[3]+'" style="max-height: auto; max-width: 400px;"/>';
        stringImageZoom += '</a>';
        stringImageZoom += '<span id="'+tagIdImgPrincipal+'_bigImage" style="display: none;">';
        stringImageZoom +=      rutaImagenGrande;
        stringImageZoom += '</span>';
        stringImageZoom += '<span id="'+tagIdImgPrincipal+'_smallImage" style="display: none;">';
        stringImageZoom +=      rutaImagenChica;
        stringImageZoom += '</span>';
        stringImageZoom += '<span id="'+tagIdImgPrincipal+'_options" style="display: none;">';
        stringImageZoom +=      options;
        stringImageZoom += '</span>';

    //  Imagen secundaria
    var rutaImagenGrande2 = $('#'+tagIdImgPrincipal+'_bigImage');
        rutaImagenGrande2 = rutaImagenGrande2.html();
    var rutaImagenChica2 = $('#'+tagIdImgPrincipal+'_smallImage');
        rutaImagenChica2 = rutaImagenChica2.html();
    var options2 = $('#'+tagIdImgPrincipal+'_options');
        options2 = options2.html();
        options2 = options2.trim(options2);
    var arrayOptions2 = options2.split(' ');
    var stringImageZoom2  = '<center><img alt="*" src="'+arrayOptions2[0]+'/FixImages/imagesGalleryCatalog/0/'+arrayOptions2[1]+'/'+arrayOptions2[2]+'/'+arrayOptions2[3]+'" width="80px" height="80px" /></center>';
        stringImageZoom2 += '<span id="'+tagIdImg+'_bigImage" style="display: none;">';
        stringImageZoom2 +=     rutaImagenGrande2;
        stringImageZoom2 += '</span>';
        stringImageZoom2 += '<span id="'+tagIdImg+'_smallImage" style="display: none;">';
        stringImageZoom2 +=     rutaImagenChica2;
        stringImageZoom2 += '</span>';
        stringImageZoom2 += '<span id="'+tagIdImg+'_options" style="display: none;">';
        stringImageZoom2 +=     options2;
        stringImageZoom2 += '</span>';

    var a = rutaImagenGrande.trim(rutaImagenGrande);
    $('#'+tagIdImgPrincipal+'_lightBox').html('&nbsp; <a class="view-product-img-sf" href="'+a+'" rel="sexylightbox" ><img alt="bigImg" style="max-width: 116px; max-height: 20px; display:block;" src="'+baseUrl+'/images/ui/btn_ampliarImagen.png" /></a>');

    $('#'+tagIdImg).html('');
    $('#'+tagIdImgPrincipal).html('');

    $('#'+tagIdImg).html(stringImageZoom2);
    $('#'+tagIdImgPrincipal).html(stringImageZoom);

    SexyLightbox.refresh();
}


function centerImagesCatalogs()
{
    var div;
    var imagen;
    var margen = 0;
    var HeightImg = 0;
    var HeightTotal = 112;
    var tamsEstilo = 10 + 2;

    $('.imagenCatalogo').each(function()
    {
        div =  jQuery(this);
        imagen = div.children();

        HeightTotal = getHeightFrom(div);
        HeightImg = getHeightFrom(imagen);

        margen = parseInt(HeightImg) + parseInt(tamsEstilo);
        margen = parseInt(HeightTotal) - parseInt(margen);
        margen = parseInt(margen / 2);

        imagen.css({
//            marginTop : margen
        });
    });
}


function centerMiniImages()
{
    var div;
    var imagen;
    var heightDiv;
    var heightImg;
    var margen;

    $('.minimg').each(function()
    {
        div = $(this);
        imagen = $(this).children('img');
        
        heightDiv = div.css('height');
        heightDiv = heightDiv.substr(0, heightDiv.length-2);

        heightImg = imagen.css('height');
        heightImg = heightImg.substr(0, heightImg.length-2);

        margen = parseInt(heightDiv) - parseInt(heightImg);
        margen = margen - 4;
        margen = parseInt(margen / 2);
        margen = margen+'px';
        imagen.css({'marginTop' : margen});
    });
}


function getWidthFrom(objeto)
{
    var Width = 0;
    var Object2;

    Width = objeto.css("width");
    Width = Width.substr(0, Width.length-2);        //Quitando los valores de px

    if(Width <= 0 || Width == 'au')                 //En caso de que sea ceros o haya sido "auto""
    {
        Object2 = objeto.children();            //Pudo haber sido que es un nodo vacio u otro tag intermedio

        Width = Object2.css("width");
        if(Width == undefined)
        {
            Width = 100;
        }
        else
        {
            Width = Width.substr(0, Width.length-2);

            if(Width <= 0 || Width == 'au')                 //En caso de que sea ceros o haya sido "auto""
            {
                Width = 100;
            }
        }
    }

    return Width;
}


function getHeightFrom(objeto)
{
    var Height = 0;
    var Object2;

    Height = objeto.css("height");
    Height = Height.substr(0, Height.length-2);        //Quitando los valores de px

    if(Height <= 0 || Height == 'au')                 //En caso de que sea ceros o haya sido "auto""
    {
        Object2 = objeto.children();

        Height = Object2.css("height");
        if(Height == undefined)
        {
            Height = 100;
        }
        else
        {
            Height = Height.substr(0, Height.length-2);

            if(Height <= 0 || Height == 'au')                 //En caso de que sea ceros o haya sido "auto""
            {
                Height = 100;
            }
        }
    }

    return Height;
}


function centerOnlyAMiniImages(divId)
{
    var img;
    var HeightImg = 0;
    var WidthImg = 0;
    var HeightTotal = 0;
    var WidthTotal = 0;
    var difX = 0;
    var difY = 0;
    var tamsEstilo = 10 + 2;

    img = $('#'+divId+' img');
    WidthTotal = getWidthFrom($('#'+divId));
    HeightTotal = getHeightFrom($('#'+divId));

    WidthImg = getWidthFrom(img);
    HeightImg = getHeightFrom(img);

    difX = parseInt((parseInt(WidthTotal) - parseInt(WidthImg)) / 2);
    difX = parseInt(parseInt(difX) - parseInt(tamsEstilo/2));

    difY = parseInt((parseInt(HeightTotal) - parseInt(HeightImg)) / 2);
    difY = parseInt(parseInt(difY) - parseInt(tamsEstilo/2));

    if(difX < 0 || difY < 0)
    {
        img.css({
            left: difX
        });
        img.css({
            top: difY
        });
        img.css({
            position: 'relative'
        });
    }
    else
    {
        img.css({
            position: ''
        });
    }
}

function getProporcion(WidthTD, HeightTD, WidthImg, HeightImg)
{
    var proporcion = 0;
    //Si la imagen cabe en el TD
    if( (WidthImg <= WidthTD) && (HeightImg <= HeightTD) )
    {
        //Las medidas que debe de tomar serian
        //WidthImg, HeightImg
        proporcion = 1;
    }
    else
    {
        var  proporcionX = (WidthImg / WidthTD);
        var  proporcionY = (HeightImg / HeightTD);

        if(proporcionX > proporcionY)
        {
            proporcion = proporcionX;
        }
        else
        {
            proporcion = proporcionY;
        }
    }

    return proporcion;
}

function fitSizeToTD(size, proporcion)
{
    size  = parseInt(size / proporcion);
    return size;
}

/**
 * Si el usuario configura una vista inicial de catalogos, inicializa el link
 * para cambiar el tipo de vista de catalogo
 */
function initKindViewCatalog(idCatalogo)
{

    var url, tipoVista;
    url = $('#urlChangeKindViewCatalog').val();
    tipoVista = $('#tipoVistaCatalogo').val();

    $('#linkKindCatalog').click(function(){

        var vistaPreview = $('#tipoPreview').val();
        if(vistaPreview == undefined)
        {
            vistaPreview = 0;
        }
        else
        {
            vistaPreview = 1;
        }

        $.post(url, {
            'tipoVistaActual':tipoVista,
            'idCatalogo':idCatalogo,
            'edicion':0,
            'preview':vistaPreview
        }, function(data){
            $('#productsStoreData').html(data);
            $('.btn').button();
            initKindViewCatalog(idCatalogo);
            initJCarousel();
            getGroupsAndTagsToShowByCatalog($('#nameGroupsSelected').val(), $('#tagsNameSelected').val(), idCatalogo);
            setBreadCrums();
            //getGroupTags();
        });
    });
    
}

function changePagCatalog(Url, IdElemento, PagShow, IdSitio, TipoVista, IdCatalogo, EditMode, previewMode,DesdeTienda)
{
    $.post( Url,
    {
        'idElemento':IdElemento,
        'pagShow':PagShow,
        'idSitio':IdSitio,
        'tipoVista':TipoVista,
        'idCatalogo':IdCatalogo,
        'editMode':EditMode,
        'previewMode':previewMode,
        'desdeTienda':parseInt(DesdeTienda)
    },
    function(data)
    {
        $('#bloqueCatalogo_'+IdElemento).html(data);
        $('.btn').button();
    });
}


/**
 *  Acorta el nombre de la pagina en el menu vertical para que no se empalme
 *  con la siguiente accion
 */
function fixLongNamesVerticalMenu(className,totalLength)
{
//    var tmp;
//    var trimmed = false;
//    var arrayliTag;
//    var ajuste = false;
//
//    $('.'+className).each(function()
//    {
//        arrayliTag = $(this).children('li');
//        arrayliTag.each(function()
//        {
//            ajuste = false;
//            trimmed = $(this).children();
//            while (trimmed.height() > totalLength)
//            {
//                ajuste = true;
//                tmp = trimmed.text();
//                tmp = tmp.substring(0, tmp.length-1);
//                trimmed.text(tmp);
//            }
//
//            trimmed.css('height',totalLength+'px');
//            if(ajuste == true)
//            {
//                trimmed.text(trimmed.text()+"...");
//            }
//        });
//    });
}
function gallery2()
{
  // $('.noscript').css('style','display:none;' );
    $('div.navigation').css({'width' : '90px', 'float' : 'left'});
    $('div.content').css('display', 'block');
        // Initially set opacity on thumbs and add
        // additional styling for hover effect on thumbs     
        var idIndex = $(this).attr('id');
        idIndex = idIndex.split('_');
        idIndex = idIndex[1];

        /* Se resto el ancho de los thumbs*/
        var maxWidth = parseInt($('.galleriffic_page_'+idIndex).css('width'))-90;

var onMouseOutOpacity = 0.67;
        $('#thumbs_'+idIndex+' ul.thumbs li').opacityrollover({
                mouseOutOpacity:   onMouseOutOpacity,
                mouseOverOpacity:  1.0,
                fadeSpeed:         'fast',
                exemptionSelector: '.selected'
        });

        // Initialize Advanced Galleriffic Gallery
        var gallery = $('#thumbs_'+idIndex).galleriffic({
                delay:                     2500,
                numThumbs:                 4,
                preloadAhead:              10,
                enableTopPager:            true,
                enableBottomPager:         false,
                maxPagesToShow:            1,
                imageContainerSel:         '#slideshow_'+idIndex,
                controlsContainerSel:      '#controls_'+idIndex,
                captionContainerSel:       '#caption_'+idIndex,
                loadingContainerSel:       '#loading_'+idIndex,
                renderSSControls:          true,
                renderNavControls:         true,
                enableKeyboardNavigation:  false,
                playLinkText:              'Reproducir',
                pauseLinkText:             'Pausar',
                prevLinkText:              '&lsaquo; Anterior',
                nextLinkText:              'Siguiente &rsaquo; &nbsp;',
                nextPageLinkText:          '&rsaquo;',
                prevPageLinkText:          '&lsaquo;',
                enableHistory:             false,
                autoStart:                 true,
                syncTransitions:           true,
                defaultTransitionDuration: 900,
                onSlideChange:             function(prevIndex, nextIndex) {
                        // 'this' refers to the gallery, which is an extension of $('#thumbs')
                        this.find('ul.thumbs').children()
                               .eq(prevIndex).fadeTo('fast', onMouseOutOpacity).end()
                               .eq(nextIndex).fadeTo('fast', 1.0);
                },
                onPageTransitionOut:       function(callback) {
                        this.fadeTo('fast', 0.0, callback);
                },
                onPageTransitionIn:        function() {
                        this.fadeTo('fast', 1.0);
                }
        })

        gallery.find('a.prev').click(function(e) {
					gallery.previousPage();
					e.preventDefault();
				});

				gallery.find('a.next').click(function(e) {
					gallery.nextPage();
					e.preventDefault();
				});
    var color=$('#fondoElement_'+idIndex).val();
        //$('div.galleryTwo').css('background-color',color);
    $('#gallery_'+idIndex).css({'background-color':color,'width':maxWidth+'px'});
    $('#caption_'+idIndex).css({'width':maxWidth+'px'});
}

function gallery1()
{
     $('div.content_g1').css({'display':'block'});

    var idIndex = $(this).attr('id');
    idIndex = idIndex.split('_');
    idIndex = idIndex[1];
    var totalImages = $('#numImagesGallery_'+idIndex).val();
    var widthGallery = parseInt($('#gallery_'+idIndex).css('width'));
    var numThumbs = parseInt((widthGallery/86));

    numThumbs = totalImages>numThumbs?numThumbs:totalImages;


    var widthThumbs = (numThumbs * 86)+50; //Se le suma el ancho de las 2 imagenes de desplazamiento

    if(widthThumbs > widthGallery) // si se es mayor que el contenedor se resta un thumb
    {
        widthThumbs-= 86;
        numThumbs-=1;
    }

        // Initially set opacity on thumbs and add
        // additional styling for hover effect on thumbs
        var onMouseOutOpacity = 0.67;
        $('#thumbs_g1_'+idIndex+' ul.thumbs li').opacityrollover({
                mouseOutOpacity:   onMouseOutOpacity,
                mouseOverOpacity:  1.0,
                fadeSpeed:         'fast',
                exemptionSelector: '.selected'
        });

        // Initialize Advanced Galleriffic Gallery
        var gallery = $('#thumbs_g1_'+idIndex).galleriffic({
                delay:                     2500,
                numThumbs:                 numThumbs,
                preloadAhead:              -1,
                enableTopPager:            false,
                enableBottomPager:         false,
                imageContainerSel:         '#slideshow_g1_'+idIndex,
                controlsContainerSel:      '#controls_g1_'+idIndex,
                captionContainerSel:       '#caption_g1_'+idIndex,
                loadingContainerSel:       '#loading_g1_'+idIndex,
                renderSSControls:          true,
                renderNavControls:         true,
                enableKeyboardNavigation:  false,
                playLinkText:              'Reproducir',
                pauseLinkText:             'Pausar',
                prevLinkText:              '&lsaquo; Anterior',
                nextLinkText:              'Siguiente &rsaquo; &nbsp;',
                nextPageLinkText:          '&rsaquo; &rsaquo;',
                prevPageLinkText:          '&lsaquo; &lsaquo;',
                enableHistory:             false,
                autoStart:                 true,
                syncTransitions:           true,
                defaultTransitionDuration: 900,
                onSlideChange:             function(prevIndex, nextIndex) {
//                      // 'this' refers to the gallery, which is an extension of $('#thumbs')
                        this.find('ul.thumbs').children()
                               .eq(prevIndex).fadeTo('fast', onMouseOutOpacity).end()
                               .eq(nextIndex).fadeTo('fast', 1.0);

                       // Update the photo index display
                        $('#inElement_'+idIndex).val(nextIndex+1);
                },
                onPageTransitionOut:       function(callback) {
                        this.fadeTo('fast', 0.0, callback);
                },
                onPageTransitionIn:        function() {
                        var prevPageLink = this.find('a.prev').css('visibility', 'hidden');
                        var nextPageLink = this.find('a.next').css('visibility', 'hidden');

                        // Show appropriate next / prev page links
                        if (this.displayedPage > 0)
                                prevPageLink.css('visibility', 'visible');

                        var lastPage = this.getNumPages() - 1;
                        if (this.displayedPage < lastPage)
                                nextPageLink.css('visibility', 'visible');

                       this.fadeTo('fast', 1.0);
                }
        });

        gallery.find('a.prev').click(function(e) {
					gallery.previousPage();
					e.preventDefault();
				});

				gallery.find('a.next').click(function(e) {
					gallery.nextPage();
					e.preventDefault();
				});

        var color=$('#fondoElement_'+idIndex).val();
        $('#gallery_'+idIndex).css('background-color',color);
        //$('div.navigation_g1').css({'width':widthThumbs+'px'});
        $('#thumbs_g1_'+idIndex).css({'width':widthThumbs+'px'});
        $('#caption_g1_'+idIndex).css({'width':widthGallery+'px'});
}


function initJCarousel()
{
        $('.catalogCarousel').each(function(){
            var numProdsGalAnim = -1;
            var numProdsBySlide = 3;
            var idElement = $(this).attr('id');
            idElement = idElement.split('_');
            idElement = idElement[1];
            numProdsBySlide = parseInt($('#prodsBySlide_'+idElement).val());
            numProdsGalAnim = parseInt($('#totalElements_'+idElement).val());

            var typeGalery = (numProdsGalAnim <= numProdsBySlide ) ? null : 'circular';
                    
            $(this).jcarousel(
                {
                    scroll:numProdsBySlide - 1,
                    visible:numProdsBySlide
                    //wrap: typeGalery
            });
        });
}

function initLinkMoreGroupsAndTags()
{
    $('#moreTagsLink').click(function()
    {
        var initCatalogStoreId = $('#initCatalogStoreId').val();
        var nameGroupsSelected = $('#nameGroupsSelected').val();
        var tagsNameSelected = $('#tagsNameSelected').val();
        var idSitioTienda = $('#idSitioTienda').val();
        var maxGroupTags = $('#leftGroupTags').val();

        var url = $('#urlGetGroupsAndTagsByCatalog').val();
        var tagsIni=$('#tagsInitSelected').val();
        $.post(url,
        {
            'groupsName':nameGroupsSelected,
            'catIdSelected':initCatalogStoreId,
            'tagsNameSelected':tagsNameSelected,
            'siteId':idSitioTienda,
            'tagsIni':tagsIni,
            'showMoreGroupTags':1,
            'showAllTags':1
        },function(data)
        {
            var widthSelect = $('.selectBoxTags').width();
            var widthWindows = (widthSelect * maxGroupTags)+80;
            
            $('#divMoreGroupTags').html(data);
            $('#divMoreGroupTags').dialog(
            {
                resizable:false,
                width:widthWindows,
                height:150
            });
        });
    });
}

/*function setBreadCrums(nGroup,nTag)
{
    $('#navHisGroup').attr('href','#');
    $('#navHisGroup').text(nGroup);
    $('#navHisGroup').append(' - ');
    $('#navHisGroup').show();

    $('#navHisTag').attr('href','#');
    $('#navHisTag').text(nTag);
    $('#navHisTag').show();   
}*/

function setBreadCrums()
{
    var tagsNameSelected = $('#tagsNameSelected').val();
        tagsNameSelected = (tagsNameSelected == undefined) ? '' : tagsNameSelected.split('***');
    var nameGroupsSelected =  $('#nameGroupsSelected').val();
        nameGroupsSelected = (nameGroupsSelected == undefined) ? '' : nameGroupsSelected.split('***');

    var i = 0;
    var historyTags = '';
    var oneHistoryTag = ''
    for(i = 0; i<tagsNameSelected.length ; i++)
    {
        if(tagsNameSelected[i].length > 0)
        {
            oneHistoryTag = '<a class="clickTagsNavigation" id="'+nameGroupsSelected[i]+'***'+tagsNameSelected[i]+'">' +nameGroupsSelected[i]+' ( '+tagsNameSelected[i]+' )' + '</a>';
            historyTags += oneHistoryTag;
            historyTags += '  - ';
        }
    }

    $('#navHisGroup').attr('href','#');
    $('#navHisGroup').html(historyTags);
    $('#navHisGroup').show();

    $('#navHisTag').attr('href','#');
    $('#navHisTag').text('');
    $('#navHisTag').show();

    clickTagsNavigationTop();
}

function clickTagsNavigationTop()
{
    $('.clickTagsNavigation').click(function()
    {
        var idLink = $(this).attr('id');
        var nameGroupAndNameTag = idLink.split('***');
        var nameGroup = nameGroupAndNameTag[0];
        var nameTag = nameGroupAndNameTag[1];

        var initCatalogStoreId = $('#initCatalogStoreId').val();
        var nameGroupsSelected = $('#nameGroupsSelected').val();
        var tagsNameSelected = $('#tagsNameSelected').val();
        var idSitioTienda = $('#idSitioTienda').val();

        var endIndexOfNameGroup = nameGroupsSelected.indexOf(nameGroup) + (nameGroup.length);
        var endIndexOfNameTag = tagsNameSelected.indexOf(nameTag) + (nameTag.length);

        nameGroupsSelected = nameGroupsSelected.substr(0, endIndexOfNameGroup);
        tagsNameSelected = tagsNameSelected.substr(0, endIndexOfNameTag);

        $('#nameGroupsSelected').val(nameGroupsSelected);
        $('#tagsNameSelected').val(tagsNameSelected);


        setBreadCrums();
        var url = $('#urlGetProductsByTagsAndCatalogId').val();
        $.post(url,
        {
            'tagsNameSelected':$('#tagsNameSelected').val(),
            'initCatalogStoreId':initCatalogStoreId,
            'idSitio':idSitioTienda,
            'edicion':0
        },function(data)
        {
                $('#productsStoreData').html(data);
                $('.btn').button();

                var nameGroupsSelected = $('#nameGroupsSelected').val();
                var tagsNameSelected = $('#tagsNameSelected').val();
                    
                getGroupsAndTagsToShowByCatalog(nameGroupsSelected, tagsNameSelected, initCatalogStoreId);
                setBreadCrums();
        });
    });
    SexyLightbox.refresh();
}

//Muestra el contenido de una pagina si esta esta protegida con contraseña
function showContentPageProtected()
{
    var isThisPageProtected = $('#isThisPageProtected').val();

    if(isThisPageProtected == 1)
    {
        $('#prompterAskPassword').dialog(
        {
            modal:true,
            resizable:false,
            width:350,
            height:175,
            draggable: true,
            buttons:
            {
                Aceptar: function()
                {
                    var passwordContentProtected = $('#passwordContentProtected').val();
                    var passwordPage = $('#passwordPage').val();
                    if(passwordContentProtected == passwordPage)
                    {
                        $('#contentProtected').show();
                        inicializa_mapas_validation(false);
                        //inicializa_mapas(false); /*metodo de googleMaps*/                        
                        $( this ).dialog("close");
                        iniCaptify();
                    }
                    else
                    {
                        alert('No esta autorizado para ver esta página');
                        $('#passwordContentProtected').val('');
                    }
                },

                Cerrar: function()
                {
                    $('#contentProtected').hide();
                    $( this ).dialog( "close" );
                }
            }
        });
    }
}

function addToFavorites()
{
var title = document.title;var url = location.href;
    if (window.sidebar&&window.sidebar.addPanel) // Firefox
    {
        window.sidebar.addPanel(title, url, '');
    }
    else if(window.opera && window.print) // Opera
    {
        var elem = document.createElement('a');
        elem.setAttribute('href',url);
        elem.setAttribute('title',title);
        elem.setAttribute('rel','sidebar'); // required to work in opera 7+
        elem.click();
    }
    else if(document.all) // IE
    {
        window.external.AddFavorite(url, title);
    }else
        {
            alert('Tu navegador no soporta ésta característica');
        }
}

function inicializa_mapas_validation(edition)
{
     var thereMap = false;
     $('.map').each(function(){
           thereMap = true; 
     });
      if(thereMap == true)
      {
        inicializa_mapas(edition);
      }
}

function initial_slide(url,idElement,width)
{        
//    alert('');    
//    $.getJSON(url,function(data){                
//            $("#slide-sf_"+idElement).agile_carousel({
//                carousel_data: data,
//                carousel_outer_height: 350,/*Altura*/
//                carousel_height: 350,
//                slide_height: 350,
//                carousel_outer_width: width,
//                number_slides_visible: 1,
//                slide_width: width,
//                transition_type: "fade",
//                transition_time: 300,
//                timer: 4000,
//                continuous_scrolling: true,
//                control_set_1: "numbered_buttons,previous_button,pause_button,next_button",               
//                control_set_2: "content_buttons",
//                change_on_hover: "content_buttons"
//            });
//    }); 
    
    $.post(url,{
        idElemet:idElement
        },function(data){ 
            
            $("#slide-sf_"+idElement).agile_carousel({
                carousel_data: data,
                carousel_outer_height: 350,/*Altura*/
                carousel_height: 350,
                slide_height: 350,
                carousel_outer_width: width,
                number_slides_visible: 1,
                slide_width: width,
                transition_type: "fade",
                transition_time: 300,
                timer: 4000,
                continuous_scrolling: true,
                control_set_1: "numbered_buttons,previous_button,pause_button,next_button",               
                control_set_2: "content_buttons",
                change_on_hover: "content_buttons"
            });        
        },'json');    
}

function initialize_slides()
{        
    $('.slideshow-sf').each(function(){        
        var id = $(this).attr('id');        
        var url = $('#urlSlideImgs').val();
        var width = $(this).css('width');        
        id = id.split('_');
        url = url + id[1];
        initial_slide(url,id[1],width);
    });
}

function initialize_galleries()
{
    var galeria = $('#galeria').val();
    if(galeria != undefined)
    {
        if(galeria != 0)
        {
            var tipo=$('.typeGallery').each(function(){

                id = $(this).attr('id');
                tipo = $('#'+id).val();

                if(tipo=='galeriauno')
                {
                    gallery1();
                }
                else
                {
                    gallery2();
                }
            });
        
        }
    }
}

function init_buttons()
{
    $('#btnCheckPass').click(function(){
        $('#formCheckPassPage').submit();
    });
}

function init_ajaxForms()
{   
    $('#formCheckPassPage').ajaxForm(
    {
        success:function(data)
        {            
          if(data != 0) // Si no regresa codigo de contraseña incorrecta
            {
            $('#contentProtected').html(data);
            initialize_slides();
            initialize_galleries();
            inicializa_mapas_validation(false);
            changeDetailsProduct(); /*Metodo de productsviews.js*/
            initJCarousel();
            iniCaptify();
            reloadAddThisTool();
            init_Recaptcha();            
            }
          else
            {
                $('#wrapperFormProtectedMsg').show(300);
                setTimeout(function(){
                    $('#wrapperFormProtectedMsg').hide(300);
                },4000);
            }
        }
    });
}


function reloadAddThisTool()
{
    var script = 'http://s7.addthis.com/js/250/addthis_widget.js#domready=1';
    if (window.addthis){
        window.addthis = null;
    }
    $.getScript( script );
}

function init_Recaptcha()
{    
    $('.divRecaptcha').each(function(){
       var id = $(this).attr('id');
       Recaptcha.create("6LcQiAsAAAAAAOeV4wDwmVzxBr_jmBWM0NUOAsJ2", id, {
                theme: "white",
                callback: Recaptcha.focus_response_field
            });       
    });    
}

