/* Ĉi tiu dosiero estas parto de Pâturage
 * 
 * Copyright (C) 2007 - Guillaume Savaton <llumeao@gmail.com>
 * 
 * Pâturage  estas libera programo;  vi  povas  ĝin  pludistribui  kaj/aŭ
 * modifi je la  kondiĉoj de la GNUa Ĝenerala Publika Permesilo, eldonita
 * de «Free Software Foundation», laŭ la versio 2 de tiu Permesilo aŭ, se
 * vi preferas, ajna posta versio.
 * 
 * Ni distribuas  ĉi tiun  programon esperante  ke ĝi estos  utila, tamen
 * SEN IA AJN GARANTIO,  i.a. sen la implica garantio pri SURMERKATIGEBLO
 * aŭ  TAŬGECO POR IU KONKRETA CELO. Pliajn  detalojn  vidu  en  la  GNUa
 * Ĝenerala Publika Permesilo.
 * 
 * Ekzemplero  de  la  GNUa  Ĝenerala Publika    Permesilo   devas   esti
 * liverita al vi kun ĉi tiu programo; ricevis, turnu vin al
 * 
 * Free Software Foundation
 * 51 Franklin Street, Fifth Floor
 * Boston, MA 02110-1301, USA
 * ------------------------------------------------------------------- */

var miniaturoj = document.getElementsByName('miniaturo');
var lumbildo = document.getElementById('pg-lumbildo');
var antauaSago = document.getElementById('pg-antaua');
var sekvaSago = document.getElementById('pg-sekva');

var unuaVideblaMiniaturo = 0;
var selektitaMiniaturo = 0;
var mezaMiniaturo = Math.floor(miniaturoj.length / 2);

for(t in miniaturoj)
   miniaturoj[t].onclick = function () {
      for(t in miniaturoj) {
         if(miniaturoj[t] == this) {
            selektitaMiniaturo = unuaVideblaMiniaturo + parseInt(t);
            var delta = parseInt(t) - mezaMiniaturo;
            if(unuaVideblaMiniaturo + delta < 0)
               unuaVideblaMiniaturo = 0;
            else if(unuaVideblaMiniaturo + miniaturoj.length + delta > miniaturURLoj.length)
               unuaVideblaMiniaturo = miniaturURLoj.length - miniaturoj.length;
            else
               unuaVideblaMiniaturo += delta;
            ghisdatigu();
         }
      }
   }

ghisdatigu();

function ghisdatigu() {
   for(t in miniaturoj) {
      miniaturoj[t].src = miniaturURLoj[unuaVideblaMiniaturo + parseInt(t)];
      if(unuaVideblaMiniaturo + parseInt(t) == selektitaMiniaturo)
         miniaturoj[t].className = 'pg-miniaturo-selektita';
      else
         miniaturoj[t].className = 'pg-miniaturo-neselektita';
   }

   if(selektitaMiniaturo == 0)
      antauaSago.src = antauaSagoNeebla;
   else
      antauaSago.src = antauaSagoEbla;

   if(selektitaMiniaturo == miniaturURLoj.length - 1)
      sekvaSago.src = sekvaSagoNeebla;
   else
      sekvaSago.src = sekvaSagoEbla;

   lumbildo.src = bildURLoj[selektitaMiniaturo];
}

function sekvaLumbildo() {
   if(selektitaMiniaturo + 1 < miniaturURLoj.length) {
      ++selektitaMiniaturo;
      if(selektitaMiniaturo > mezaMiniaturo && unuaVideblaMiniaturo + miniaturoj.length < miniaturURLoj.length)
         ++unuaVideblaMiniaturo;
      ghisdatigu();
   }
}

function antauaLumbildo() {
   if(selektitaMiniaturo > 0) {
      --selektitaMiniaturo;
      if(selektitaMiniaturo < miniaturURLoj.length - mezaMiniaturo - 1 && unuaVideblaMiniaturo > 0)
         --unuaVideblaMiniaturo;
      ghisdatigu();
   }
}

