dojo.require("dojo.fx.easing");
/*
 Funciones para manejar los contenidos de la portada
*/

var lista_fotos_portada = new Array();

function InicializaPortada()
{
  setInterval(timerPortada, 1000);
}

var portadaCounter = 0;
function timerPortada()
{
  // Si no estamos en la portada, o no hay fotos,  salimos
  if(tipoActivo != -1  ||  lista_fotos_portada.length <= 1)
    return;
  ++portadaCounter;
  if(portadaCounter % 5 == 0)
  {
    var fotoid;
    var ind = -1;
    for(var el in lista_fotos_portada)
      if(lista_fotos_portada[el] == fotoPortadaActiva)
      {
        ind = el;
        break;
      }
    ++ind;
    if(ind >= lista_fotos_portada.length)
      ind = 0;

    fotoid = lista_fotos_portada[ind];
    SelecFoto(fotoid);
  }
}

function loadPortada()
{
  if(procesandoRequest)
    return;
  procesandoRequest = true;
  dojo.xhrGet( { //
    url: base_url +"cms/lee_portada.php",
    handleAs: "json",
    preventCache: true,

    timeout: 5000, // Time in milliseconds

    // The LOAD function will be called on a successful response.
    load: function(response, ioArgs) {
      procesandoRequest = false;

      portadaCounter = 0;
      // Los textos de la intro
      dojo.byId("destacado_home").innerHTML = response["intro_"+ idioma];

      // La lista de fotos
      // Vacía las fotos de la galería
      dojo.empty("galeria_portada");
      dojo.empty("galeria_selector");
      lista_fotos_portada.splice(0, lista_fotos_portada.length);

      var tot = response["totimages"];
      var primimg = 0;
      for(var n = 0; n < tot; n++)
      {
        if(n == 0)
          primimg = response[n].id;
        lista_fotos_portada.push(response[n].id);
        CreaHtmlGaleria(response[n].id, response[n].imagen, response[n]["texto_"+ idioma]);
      }
      if(fotoPortadaActiva == 0)
        SelecFoto(primimg);
      else
        SelecFoto(fotoPortadaActiva);
      loadNoticiasPortada();

      return response;
    },

    // The ERROR function will be called in an error case.
    error: function(response, ioArgs) {
      procesandoRequest = false;
      MuestraAlerta("Error al intentar cargar la portada. Int&eacute;ntelo de nuevo.");
      console.error("HTTP status code: ", ioArgs.xhr.status);
      return response;
      }
    });
}

function loadNoticiasPortada()
{
  if(procesandoRequest)
    return;
  procesandoRequest = true;
  dojo.xhrGet( { //
    url: base_url +"cms/lee_noticias_portada.php",
    handleAs: "json",
    preventCache: true,

    timeout: 5000, // Time in milliseconds

    // The LOAD function will be called on a successful response.
    load: function(response, ioArgs) {
      procesandoRequest = false;

      // La lista de noticias
      // Primero vacía las noticias
      dojo.empty("lista_not_portada");

      var tot = response["total"];
      for(var n = 0; n < tot  &&  n < 3; n++)
      {
        CreaHtmlNoticiaPortada(response[n].id, response[n].idsubmenu, response[n].imagen, response[n].fecha,
                                    response[n]["titulo_"+ idioma], response[n]["resumen_"+ idioma]);
      }

      return response;
    },

    // The ERROR function will be called in an error case.
    error: function(response, ioArgs) {
      procesandoRequest = false;
      MuestraAlerta("Error al intentar cargar la portada. Int&eacute;ntelo de nuevo.");
      console.error("HTTP status code: ", ioArgs.xhr.status);
      return response;
      }
    });
}

function CreaHtmlGaleria(id, file, texto)
{
  // Una imagen grande para la galería
  /*var now;
  if(Date.now)
    now = Date.now();
  else
    now = new Date();
  var simg = "<img src=\""+ file +"?"+ now +"\" />";
  var ss = "<div class=\"pieFotoGal\">"+ texto +"</div>";
  var cell = dojo.create("td", {id: "galeria_foto"+ id, innerHTML: ss, valign: "bottom"}, "galeria_portada");
  dojo.addClass(cell, "fotoGaleria");
  dojo.style(cell, {backgroundImage: "url("+ file +"?"+ now +")"});
  // El botón selector correspondiente a esa imagen
  simg = "<a href=\"javascript:SelecFoto("+ id +")\" onfocus=\"blur()\"><img src=\"images/bluecheck_off.gif\" /></a>";
  nod1 = dojo.create("td", {id: "galeria_selector"+ id, innerHTML: simg}, "galeria_selector");
  dojo.style(nod1, {padding: "2px"});*/
}

function CreaHtmlNoticiaPortada(id, idsubmenu, file, fecha, titulo, resumen)
{
  var now;
  if(Date.now)
    now = Date.now();
  else
    now = new Date();
  var menuid = getMenuIdByTipo(1); // Obtiene el menú ID de noticias
	var ss = "<a href=\"javascript:MainMenuSelec("+ menuid +", 1, "+ idsubmenu +", "+ id +")\">";
	ss += "<span class=\"min_noticia\"><img src=\""+ file +"?"+ now +"\" alt=\"\"></span>";
	ss += "<span class=\"txt_noticia\">";
  ss += "<span class=\"tit_noticia\"><span class=\"fecha_noticia\">"+ fecha +"</span> ";
  ss += titulo +"</span>";
	ss += "<span class=\"txt_gris\">"+ resumen +"</span>";
	ss += "</span></a>";

  dojo.create("li", {id: "not_portada"+ id, innerHTML: ss}, "lista_not_portada");
}

function SelecFoto(id)
{
	//alert(fotoPortadaActiva);

  if(fotoPortadaActiva > 0)
  {
    // Selector off
    var obj = dojo.byId("galeria_selector"+ fotoPortadaActiva);
    if(obj)
    {
      var list = dojo.query("img", obj);
      if(list.length > 0)
      {
        list[0].src = "images/bluecheck_off.gif";
      }
    }
  }
  fotoPortadaActiva = id;
  if(fotoPortadaActiva > 0)
  {
    var scroll = 0;
    var obj = dojo.byId("galeria_foto"+ id);

    if(!obj)
      return;
    var list = dojo.query("li","galeria_portada");

    var ind = list.indexOf(obj);
    if(ind < 0)
      return;

    scroll = - 570 * ind;
    dojo.animateProperty({node: "tablaGaleria", duration: 800,
          easing: dojo.fx.easing.backOut,
          properties: {
            marginLeft: {end:scroll, units:"px"}
          }
        }).play();
    // Marca el selector
    obj = dojo.byId("galeria_selector"+ fotoPortadaActiva);
    list = dojo.query("img", obj);
    if(list.length > 0)
    {
      list[0].src = "images/bluecheck_on.gif";
    }
  }
  else
  {
    dojo.style("tablaGaleria", "marginLeft", 0);
  }
}

/*function buscaCursos()
{
  var idcentro = parseInt(dojo.byId("centros").value);
  var ss = dojo.byId("cursos").value;
  var res = ss.split("_");
  var idarea = 0;
  var idsubarea = 0;
  if(res.length > 1)
  {
    idarea = parseInt(res[0]);
    idsubarea = parseInt(res[1]);
  }
  //if(idarea == 0  ||  idsubarea == 0  ||  idcentro == 0)
  //  return;
  var subid = idarea * 10000 + idsubarea * 100 + idcentro;
  location.href = base_url + idioma +"/Formación/0/"+ cursos_menu_id +"/"+ cursos_menu_subid +"/"+ subid;
}*/


