$(document).ready(function(){
    
    mostrarAvisoOca();
    
    //oculto el menu de filtro de accesorios
    $('.menuFiltroAccesoriosWrapper').css({
        display:'none'
    });
    /*$('#pgAccesorios .divOrdenar').css({
        'margin': '-36px 0 1em'
    });*/
    // Filtro celulares
    FiltroCel();
    //  Activa popup de sucursales en consultar stock
    PopUpSucursales();
    // Links external
    $('a[rel=external]').attr('target','_blank');
    // Banners
    $('.socialBl').css({
        cursor:'pointer'
    }).click(function(){
        var url = $('a',$(this)).attr('href');
        var target = '';
        if($(this).attr('id')=='socialBlTwitter'){
            eGA('Banner','click','Twitter',location.href);
            target = ' target="_blank"';
        }else if($(this).attr('id')=='socialBlFacebook'){
            eGA('Banner','click','Facebook',location.href);
            target = ' target="_blank"';
        }

        var frm = $('<form action="'+url+'" '+target+'><div></form>');
        frm.hide().appendTo($('body')).submit();
        return false;
    });
    // Reemplazando fuentes
    Cufon.replace('.btn a', {
        fontFamily: 'analoga'
    });
    Cufon.replace('.btn strong', {
        fontFamily: 'analoga'
    });
    Cufon.replace('.btn button', {
        fontFamily: 'analoga'
    });
    Cufon.replace('#header .seguinos span', {
        fontFamily: 'analoga',
        fontWeight:'normal'
    });
    Cufon.replace('.loadMore a', {
        fontFamily: 'analoga',
        fontWeight:'normal',
        hover:{color:'#f40090'}
    });
    Cufon.replace('.btn-producto a', {
        fontFamily: 'analoga',
        fontWeight:'light'
    });
    Cufon.replace('.btn-oca', {
        fontFamily: 'analoga',
        fontWeight:'light'
    });
    Cufon.now();

    // Mensajes slideDown
    if(0<$('.msg .content p').length){
        if(!isIE6()){
            $('.msg').width($(document).width()).css({
                'position':'fixed',
                'top':0,
                'left':0
            });
        }else{
            $('.msg .content').width($(document).width()).css({
                'position':'absolute',
                'top':0,
                'left':0
            });
        }
        $('.msg .content').slideDown('slow', function(){
            var self=$(this);
            setTimeout(function(){
                self.slideUp('normal')
            },6500);
        });
    }
    // Slide fotos de los telefonos y accesorios
    $('div.img.slideFotos').each(function(){
        var gal = new SlideFotosProductos($(this));
    });
    // Validacion de los formulario ubicados en main
    $('form').submit(function(){
        var frm = $(this);
        var frmValidate = new FormValidate(frm,false);
        if( !frmValidate.Validate() )
            return false;
        return true;
    });

    // Cargo la url de la pagina para enviar a compartir
    $('#lbShare input#txtUrl').val(document.location.href.replace(/\?.*/gi,''));
    // Lanzo popUp con mapa de sucursales
    $('.blSucursales .map .btn').click(function(){
        MostrarMapaSucursal($(this));
        return false;
    });

    // Fancybox (agregar selectores separados por coma. Si algÃƒÂºn lightbox lleva propiedades distintas, crear una llamada aparte para ese.
    $(".share .blShareEmail a,#mapFooter a,.btnPopUp, .condiciones, .promoU2 #btnParticiparTw,  .promoU2 #btnParticiparWeb").fancybox({
        'overlayOpacity'	: 0.8,
        'overlayColor' 	: '#000',
        'padding' 		: 0,
        'titleShow'		: false,
        'autoScale'         : false
    });

    // Galeria en popup
    $("a.galeriaImagenes").fancybox({
        'overlayOpacity':0.8,
        'overlayColor':'#000',
        'padding':0,
        'titleShow':false
    });

    
    // Agrega marco a los thumbs
    if($('#pgOfertas').length==0){
        $("#pgHome .blThumbs .thumb img,.resultsBl .img img,.blSide .img img,.lightbox .img img,.blBlog .img img,.blogGallery .imgList li img,.blogGallery .img img, #pgContratosAncel .blThumbs .thumb img").before('<span class="thumbMarco"></span>');
    }else{
        activarCelularesOutlet();
    }
    //$("#pgContratosAncel .blThumbs .thumb img")
    // Agrega un span dentro de las listas ordenadas porque ningÃƒÂºn navegador permite de por sÃƒÂ­ darle color a los bullets de ol
    $(".blogContent ol li").contents().filter(function(){
        return this.nodeType != 1;
    }).wrap("<span/>");
    // Agrego otras clases necesarias
    $(".blSide .blThumb:nth-child(2)").addClass('first-item');
    $(".blCaractTable > tbody > tr:odd").addClass('par');

    $('.blogGallery.sinJs').each(function(){
        var galeria =  new GaleriaBlog($(this));
    });

    if(isIE()){
        $('#lbSolicitar select').bind('click', function(){
            $(this).addClass('activoIE')
        })
        .bind('blur change', function(){
            $(this).removeClass('activoIE')
        });
    }


    if($('#pgSucursalDetalle .colMain .geo').length> 0){
        var latitud, longitud, zoom;
        latitud= $('.geo .latitude').text();
        longitud= $('.geo .longitude').text();
        zoom= $('.geo .zoom').text();
        //alert(latitud + ' ' + longitud + ' '+ zoom);
        LoadMap(latitud, longitud, zoom);
    }

    $('#socialBlNewsletter fieldset').each(function(i){
        $(this).append('<p>Estoy registrado y quiero <a href="">borrarme</a>.</p>');
        var p= $('p', $(this));
        var a= $('a', p);
        var lbl= $('label', $(this));
        var chk= $('input', lbl);
        a.click(function(){
            chk.attr('checked', 'checked');
            p.fadeOut('fast', function(){
                lbl.fadeIn();
            });
            return false;
        });
        chk.click(function(){
            if(!chk.attr('checked')){
                lbl.fadeOut('fast', function(){
                    p.fadeIn();
                });
            }
        });
        $('#socialBlNewsletter .socialBlInner label').css({
            display: 'none'
        });
    })

    var initValue= $('#txtEmailNewsletter').val();
    $('#txtEmailNewsletter').focus(function(){
        $(this).removeClass('dflValue');
        if($(this).val()==initValue){
            $(this).val('');
        }
    });
    $('#txtEmailNewsletter').blur(function(){
        if($(this).val()==''){
            $(this).val(initValue);
            $(this).addClass('dflValue');
        }
    });

    controladorBuscador();
    contratosAncel();
    if($('.blogContent').length > 0){
        addPlayerYouTube();
    }
    activarEventosGoogleAnalitycs();
    activarTabsFichaProducto();
    activarPromo();
    var regex= new RegExp('promo-ok', 'ig');    
    if(regex.test(location['search'])){
        $.fancybox(
            '<div id="lbGracias" class="lightbox"><img src="/public/img/popup-gracias.gif" /></div>',
            {
                'overlayOpacity'    : 0.8,
                'overlayColor'      : '#000',
                'padding'           : 0,
                'titleShow'         : false
            
            }
            );
    }

   
    try{
        if($('.promoU2').length > 0)
            blogPromoU2();
    }catch(ex){

    }

    
    
//$("#socialBlServicios").append($('<iframe src="http://www.w3schools.com"></iframe>'));
/*setInterval(function(){
        $("#socialBlServicios iframe").load(function () {
        
            $(this).contents().find('.qNjN4e').css({
                'background':'transparent', 
                'border':'none'
            });
        /*var wrapper = $(this.contentDocument).find('.qNjN4e');
        wrapper.css({
            'background':'transparent', 
            'border':'none'
        });       

        })
    },10);*/
});

