// Rutinas comunes de FifteenFrames :: graffiti masters

function PonStatus(){
  if ( IsDefined('webstatus'))
    window.status = webstatus;
  else
    window.status = 'FifteenFrames :: graffiti masters';
}
// *****************************************************************************
function HazRollPrevios(img) {

  PonStatus();

  // En los cuadros previos, si es MouseOut y ya se ha visto, se deja con la imgroll
  imagen = img.id.substr(img.id.lastIndexOf('imgprev')+7, img.id.length); //Extrae seccion y número de imágen, ejemplo: 1_10

  if ( YaVisto(imagen) ) {
    return false;
  }

  HazRoll(img);
  return true;
}
// *****************************************************************************
function YaVisto(seccion_img) {  // Recibe la sección y la imágen y devuelve si se ha visitado ya o no
  for ( idx=0;idx<=vistos.length-1;idx++ ) {
    if ( vistos[idx] == seccion_img ){  //La imágen ya se ha visto: ej.: 1_10 (sección 1 imágen 10)
      return true;
    }
  }
  return false;
}
// *****************************************************************************
function MuestraInfo(verinfo, seccionactual, imgidx) {  // Muestra u oculta la div de información sobre una imágen

  infodiv  = DOMGet('div_info');
  infotext = DOMGet('span_info');

  if ( verinfo ){
    infodiv.style.visibility = 'visible';
    infotext.innerHTML       = info[seccionactual-1][imgidx-1];
  }
  else{
    infodiv.style.visibility = 'hidden';
    infotext.innerHTML       = '';
  }

  return true;
}
// *****************************************************************************
function cargaimagenenmarco(imgprevio, imgidx, verinfo) {  // Recibe el índice de la imágen a cargar en el marco
  imgprevio.blur();

  // Si se quiere ver info o no. Importante hacerlo antes que asignar el src a la imágen
  MuestraInfo(verinfo, seccionactual, imgidx);

  img = DOMGet('img_marco');
  img.src = 'images/seccion'+seccionactual+'/'+imgidx+'.jpg';
  vistos.push(seccionactual+'_'+imgidx);  //Añade la imágen vista al array
}
// *****************************************************************************
function CargaImagenFrame(imagen,contenido){  //Carga u oculta el iframe o img_marco segun sea necesario

  iframe = DOMGet('frame_marco');
  img    = DOMGet('img_marco');

  if ( imagen ) {  //Se quiere ver la imágen, oculta el iframe
    img.src = 'images/1x1.gif';
    img.style.display = '';

    iframe.src = '';
    iframe.style.display = 'none';

    return img;
  }
  else{           // Se quiere ver el marco, oculta imagen
    img.style.display = 'none';

    iframe.src = contenido;
    iframe.style.display = '';

    return iframe;
  }
}
// *****************************************************************************
function DimensionaContenido(){
  div = DOMGet('div_contenido');
  div.style.width = (document.body.clientWidth - 200) + 'px';
  AjustaScrollMarco();
}
// *****************************************************************************
function AjustaScrollMarco(){

  // Si es una de las secciones, no el contacto por ejemplo
  if ( seccionactual != -1 ) {
    img     = DOMGet('img_marco');

    // Se ejecuta al cargar una imágen en img_marco. Si la imágen es más ancha que el marco y se necesitan
    // barras de desplazamiento, pongo margin al marco, si no se lo quito. Sólo afecta a MSIE.
    if ( Navegador == 'MSIE' ) {

      div  = DOMGet('div_marco');

      //Necesita scroll, amplio el márgen para dejar sitio a la barra de desplazamiento y quito el borde al marco
      if ( img.width > div.clientWidth){
         img.style.marginBottom = '17px';
         div.style.borderBottom = '0px solid #7C511C';
      }
      //No necesita scroll, dejo todo como al principio
      else{
         img.style.marginBottom = '-3px'; /* Debería ser 0, pero necesita el -3... */
         div.style.borderBottom = '1px solid #7C511C';
      }
    }
  }

}
// *****************************************************************************
function MenuClick(opcion, usarprevionumerado) {  // Cuando el usuario elige una sección "div1,2,3,4 o 5". Si es 0 volvemos a posicion inicial.

  //Si se pincha sobre una opcion invisible que tiene el 1x1.gif, se aborta
  if ( opcion != 0 ) {
    img = DOMGet('img_menu'+opcion);
    if ( img.src.lastIndexOf('images/1x1') > -1 ) {
       return false;
    }
  }

  //Oculto la div de info si está visible
  MuestraInfo(false);

  //Oculto el iframe si esta visible y muestra img_marco en su lugar
  img = CargaImagenFrame(true,'');

  //Restauro el marco por si se modificó en otra opción
  marco = DOMGet('div_marco');
  marco.style.borderBottom = '1px solid #7C511C';


  div = DOMGet('div_previos');

  //Elimina los previos que hubiese anteriormente
  while (div.firstChild) {
     div.removeChild(div.firstChild);
  }

  if ( opcion == 0 ) {

    // Carga la imágen intro de la sección
    img.src = 'images/main.jpg';

    // Muestra de nuevo el menu cargando las imagenes
    for (i=secciones.length; i>0; i--){
      if ( i!=opcion) {
        img = DOMGet('img_menu'+i);
        img.src = 'images/menu/'+i+idioma+'.gif';
      }
    }

    //Muestra los botones del menu
    botones = DOMGet('div_menubotones');
    botones.style.display = "";


    DOMGet('img_logomenu').blur();

    // Si hay una sección cargada ahora mismo, la devuelve a su posición original (tomando la dummy como referencia) y el margin-right de las secciones
    if ( seccionactual !=0  ) {
      imgseccion = DOMGet('img_menu'+seccionactual);
////////////////////////////////      Mueve('div_menu'+seccionactual,'div_menu'+seccionactual+'dummy',(-1*imgseccion.clientWidth)-5,0,1);
    }

  }
  else {
      // Carga la imágen intro de la sección
      img.src = 'images/seccion'+opcion+'/intro.gif';

      //Quita el foco de la imágen sobre la que se pinchó
      DOMGet('img_menu'+opcion).blur();

      // Oculta el resto de divs del menú poniendo el gif transparente
      for (i=secciones.length; i>0; i--){
         if ( i!=opcion ) {
          img = DOMGet('img_menu'+i);
          img.src = 'images/menu/'+i+idioma+'.gif';
          img.src = 'images/1x1.gif';
         }
      }

      //Oculta los botones del menu
      botones = DOMGet('div_menubotones');
      botones.style.display = "none";


      // Mueve la opción elegida hacia el logo
//////////////////Mueve('div_menu'+opcion,'img_logomenu',100,9,1);

      // Carga los cuadros de previos
      for (i=imgsporseccion[opcion-1]; i>0; i--){

        prev = document.createElement('div');
        prev.setAttribute('class','div_previo');
        prev.style.display = 'inline'; // No lo hace si lo pongo en el .css ...

         // Si se usan imágenes determinadas (1,2,3...) como previo o si se usa la misma imágen para todos por defecto
        if ( usarprevionumerado ){
          imagenprevio = 'images/seccion'+opcion+'/'+i+'l.jpg';
          prev.innerHTML = '<a id="'+opcion+'_'+i+'" class="a_previo" href="#"><img id="imgprev'+opcion+'_'+i+'" src="' + imagenprevio +'" onClick="cargaimagenenmarco(this,'+i+',true); return false;"></a>';
        }
        else {
            //Si la imágen que representa este previo ya se ha visto, pongo la imágen de "roll". Si no se ha visto aún, la normal.
            if ( YaVisto(opcion+'_'+i) )
              imagenprevio = 'images/previoroll.gif'; //La imágen ya se ha visto, mantengo el "roll" en el cuadro previo
            else
              imagenprevio = 'images/previo.gif';

            prev.innerHTML = '<a id="'+opcion+'_'+i+'" class="a_previo" href="#"><img id="imgprev'+opcion+'_'+i+'" src="' + imagenprevio +'" onClick="cargaimagenenmarco(this,'+i+',true); return false;" onMouseover="HazRollPrevios(this);" onMouseout="HazRollPrevios(this);"></a>';
        }

        div.appendChild(prev);
      }

      //Actualiza la sección actual
      seccionactual = opcion;

  }
  return false;
}
// *****************************************************************************
function CargaContacto() {

  seccionactual = -1;

  img = DOMGet('img_contacto');
  img.blur();

  //Oculto img_marco y muestra iframe
  iframe = CargaImagenFrame(false,'contacto.php?l='+idioma);
  iframe.height = 330+'px';
  iframe.style.overflow = 'hidden';
}
// *****************************************************************************
function CargaNosotros() {

  seccionactual = -1;

  img = DOMGet('img_contacto');
  img.blur();

  //Oculto img_marco y muestra iframe
  iframe = CargaImagenFrame(false,'nosotros.php?l='+idioma);
  iframe.height = 330+'px';
  iframe.style.overflow = 'hidden';
}
// *****************************************************************************
function AjustaContacto(){

  // Reajusta el ancho del texto, necesario para FireFox
  div = DOMGet('div_contenido_contacto');
  //img = DOMGet('div_img_contacto');
  div.style.width = (document.body.clientWidth - 330) + 'px';
}
// *****************************************************************************
