﻿WebTV.UserControls = {};

WebTV.UserControls.Canais =
{
    // Guarda referência dos headers do itens de accordion que têm filhos.
    headers: [],
    // Monta o accordion.
    init: jQuery(function()
    {
        var accordion = jQuery('#divBoxCanais_meio_areaItens').get(0);
        
        jQuery('div[id*=accordionHeader]', accordion).each(function(index){
            var jQueryThis = jQuery(this);
            if (jQueryThis.next().children().length > 0)
            {
                // Guarda os headers de canais que têm canais filhos...
                WebTV.UserControls.Canais.headers.push({header:this, isOpen:false});
                // ... e adiciona o evento de click.
                jQueryThis.click(WebTV.UserControls.Canais.accordionHeader_click).next().hide();
            }
        });
    }),
    // Abre/fecha o accordion.
    accordionHeader_click: function()
    {   
        target = this;
        // Fecha todos os divs de conteúdo exceto o div de conteúdo do header clicado.
        jQuery('div div:nth-child(2)', target.parentNode.parentNode).filter(function(){
            return jQuery(this).prev().attr('id') != target.id;
        }).hide('fast')
        // Remove a classe de selected de todos os headers que não sejam o header clicado.
        .prev().removeClass('accordionHeader_selected');
        // Alterna o estado (aberto/fechado) do div de conteúdo do header clicado.
        jQuery(target).next().toggle('fast')
        
        // Muda a classe do header para selected.
        var h = WebTV.UserControls.Canais.headers;
        for (var i = 0; i < h.length; i++)
        {
            if (h[i].header.id == target.id)
            {
                h[i].isOpen ? jQuery(target).removeClass('accordionHeader_selected') : jQuery(target).addClass('accordionHeader_selected');
                h[i].isOpen = !h[i].isOpen;
            }
            else
                // Para todo header que não seja aquele que foi clicado, muda a referência do seu estado para
                // fechado. Todos estes headers já foram fechados pelo bloco de cód. inicial desta função.
                h[i].isOpen = false;
        }
    }
};


var click = 0;
WebTV.UserControls.BoxVideo = {
    init: function(){
        jQuery('#divVideosSequenciaStrip').css('marginLeft', '0px');
        jQuery('#divVideosSequencia_next').click(WebTV.UserControls.BoxVideo.divVideosSequencia_prev_click);
        jQuery('#divVideosSequencia_prev').click(WebTV.UserControls.BoxVideo.divVideosSequencia_next_click);
        
        WebTV.UserControls.BoxVideo.quantidadeVideosSequencia = jQuery('#divVideosSequenciaStripContainer > div').length;
    },
    divVideosSequencia_next_click: function(){
        click--;
        WebTV.UserControls.BoxVideo.moverVideosSequencia('right');
    },
    divVideosSequencia_prev_click: function(){    
        click++;
        WebTV.UserControls.BoxVideo.moverVideosSequencia('left');
    },
    moverVideosSequencia: function(side){
      
      jDiv = jQuery('#divVideosSequenciaStrip');
      var movement = parseInt(jDiv.css('marginLeft'), 10) + (240 * (side == 'left' ? -1 : 1)) + 'px';
      var qtdSeq  = jQuery('#divVideosSequenciaStrip > div').length;
      
      var strPrev = "url(App_Themes/Default/imagens/resultset_prev.gif)";
      var strNext = "url(App_Themes/Default/imagens/resultset_next.gif)";
      var curPrev = "pointer"
      var curNext = "pointer" 
     
      if(click < 0) /*não deixa volta o carro na primeira ocorrencia */
      { 
         strPrev = "url(App_Themes/Default/imagens/resultset_prev_off.gif)";
         curPrev = "default";
         click = 0;
      }
      else if(click == 0)
      {
         strPrev = "url(App_Themes/Default/imagens/resultset_prev_off.gif)";
         curPrev = "default";
         jDiv.animate({marginLeft: movement}, 'normal');
      }
      else if (click <= (qtdSeq-2))
      {  
         jDiv.animate({marginLeft: movement}, 'normal');
         if (click == (qtdSeq-2)){
            strNext = "url(App_Themes/Default/imagens/resultset_next_off.gif)"
            curNext = "default";
         }   
      }
      else /*não deixa passar o carro na ultima ocorrencia */
      {
        strNext = "url(App_Themes/Default/imagens/resultset_next_off.gif)"
        curNext = "default";
        click--;
      }
     
     /*imagem fundo*/
       document.getElementById('divVideosSequencia_prev').style.backgroundImage = strPrev; 
       document.getElementById('divVideosSequencia_next').style.backgroundImage = strNext;    
     /*cursor*/   
       document.getElementById('divVideosSequencia_prev').style.cursor = curPrev; 
       document.getElementById('divVideosSequencia_next').style.cursor = curNext;    
    },
    carrega_estrela : function(id){
        var estrela = jQuery('[id*=estrela]');                    
        for(var i=0;i<estrela.length;i++)
        {
            if(id>i)
              estrela[i].src = 'App_Themes/Default/imagens/estrela_on.gif';
            else  
              estrela[i].src = 'App_Themes/Default/imagens/estrela_off.gif';
        }
    },
    decabilita_estrela : function(){
        jQuery('[id*=estrela]').css('cursor','default');
    }
};