function activarPromo(){
    $('#pgConcurso .btnPopUpPromo').click(function(){
        var _cod='';
        var _parent= $(this).parents('.blHighlight');
        _cod= $('input.txtcodigo', _parent).val();
        $('#lbInscripcion input.txtCod').attr('value', _cod);
        $('#lbInscripcion .precio strong').html($('.precio strong', _parent).html() + '<small> (IVA inc.)</small>');
        $('#lbInscripcion .precioDesc').html($('.al50 strong', _parent).html() + '<small> (IVA inc.)</small>');
        var _src='';
        _src= $('input.imgPopUp', _parent).attr('value');
        $('#lbInscripcion img').attr('src', _src);
        $('#lbInscripcion .caption p').html($('.tit', _parent).html());
        $('#lbInscripcion h4').html("ParticipÃ¡s por el celular " + $('.tit', _parent).html() + " al 50%");

    });

    $(".pgConcurso .btnPopUpPromo").fancybox({
        'overlayOpacity'	: 0.8,
        'overlayColor' 	: '#000',
        'padding' 		: 0,
        'titleShow'		: false,
        'autoScale'         : true
    });
}

function activarTabsFichaProducto(){
    var _actItem=0;
    var items= new Array();
    if($('#lbSolicitarTelefono').length > 0){
        $('#lbSolicitarTelefono .tabItem h5').each(function(i){
            items[i]= $(this).parent();
            $(this).parent().addClass('inactive');
            $(this).click(function(){               
                if($(this).parent().hasClass('inactive')){
                    items[_actItem].addClass('inactive');
                    $(this).parent().fadeIn(function(){                        
                        _actItem= i;
                        items[_actItem].removeClass('inactive');
                    });
                }
            });
        });
        $('#lbSolicitarTelefono .tabItem:first-child').removeClass('inactive');
    }
}

// Funcion seguimiento boton +1
function registrar_evento( obj ) {    
    _gaq.push(['_trackEvent','plusone',obj.state]);
}
// Funcion para seguimiento evento twitter.
function extractParamFromUri(uri, paramName) {
    if (!uri) {
        return;
    }
    var uri = uri.split('#')[0];  // Remove anchor.
    var parts = uri.split('?');  // Check for query params.
    if (parts.length == 1) {
        return;
    }
    var query = decodeURI(parts[1]);

    // Find url param.
    paramName += '=';
    var params = query.split('&');
    for (var i = 0, param; param = params[i]; ++i) {
        if (param.indexOf(paramName) === 0) {
            return unescape(param.split('=')[1]);
        }
    }
}


