/*----------- 
  Slide class
  -----------*/
var slide_pagina_actual = 1;
var slide_paginas_total = 0;
var slide_canales_total = 0;	
var slide_fade_in_speed = 'slow';
var slide_fade_out_speed = 'fast';

function slide_inicio(paginas_total, canales_total) 
{
  slide_paginas_total = paginas_total;
  slide_canales_total = canales_total;
}

function slide_siguiente() 
{
//  alert('siguiente...');
  if(slide_pagina_actual < slide_paginas_total) {
    slide_pagina_actual += 1;

    // Highlight de los botones de canales
    if(slide_pagina_actual < slide_paginas_total) {
      $('.next a').addClass('active');	
    }
    else {
      $('.next a').removeClass('active');	
    }
    if(slide_pagina_actual > 1) {
      $('.prev a').addClass('active');	
    }

    var s1 = (slide_pagina_actual - 1);
    $('#pagina'+s1).hide(slide_fade_out_speed);
    $('#pagina'+slide_pagina_actual).show(slide_fade_in_speed);

    // Limpiar posibles error-divs
    $('.error').remove();				
  } 
}
		
function slide_anterior() 
{
  if(slide_pagina_actual > 1) {
    $('#pagina'+slide_pagina_actual).show(slide_fade_out_speed);
    slide_pagina_actual -= 1; 

    // Limpiar posibles error-divs
    $('.error').remove();				

    // Highlight de los botones de canales
    if(slide_pagina_actual < slide_paginas_total) {
      $('.next a').addClass('active');	
    }
    if(slide_pagina_actual > 1) {
      $('.prev a').addClass('active');	
    }
    else {
      $('.prev a').removeClass('active');
    }
    var s1 = (slide_pagina_actual + 1);
    $('#pagina'+s1).hide(slide_fade_out_speed);
    $('#pagina'+slide_pagina_actual).show(slide_fade_in_speed);
  }
  else {
    // Highlight de los botones de canales
    $('.prev a').removeClass('active')		
  }
}




/*----------- 
  Utils class
  -----------*/
var utils_f1 = '';
var utils_f2 = '';
var utils_f3 = '';
var utils_f4 = '';
var utils_f5 = '';
var utils_ultima_ventana_detalles = '';
var utils_titulo_original = '';

function utils_inicio(f1,f2,f3,f4,f5) 
{ 
  utils_f1 = f1;
  utils_f2 = f2;
  utils_f3 = f3;
  utils_f4 = f4;
  utils_f5 = f5;
}
	
function utils_marcar_la_solapa_del_dia(f) 
{
  $('.dia').each(function(i){
      var id = i + 1; 
      $('#dia'+id).removeClass('hoy');
  });

  if(f==utils_f1) $('#dia1').addClass('hoy'); 
  if(f==utils_f2) $('#dia2').addClass('hoy'); 
  if(f==utils_f3) $('#dia3').addClass('hoy'); 
  if(f==utils_f4) $('#dia4').addClass('hoy'); 
  if(f==utils_f5) $('#dia5').addClass('hoy'); 
}

function utils_mostrar_error_programacion_no_disponible() 
{
  var mensaje = '<div class="error"><p>Debido a los problemas t&eacute;cnicos ';
  mensaje += 'no disponemos de programaci&oacute;n para este d&iacute;a !</p></div>';
  $('.filtro-box').hide();
  $('.filtro2-box').hide();
  $('.next').hide();	
  $('.prev').hide();	
  $('.canales-box')[0].innerHTML = mensaje;
  
  $('div#manana').hide();
  $('div#tarde').hide();
  $('div#noche').hide();
  $('div.canales-paginacion').hide();
}

function utils_comprobar_si_los_programas_han_cargado() 
{
  if( $('.programa').length == 0) {
    utils_mostrar_error_programacion_no_disponible();
  }
}
	
function utils_mostrar_detalles_programa(idprograma) 
{
  utils_ocultar_detalles_programa(utils_ultima_ventana_detalles, false); 
  $('#detalles'+idprograma).show('slow');
  utils_ultima_ventana_detalles = idprograma;
  $('#detalles'+idprograma).parent().addClass('activa');

  // ponerle los puntos susp a titulos largos	
  var titulo = $('#enlacemostrardetalles'+idprograma)[0].innerHTML;
  utils_titulo_original = titulo;
  titulo = titulo.slice(0,26);
  if(utils_titulo_original.length != titulo.length) titulo += '...';
  $('#enlacemostrardetalles'+idprograma)[0].innerHTML = titulo;
}

function utils_ocultar_detalles_programa(idprograma, reestablecertitulo) 
{
  $('#detalles'+idprograma).hide('slow');
  $('#detalles'+idprograma).parent().removeClass('activa');

  // Reestablecer el titulo original(largo)
  // quitando los puntos susp a titulos largos	
  if(reestablecertitulo)	
    $('#enlacemostrardetalles'+idprograma)[0].innerHTML = utils_titulo_original;
}





/*----------- 
  Filtro class
  -----------*/
var filtro_generos = '';

function filtro_inicio() {
  filtro_generos = new Array();

  // Dejamos marcados algunos filtros desde inicio
  filtro_marcar_programas('peliculas');
  $('li.peliculas input')[0].checked = true;
  filtro_marcar_programas('informativos');
  $('li.informativos input')[0].checked = true;
  filtro_marcar_programas('entretenimiento');
  $('li.entretenimiento input')[0].checked = true;
}

function filtro_marcar_programas(genero) 
{
  if(filtro_generos[genero] == '1') {
    $('li.programa.'+genero).removeClass(genero+'-on');
    filtro_generos[genero] = '0';
  }
  else {
    $('li.programa.'+genero).addClass(genero+'-on');
    filtro_generos[genero] = '1';
  }
}

function filtro_actualizar_cambio_de_dia()
{
  for(genero in filtro_generos) {
    if(filtro_generos[genero] == '1') {
      $('li.programa.'+genero).addClass(genero+'-on');
    }

  }
}




/*----------- 
  Ajax class
  -----------*/
function ajax_inicio() { }

function ajax_cambiar_dia(lafecha) 
{
  utils_marcar_la_solapa_del_dia(lafecha);
  $('.barra-progreso').show('fast');
  $('.canales-box').hide('slow');
  $('.botones-box').after('<div class="relleno-fx" style="height:1000px;"> </div>');

  $.post('/tele/index.php', {
    fecha: lafecha
  }, function(respuesta) 
  {
    $('.filtro-box').show();
    $('.next').show();	
    $('.prev').show();	
    $('.canales-box')[0].innerHTML = respuesta;

    $('div#manana').show();
    $('div#tarde').show();
    $('div#noche').show();
    $('div.canales-paginacion').show();

    // Preservar la pagina actual (<< canales >>)
    // Si ves la programacion de canal nova, 
    // aunque cambies de fecha querras i
    // seguir viendo la programacion de ese canal
    var pagina_a_ir = slide_pagina_actual;
    slide_pagina_actual = 1;
    while(slide_pagina_actual < pagina_a_ir) {
      slide_siguiente();
    }

    utils_comprobar_si_los_programas_han_cargado(); 

    $('.relleno-fx').remove();
    $('.canales-box').show('normal');
    $('.barra-progreso').hide('fast');

    filtro_actualizar_cambio_de_dia(); 
  });
  
}

