<!--
/*----- setlang.js ------------------------------------------------------------- 
  design by Vesa Paavilainen, copyright Zentointeractive Oy 2006
  
  info:
  -handleExLangDropdown(1)      lukee valintalistan elementin, .onchange
  -handleExNaviRefresh(1)       asettaa esimerkki -navin elementit, -||-
  -setExLangDropdown(1)         asettaa valintalistan elementin, .onload
  -setExLangCookie(3)           asettaa cookien
  -readExLangCookie(1)          lukee nykyisen cookien
    
  todo:
  -pitaisi tarjota noscript -tagilla paasy buttoniin, joka lahettaisia kaavakkeen
   php:lle, joka muuttaisia cookien ilman sivun uudelleen lataamista?
   -> kayttoliittymassa tilaa kaventaa select -elementtia->rinnakkain
  -periaatteessa tama voisi automaattisesti avata esimerkkivalilehden
  
  huom:
  -tiedosto on tallennettava 'ansi' -muodossa; ongelmat erikoismerkeissa...
  -window.onload kutsu suoritetaan modules.js -tiedostossa
  
------------------------------------------------------------------------------*/





/*----- toiminnot ------------------------------------------------------------*/
  function handleExLangDropdown(myid){
    try {
      var mySelectedIndex = myid.selectedIndex;
      var mySelectedValue = myid.options[mySelectedIndex].value;
      
      setExLangCookie(myid.id, mySelectedIndex, 10);
    }
    
    catch(poikkeus) {
      alert('Sovellusvirhe. Evästettä ei voida asettaa: kielivalinta ei pysy muistissa.');
    }
    return false;
  }


  function setExLangDropdown(myid){
    try {
      var myCurrentSelection = readExLangCookie(myid);
      document.getElementById(myid).options[myCurrentSelection].selected = true;
    }
    
    catch(poikkeus) {
      alert('Sovellusvirhe. Evästettä ei voida lukea: kielivalinta ei ole muistissa.');
    }
    return false;
  }


  function handleExNaviRefresh(docurl) {
    try {
      window.location.href = docurl;
    }
    
    catch(poikkeus) {
      alert('Sovellusvirhe (ex). Sivun tietojen päivittäminen ei onnistunut (kielikohtaiset esimerkit).');
    }
  }

  /*----- muokattu cookies.js -tiedoston funktiosta setMyCookie() ------------*/
  function setExLangCookie(cookieName,cookieValue,nDays) {
    try {         
      var today = new Date();
      var expire = new Date();
      if (nDays==null || nDays==0) nDays=1;
      expire.setTime(today.getTime() + 3600000*24*nDays);
      document.cookie = cookieName+"="+escape(cookieValue)+ ";expires="+expire.toGMTString()+"; path=/";
    }
    
    catch(poikkeus) {
      alert('Sovellusvirhe (ex). Evästettä ei voida asettaa: välilehtien kutistaminen ei ole mahdollista.');
    }
  }


  /*----- muokattu cookies.js -tiedoston funktiosta readMyCookie() -----------*/
  function readExLangCookie(cookieName) {
    try {
      var theCookie=""+document.cookie;
      var ind=theCookie.indexOf(cookieName);
      
      if(ind==-1 || cookieName==""){  //== 1. lataus tai virhe...
        return 0;                     //-> 1. vaihtoehto
      } else {                        //muut lataukset
        var ind1=theCookie.indexOf(';',ind);
        if (ind1==-1) ind1=theCookie.length; 
        theCookie =  unescape(theCookie.substring(ind+cookieName.length+1,ind1));
    
        return theCookie;
      }
    }
    
    catch(poikkeus) {
      alert('Sovellusvirhe (ex). Evästettä ei voida lukea: välilehtien kutistaminen ei ole mahdollista.');
    }    
  }
  
//-->