function activarEventosGoogleAnalitycs(){
    activarSeguimientoPopupGA();
    /* Ompartir celular, accesorio, entrada blog */
    $('.blShareEmail  a').click(function(){
        eGA('Compartir','click','Correo',location.href);
    });
    
   
    if(typeof(FB)!="undefined"){
        FB.Event.subscribe('edge.create', function(targetUrl) {
            _gaq.push(['_trackSocial', 'facebook', 'me=gusta', targetUrl]);
        });
        FB.Event.subscribe('message.send', function(targetUrl) {
            _gaq.push(['_trackSocial', 'facebook', 'compartir', targetUrl]);
        });    
    }
    if(typeof(twttr)!="undefined"){
        twttr.events.bind('tweet', function(event) {
            if (event) {
                var targetUrl;
                if (event.target && event.target.nodeName == 'IFRAME') {
                    targetUrl = extractParamFromUri(event.target.src, 'url');
                }
                _gaq.push(['_trackSocial', 'twitter', 'tweet', targetUrl]);
            }
        }); 
    }
    
    /*  Siguenos en el header */
    $('#header .seguinos a.shareTwitter').click(function(){
        eGA('Cabecera','click','Twitter',location.href);
    });
    $('#header .seguinos a.shareFacebook').click(function(){
        eGA('Cabecera','click','Facebook',location.href);
    });
    $('#header .seguinos a.shareRss').click(function(){
        eGA('Cabecera','click','Rss',location.href);
    });
    /* Banner del lateral   */
    $('#socialBlTwitter a').click(function(){
        eGA('Banner','click','Twitter',location.href);
    });
    $('#socialBlFacebook a').click(function(){
        eGA('Banner','click','Facebook',location.href);
    });
}

function activarSeguimientoPopupGA(){
    $('#btnSucursales').click(function(){
        sGA('/formulario-ver-stock/');
    });
    $('#btnVerTelefono').click(function(){
        sGA('/formulario-telefono/');
    });
    $('#btnSolicitar').click(function(){
        sGA('/formulario-solicitud-producto/');
    });
}


// Google analitycs
function sGA(url){
    try{
        _gaq.push(['_trackPageview',url]);
    }catch(ex){}
}
// Traking eventos
function eGA(category,action,opt_label,opt_value){
    try{
        _gaq.push(['_trackEvent',category,action,opt_label]);
    }catch(ex){}
}


// JavaScript Document
(function($) { // FunciÃ³n para precargar imÃ¡genes
    var cache = [];
    // Arguments are image paths relative to the current page.
    $.preLoadImages = function() {
        var a = (typeof arguments[0] == 'object')? arguments[0] : arguments;
        var args_len = a.length;
        for (var i = args_len; i--;) {
            var cacheImage = document.createElement('img');
            cacheImage.src = a[i];
            cache.push(cacheImage);
        }
    }
})(jQuery)




// Activa opciones en el formulario de la pagina Contratos Ancel
function contratosAncel(){
    if($("#pgContratosAncel").length > 0){
        if(!isIE6())
            $(".blBigOuter .content").addClass("conJs");

        $(".displayForm").click(function(){
            if(!isIE6()){
                if($('.blBigOuter .content').css('display')!='block'){
                    $('.blBigOuter .content').slideDown(function(){
                        $('.blBigOuter .content').css({
                            display: 'block'
                        });
                    });
                }
                else{
                    $('.blBigOuter .content').slideUp(function(){
                        $('.blBigOuter .content').css({
                            display: 'none'
                        });
                        $('#formContact')[0].reset();
                    });
                }
            }
            return false;
        });
        $('#optional input').attr('disabled', true);
        $('#optional select').attr('disabled', true);
        $("#formContact input[name=rdoLine]").each(function(i){
            $(this).click(function(){
                var _value= $("input[name=rdoLine]:checked").val();
                if(_value=="Si"){
                    $('#optional label').removeClass('disabled');
                    $('#optional input').attr('disabled', false)
                    $('#optional select').attr('disabled', false)
                    $('#optional select').addClass('v_required')
                }else{
                    $('#optional label').addClass('disabled');
                    $('#optional input').attr('disabled', true)
                    $('#optional select').attr('disabled', true)
                    $('#optional select').removeClass('v_required')
                }
            });
        });
    }
}

function controladorBuscador(){
    if($('#pgHome').length==0 && $('#search').length > 0){
        var search= $('#search');
        var searchDefault="Buscar en el catálogo...";
        if(search.val()==''){
            search.val(searchDefault);
        }else{
            search.addClass('value');
        }
        search.focus(function(){
            if($(this).val()==searchDefault)$(this).val("");
        });
        search.blur(function(){
            if($(this).val()==''){
                $(this).val(searchDefault);
                $(this).removeClass('value');
            }else{
                $(this).addClass('value');
            }
        });
        var frm = search.parents('form');
        frm.submit(function(){
            if(search.val()==searchDefault){
                return false;
            }
            return true;
        });
    }
}

function GaleriaBlog(_div){
    var _ul         = $('ul',_div);
    var _divImg     = $('<div class="img"></div>');
    var _divGImg    = $('<div class="galleryImage"></div>');
    var _divCaption = $('<div class="caption"></div>');
    var _pCaption   = $('<p>Imagen <span id="imgCurr">1</span>/<span id="imgTot">1</span></p>');
    var _btnPrev    = $('<a href="#" class="prev active">Anterior</a>');
    var _btnNext    = $('<a href="#" class="next active">Siguiente</a>');
    var _img        = $('<img />');
    var _pDesc      = $('<p class="blogGalleryCaption"></p>');

    var _index = 0;
    var _tot   = 0;
    var _imgsSrc  = new Array();
    var _imgsDesc = new Array();

    /*  Funciones   */
    var _Select = function(i){
        if(i<0)i=0;
        else if(_tot-1<i)i=_tot-1;
        _img.attr('src',_imgsSrc[i]);
        _pDesc.text(_imgsDesc[i]);
        _index=i;
        $('#imgCurr',_pCaption).html(i+1);
        if(i==0){
            _btnPrev.removeClass('active');
        }else{
            _btnPrev.addClass('active');
        }
        if(_tot==(i+1)){
            _btnNext.removeClass('active');
        }else{
            _btnNext.addClass('active');
        }
    }
    var _Next = function(){
        _Select(_index+1);
    }
    var _Prev = function(){
        _Select(_index-1);
    }

    $('a',_ul).each(function(i){
        var a = $(this);
        var href=a.attr('href');
        _imgsSrc[i]  = href;
        _imgsDesc[i] = $('img',a).attr('alt');
        $('<span class="thumbMarco"></span>').appendTo(a);
        _tot++;
        a.click(function(){
            _Select(i);
            return false;
        });
    });

    if(0==_tot)
        return;
    /*  Selecciono la primer imagen.    */
    _Select(0);
    /*  Cargo el total de fotos */
    $('#imgTot',_pCaption).html(_tot);
    /*  Activo botones  */
    _btnPrev.click(function(){
        _Prev();
        return false;
    });
    _btnNext.click(function(){
        _Next();
        return false;
    });
    /*  Agrego html     */
    _divGImg.append('<span class="thumbMarco"></span>').append(_img);
    _pCaption.prepend(_btnPrev).append(_btnNext).appendTo(_divCaption);
    _divImg.append(_divGImg).append(_divCaption);
    _div.removeClass('sinJs').addClass('conJs');
    _ul.wrap('<div class="imgList"></div>')
    _div.prepend(_divImg).append(_pDesc);
}



function SelectFiltroAccesorios(idTel){
    var _marcas  = new Array();
    var _modelos = new Array();
    var self = this;
    var _idTelSelected;
    var _telSelected = null;

    idTel = (idTel!=undefined)?parseInt(idTel):0;
    _idTelSelected = !isNaN(idTel)?idTel:0;

    this.Add =  function(id,marca,modelo){
        var i = _marcas.length-1;
        var ultimaMarca = (0<=i)?_marcas[i]:'';
        if(ultimaMarca.toLowerCase()!=marca.toLowerCase() ){
            _marcas.push(marca);
            i++;
        }
        if(_modelos[i]==undefined)
            _modelos[i] = new Array();
        _modelos[i].push({
            'id':id,
            'modelo':modelo
        });
        // Guardo un objeto con los datos del telefono seleccionado
        if(0<_idTelSelected&&_idTelSelected==id){
            _telSelected = {
                'id':id,
                'marca':marca,
                'modelo':modelo
            };
        }
    }

    var _FillSelectMarcas = function(){
        var selectMarcas = $('select[name=marca]');
        // Actualizo el contenido del select modelos
        selectMarcas.change(function(){
            var idMarca = $(this).val();
            // Cargo modelos de esta marca
            _FillSelectModelos(idMarca);
            //   Actulaizo la pagina
            if(idMarca==-1&&_idTelSelected!=0){
                $(this).parents('form').submit();
            }
        });
        if(_marcas.length==0){
            selectMarcas.attr('disabled','disabled');
        }else{
            selectMarcas.removeAttr('disabled');
        }

        var option;
        for(var i in _marcas){
            option = $('<option value="'+i+'">'+_marcas[i]+'</option>');
            if(_telSelected!=null&&_telSelected.marca==_marcas[i]){
                option.attr('selected','selected');
                _FillSelectModelos(i);
            }
            selectMarcas.append(option);
        }
    }

    var _FillSelectModelos = function(idMarca){
        var selectModelos = $('select[name=modelo]');
        selectModelos.html('<option value="0">Seleccione modelo</option>');
        if(0<=idMarca){
            var option;
            for(var i in _modelos[idMarca]){
                option = $('<option value="'+_modelos[idMarca][i].id+'">'+_modelos[idMarca][i].modelo+'</option>');
                if(_telSelected!=null&&_telSelected.id==_modelos[idMarca][i].id){
                    option.attr('selected','selected');
                    _telSelected = null;
                }
                selectModelos.append(option);
            }
            selectModelos.removeAttr('disabled');
        }else{
            selectModelos.attr('disabled','disabled');
        }
    }

    $(document).ready(function(){
        // Carco las marcas en el select
        _FillSelectMarcas();
        // Enviar formulario
        $('select[name=modelo]').change(function(){
            $(this).parents('form').submit();
        });
        $('#filterAcc').css({
            'display':'block'
        });
    });
}



function FiltroCel(){
    var _timerPeticion,
    _request,
    _url       = '',
    _marca     = '',
    _modalidad = '',
    _precio    = '',
    _orden     = undefined,
    _caracts   = new Array(),
    _links     = $('#pgCelulares .filter a'),
    _divMain   = $('.colMain .container'),
    _divLoader = $('<div class="loader"></div>');

    if(_links.length==0)
        return false;
    // Alto minimo para el div
    _divMain.css({
        'minHeight':_divMain.height()+'px'
    });

    // Verifica si opcion es seleccionada
    var _Selected = function(a){
        if(_orden==undefined)
            _SetOrden(a.attr('href'));
        var li = a.parent();
        if(li.hasClass('selected')){
            li.removeClass('selected');
        }else{
            li.addClass('selected');
            var ul = li.parent();
            if(ul.hasClass('marcas')||ul.hasClass('modalidades')||ul.hasClass('precios'))
                li.siblings().removeClass('selected');
        }
    }

    var _SetOrden = function(href){
        var match = /&?ord=([a-z\-]+)&?/gi.exec(href);
        _orden = (match!=null&&1<match.length)?match[1]:'';
    }

    var _SetUrl  = function(){
        var pathname = document.location.pathname;
        _url = pathname.replace(/celulares.*/gi,'celulares/');
    }

    var _GetValueFormId = function(id){
        return id.replace(/filter_/,'');
    }

    var _SetMarca      = function (){
        var marca = '';
        $('.filter ul.marcas li.selected').each(function(){
            marca = _GetValueFormId($(this).attr('id'));
            return false;
        });
        _marca = marca;
                            
    }

    var _SetModalidad  = function(){
        var mod = '';
        $('.filter ul.modalidades li.selected').each(function(){
            mod = _GetValueFormId($(this).attr('id'));
        });
        _modalidad = mod;
    }

    var _SetCaracts  = function(){
        _caracts = new Array();
        $('.filter ul.caracteristicas li.selected').each(function(){
            _caracts.push(_GetValueFormId($(this).attr('id')));
        });
    }

    var _SetPrecio  = function(){
        var precio = '';
        $('.filter ul.precios li.selected').each(function(){
            precio = _GetValueFormId($(this).attr('id'));
        });
        _precio = precio;
    }

    var _ArmaUrlPeticion = function(){
        var url = _url;
        url+= _marca;
        url+= '?js=1&';
        url+= _caracts.join('&');
        url+= (_modalidad!='')?'&mod='+_modalidad:'';
        url+= (_precio!='')?'&precio='+_precio:'';
        url+= (_orden!='')?'&ord='+_orden:'';
        // Armo la url que que se coloca en el navegador para mantener el history
        _SetUrlNavegacion();
        return url;
    }

    var _SetUrlNavegacion = function(){
        var urlActual = document.location.href;
        urlActual = urlActual.replace(/#.+/,'');
        urlActual+= '#';
        urlActual+= 'marca='+_marca+'&';
        urlActual+= 'caracts='+_caracts.join(',')+'&';
        urlActual+= 'mod='+_modalidad+'&';
        urlActual+= 'precio='+_precio;
        if(_orden!=undefined)
            urlActual+= '&ord='+_orden;
        document.location.assign(urlActual);
    }


    var _setTimeOut = function(bl,t){
        setTimeout(function(){
            bl.show();
        },t);
    }
                    
    var _timersFadeIn = new Array();
    var _CargarListado =  function(){
        var html = $('<div></div>');
        // Cargo los datos para armar la url
        _SetMarca();
        _SetModalidad();
        _SetCaracts();
        _SetPrecio();

        // Oculto nuevamente los resultsBl
        $('.resultsBl',_divMain).remove();
        // Elimino los fade in de los .resultsBl
        for(var i=0;i<_timersFadeIn.length;i++)
            clearTimeout(_timersFadeIn[i]);
        _timersFadeIn = new Array();
        // Si no esta el loader lo agrego

        if(!_divLoader.parent().hasClass('colMain'))
            _AddLoader();
        // Realizo peticion al servidor
        var _url= _ArmaUrlPeticion();
        _request = $.ajax({
            url: _url,
            success: function(data) {
                sGA(_url);
                html.html(data);
                var bl = new Array();
                $('.resultsBl',html).each(function(i){
                    bl[i] = $(this);
                    bl[i].hide();
                    $('.img img',bl[i]).before('<span class="thumbMarco"></span>');
                });
                // Set titulo de la pÃƒÂ¡gina
                if(!isIE()){
                    $('title').text($('strong.title',html).text());
                }

                $('h1').html($('span.h1',html).html());
                // Oculto y quito el loader
                _divLoader.fadeOut('fast',function(){
                    html.hide();
                    _divMain.html('').append(html);
                    html.fadeIn('normal');
                });
                //  efecto aparecen de uno
                for(var i=0;i<bl.length;i++){
                    _timersFadeIn[i] = _setTimeOut(bl[i],(300*(1+i)));
                }
                _request = undefined;
            }
        });
    }

    var _GetPreSelectedDataFromAnchors = function(){
        var pedirDatos = 0;

        var regMarca     = new RegExp('marca=','gi');
        var regModalidad = new RegExp('mod=','gi');
        var regCaract    = new RegExp('caracts=','gi');
        var regPrecio    = new RegExp('precio=','gi');

        _SetOrden(document.location.href);

        var data = document.location.hash.substring(1).split('&');
        for(var i in data){
            if(regMarca.test(data[i])){
                data[i] = data[i].replace(/marca=/,'');
                $('.filter ul.marcas li.selected').removeClass('selected');
                $('.filter ul.marcas li#filter_'+data[i]).addClass('selected');
                pedirDatos++;
            }else if(regModalidad.test(data[i])){
                data[i] = data[i].replace(/mod=/,'');
                $('.filter ul.modalidades li.selected').removeClass('selected');
                $('.filter ul.modalidades li#filter_'+data[i]).addClass('selected');
                pedirDatos++;
            }else if(regCaract.test(data[i])){
                data[i] = data[i].replace(/caracts=/,'');
                var arr = data[i].split(',');
                $('.filter ul.caracteristicas li.selected').removeClass('selected');
                for(var j in arr){
                    $('.filter ul.caracteristicas li#filter_'+arr[j]).addClass('selected');
                }
                pedirDatos++;
            }else if(regPrecio.test(data[i])){
                data[i] = data[i].replace(/precio=/,'');
                $('.filter ul.precios li.selected').removeClass('selected');
                $('.filter ul.precios li#filter_'+data[i]).addClass('selected');
                pedirDatos++;
            }
        }
        // Si hay datos despues del # realizo la peticion por ajax
        if(0<pedirDatos){
            _CargarListado();
        }
    }

    var _AddLoader = function(){
        _divLoader.hide().appendTo(_divMain).fadeIn();
    }

    // Guardo la url del listado de celulares
    _SetUrl();
    // Obtengo los datos que ya entan en la url despues de #
    _GetPreSelectedDataFromAnchors();

    // Activo acciones en los links
    _links.click(function(){
        if(_request!=undefined){
            _request.abort();
        }
        // realizo peticion
        clearTimeout(_timerPeticion);
        for(var i=0;i<_timersFadeIn.length;i++)
            clearTimeout(_timersFadeIn[i]);
        var a = $(this);
        // Marco como seleccionado el item
        _Selected(a);
        // Oculto listado actual
        $('#filtrosSeleccionados',_divMain).fadeOut('fast');
        $('.pag',_divMain).fadeOut('fast');
        $('p',_divMain).fadeOut('fast');
        $('.resultsBl',_divMain).fadeOut('fast',function(){
            $(this).remove();
            _AddLoader();
        });
        // Realizo peticion al servidor
        _timerPeticion = setTimeout(function(){
            _CargarListado();
        },1500);
        return false;
    });
}




function MostrarMapaSucursal(btn,html){
    if(html==undefined||typeof(html)!='string')
        html = '';
    var nombre,direccion,longitud,latitud,zoom;
    // Obtengo datos de la sucursal
    nombre    = btn.siblings('.map .nombre').text();
    direccion = btn.siblings('.map .direccion').text();
    longitud  = btn.siblings('.map .longitude').text();
    latitud   = btn.siblings('.map .latitude').text();
    zoom      = btn.siblings('.map .zoom').text();
    $.fancybox(
        '<div id="lbMapEnSucursales" class="lightbox"><h4>Sucursal '+nombre+' <span>'+direccion+'</span></h4><div id="mapWrapper"></div>'+html+'</div>',
        {
            'overlayOpacity'    : 0.8,
            'overlayColor'      : '#000',
            'padding'           : 0,
            'titleShow'         : false,
            'onComplete'        : function(){
                Cufon.replace('#volverListadoSucursales', {
                    fontFamily: 'analoga'
                });
                $('#volverListadoSucursales').click(function(){
                    $('#btnSucursales').trigger('click');
                });
                LoadMap(latitud,longitud,zoom);
            }
        }
        );

}
var mapa;
function LoadMap(latitud,longitud,zoom){
    latitud = parseFloat(latitud);
    longitud = parseFloat(longitud);
    zoom = parseInt(zoom);

    if (GBrowserIsCompatible()) {
        mapa = new GMap2(document.getElementById("mapWrapper"));
        mapa.setCenter(new GLatLng(latitud, longitud), zoom);
        mapa.addControl(new GSmallMapControl());
        mapa.addControl(new GMapTypeControl());
        mapa.setMapType(G_HYBRID_MAP);
        mapa.checkResize();
        var point;
        var Marcador;
        point = new GPoint (longitud,latitud);
        //Marcador = new GMarker(point);
        var point;
        var Marcador;
        point = new GPoint (longitud,latitud);
        //Marcador = new GMarker(point);
        var gx = new GGeoXml("http://celulares.com.uy/xml/celulares-uruguay.kml?short");
        mapa.addOverlay(gx);
    }
}






/*
    Slide con las fotos de los productos
 */
function SlideFotosProductos(_div){

    var _imgs = new Array();
    var _aFirst = $('a:first-child',_div);
    var _span= $('<span class="thumbMarco"></span>');
    _aFirst.prepend(_span);

    if(isIE6()){
        _span.hover(function(){
            $(this).css('background-position', '0 -248');
        }, function(){
            $(this).css('background-position', '0 0');
        });
        $('.blCaractTable td tr:first-child th, .blCaractTable td tr:first-child td').css({
            'border': 'none'
        });

    }


    // Guardo en una array todas la imÃ¡genes
    $('a',_div).each(function(i){
        _imgs[i] = $(this);
        _imgs[i].css({
            'zIndex':i
        });


        if(0<i)
            _imgs[i].css({
                'display':'none',
                'position':'absolute',
                'left':'0',
                'top':'0'
            });

        var _span= $('<span class="thumbMarco"></span>');
        _imgs[i].prepend(_span);

        if(isIE6()){
            _span.hover(function(){
                $(this).css('background-position', '0 -248');
            }, function(){
                $(this).css('background-position', '0 0');
            });
        }
    });

    // Guardo el total de imÃ¡genes que hay
    var _totImgs = _imgs.length;
    // Si no hay imÃ¡genes
    if(_totImgs<1)
        return;
    // Agrelo los elementos del caption
    $('.caption div',_div).html('Imagen <strong>1</strong>/'+_totImgs);
    // Si solo hay una imagen no agrego los botones para pasarlas
    if(_totImgs==1)
        return false;
    var _index = 0;
    var _btnPrev  = $('<span class="prev disabled">Anterior</span>');
    var _btnNext  = $('<span class="next">Siguiente</span>');
    // Agrego los botones
    $('.caption div',_div).prepend(_btnPrev)
    .append(_btnNext);
    // Obtengo el srtong que muestra el numero de la imagen que se esta mostrando
    var _strong           = $('.caption strong',_div);
    var _NextImg          = function(){
        if((_totImgs-1)<=_index) return false;
        $('img', _imgs[(++_index)]).fadeIn();
        _ActualizaCaption();
    }
    var _PrevImg          = function(){
        if(_index<=0) return false;
        _imgs[--_index].css({
            display: 'block'
        });
        $('img', _imgs[(_index+1)]).fadeOut(function(){
            _ActualizaCaption();
        })
    }
    var _ActualizaCaption = function(){
        //_aFirst.attr('href', _imgs[_index].parents('a').attr('href'));
        //_aFirst.replaceWith(_imgs[_index].parents('a'));
        for(var i in _imgs){
            _imgs[i].css({
                display: 'none'
            });
        }
        _imgs[_index].css({
            display: 'block'
        });


        _strong.text(_index+1);
        if(_index==0){
            _btnPrev.addClass('disabled');
        }else{
            _btnPrev.removeClass('disabled');
        }
        if((_totImgs-1)==_index){
            _btnNext.addClass('disabled');
        }else{
            _btnNext.removeClass('disabled');
        }
    }
    _btnNext.click(_NextImg);
    _btnPrev.click(_PrevImg);
}

if(typeof(isIE)!='function')
    function isIE(){
        if($.browser.msie)return true;
        return false;
    }
if(typeof(isIE6)!='function')
    function isIE6(){
        if($.browser.msie&&parseInt($.browser.version)<7)return true;
        return false;
    }


function PopUpSucursales(){
    var _div            = $('#lbSucursales');
    var _url            = $('.data input[name=url]',_div).val();
    var _codigo         = $('.data input[name=CodProd]',_div).val();
    var _tipo           = $('.data input[name=tipo]',_div).val();
    var _table          = $('table',_div);
    var _divSinStock    = $('.sinStock',_div);
    var _sucursales     = new Array();
    var _sucursalesMdeo = new Array();
    var _sucursalesInt  = new Array();

    var _HayStock = function(){
        var i = 0;
        var hayStock = false;
        while(!hayStock&&i<_sucursales.length){
            if(_sucursales[i]!=undefined&&_sucursales[i].stock==1){
                hayStock = true;
            }
            i++;
        }

        return hayStock;
    }

    var _CreaTr = function(sucursal,i){
        var tr = $('<tr class="sucursal"></tr>');
        var th = $('<th class="cerrado"></th>');
        var td = $('<td></td>');
        /*    Contenido th    */
        var html = '<a href="">'+sucursal.nombre +'</a>';
        html+= '<ul>';
        html+= '<li>'+sucursal.direccion+' ';
        if(sucursal.longitud!=0&&sucursal.latitud!=0){
            html+= '<p class="map">';
            html+= '(<a href="#blMapa" class="map">ver mapa</a>)';
            html+= '<span class="nombre">'+sucursal.nombre+'</span>';
            html+= '<span class="direccion">'+sucursal.direccion+'</span>';
            html+= '<span class="longitude">'+sucursal.longitud+'</span>';
            html+= '<span class="latitude">'+sucursal.latitud+'</span>';
            html+= '<span class="zoom">'+sucursal.zoom+'</span>';
            html+= '</p>';
        }
        html+= '</li>';
        html+= '<li>Tel:'+sucursal.telefonos+'</li>';
        html+= '<li class="horario">Horario: '+sucursal.horarios+'</li>';
        html+= '</ul>';
        th.html(html);
        /*  Contenido td  */
        html = (sucursal.stock==1)?'<img src="/public/img/ico-disponible.gif" alt="Disponible" /> disponible':'<img src="/public/img/ico-no-disponible.gif" alt="No disponible" /> no disponible';
        td.html(html);
        tr.append(th).append(td).css({
            'visibility':'hidden'
        });
        setTimeout(function(){
            tr.css({
                'visibility':'visible'
            });
        },200*i);
        return tr;
    }

    var _CargarTabla = function(){
        if(_HayStock()){
            var tbody = $('<tbody></tbody>');
            _table.html('')
            .append('<col width="278" />')
            .append('<col width="102" />');
            if(_sucursalesMdeo.length > 0){
                tbody.append("<tr><th colspan='2' class='titulo'>Montevideo</th></tr>");
                for(var i=0;i<_sucursalesMdeo.length;i++){
                    tbody.append(_CreaTr(_sucursalesMdeo[i],i));
                }
            }

            if(_sucursalesInt.length > 0){
                tbody.append("<tr><th colspan='2' class='titulo'>Interior</th></tr>");
                for(var i=0;i<_sucursalesInt.length;i++){
                    tbody.append(_CreaTr(_sucursalesInt[i],i));
                }
            }
            _table.append(tbody);

            $('th>a',_table).click(function(){
                $(this).parent().toggleClass('cerrado').parent().siblings().find('th').addClass('cerrado');
                return false;
            });
            $('.map',_table).click(function(){
                MostrarMapaSucursal($(this),'<div class="btns"><span class="btn h32"><a id="volverListadoSucursales" href="#lbSucursales">Volver</a></div>');
            });
            $('#mapas .btn a').click(function(){
                $("a#btnSucursales").trigger('click');
            });
        }else{
            _table.fadeOut(function(){
                $(this).remove()
            });
            _divSinStock.fadeIn();
        }
    }

    $("a#btnSucursales").click(function(){
        if(0==_sucursales.length){
            var peticion = $.ajax({
                url: _url+'?CodProd='+_codigo+'&t='+_tipo+'&'+Math.random(),
                dataType: 'script',
                success: function(data){
                    _sucursales = sucursales;
                    for(var i=0; i<_sucursales.length; i++){
                        var sucursal= _sucursales[i];
                        if(sucursal.dpto.toLowerCase()=='montevideo'){
                            _sucursalesMdeo.push(sucursal);
                        }else{
                            _sucursalesInt.push(sucursal);
                        }
                    }
                    _CargarTabla();
                }
            });
        }
    }).fancybox({
        'overlayOpacity': 0.8,
        'overlayColor' 	: '#000',
        'padding' 	: 0,
        'titleShow'	: false
    });
}



function AgregarPlayerYoutube(id, ancho,alto,ytKey){
    ytKey = (ytKey==undefined)?'AI39si5VuTpmP3w-bv2tqiQKZntcOe_VBlyOX2AhtvdIBgVHn_VQsDaC3LwZQTxd3bnjYmBs7yMIYZJMCjyPBiMCtGtPnQLwrQ':ytKey;
    ancho = (ancho==undefined)?550:ancho;
    alto  = (alto==undefined)?300:alto;

    var params = {
        'allowScriptAccess':"always",
        'wmode':"transparent"
    };
    var atts = {
        'id':id
    };

    swfobject.embedSWF("http://www.youtube.com/apiplayer?playerapiid="  + id +"&key="+ytKey+"&enablejsapi=1&rel=0&auto=1", id, ancho, alto, "8", null, null, params, atts);



}

function ObtenerCodigoVideo(a){
    var href = a.attr('href');
    href = href.replace(/^.*v=/gi,'');
    return href.replace(/&.*$/,'');
}


function addPlayerYouTube(){
    var _cont = 0;

    /*    Video   */
    var _VideoArmarBloque = function(mylink){
        _cont++;
        var codigoVideo = ObtenerCodigoVideo(mylink);
        var id    = 'ytPlayerMedia'+_cont;

        var texto = mylink.text();
        var div = $('<div id="py_'+id+'" class="videoExtContainer"><strong>' + texto + '</strong><div class="ytPlayer" id="'+codigoVideo+'"><div id="'+id+'""></div></div></div>');
        
        var video= $('<div id="py_'+id+'" class="videoExtContainer"><strong>' + texto + '</strong><iframe width="640" height="410" src="http://www.youtube.com/embed/' + codigoVideo + '" frameborder="0" allowfullscreen></iframe></div>');
        
        if(isIE()){
            mylink.attr('href', '#' + id)
            mylink.attr('id', 'lnkVideo_' +_cont )

            $('.blogContent').append(video);
        }else{
            video.insertAfter(mylink)
            mylink.remove();
        }


        // mylink.remove();
        ///AgregarPlayerYoutube(id, '100%');

    }

    $('.blogContent a[href*=youtube.com/]').each(function(){
        _VideoArmarBloque($(this));

    });

}


function createCookie(name,value,days){
    if(days){
        var date=new Date();
        date.setTime(date.getTime()+(days*24*60*60*1000));
        var expires = ";expires="+date.toGMTString();
    }else {
        var expires = "";
    }
    document.cookie = name+"="+value+expires+"; path=/";
}
function readCookie(name) {
    var nameEQ = name + "=";
    var ca = document.cookie.split(';');
    for(var i=0;i < ca.length;i++) {
        var c = ca[i];
        while (c.charAt(0)==' ') c = c.substring(1,c.length);
        if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
    }
    return null;
}

function mostrarAvisoOca(){
    var existeCookie = readCookie('oca')==1;
    if(!existeCookie){
        createCookie('oca',1,365);
        $.fancybox(
            '<div id="lbOca" class="lightbox"><img src="/public/img/popup-oca.jpg" /></div>',
            {
                'overlayOpacity'    : 0.8,
                'overlayColor'      : '#000',
                'padding'           : 0,
                'titleShow'         : false
            
            }); 
    }
        
}

function activarCelularesOutlet(){
    var page=1;
    var total=5;
    var wrapper= $('.resultList');
    var peticion;
    var buttonLoad;
    var loadWrapper;
    
    if($('#loadMoreCel').length > 0){
        buttonLoad=$('#loadMoreCel');
        loadWrapper=$('.loadMore');
        loadWrapper.css({'display':'block'});
        $('.pag').css({'display':'none'});
        $('#loadMoreCel').click(function(){
            loadCels();
            return false;
        });
    
        var _setTimeOut = function(bl,t){        
            setTimeout(function(){
                bl.show();
            },t);       
        }
        
            
        var loadCels= function(){
            buttonLoad.fadeOut(function(){
                var loader= $('<span class="loading">Cargando...</span>');
                loadWrapper.append(loader);                
                page +=1;
                peticion = $.ajax({            
                    url: "?js=1&page=" + page + "&total="+total,            
                    success: function(data){
                        var div= $('<div id="page_' + page + '" style="display:none"></div>');                                           
                        wrapper.append(div);
                        var result=$("<div>" + data + '</div>');
                    
                        var hasManyPages=($('.hasManyPages', result).val()>0)?true:false;
                   
                        //var bl=$('.resultsBl', result);
                        $('.resultsBl', result).each(function(i){                                      
                            //  efecto aparecen de uno
                            var _this=$(this);
                            //_this.css({'display':'none'});
                            //_setTimeOut(_this,(500*(1+i)));
                            _this.appendTo(div);                  
                    
                        });                
                        div.slideDown('slow', function(){
                            loader.remove();
                            if(hasManyPages)
                                buttonLoad.fadeIn();
                        });
                    }
                });
            });
        }
    }
}
