//-------------------------------------------------------------------------------
//
// Vatrica.com Javascript
//
// (c)2008-2009 by TomiCh, webmaster na vatrica tocka com
//
// v1.15 22.5.2009. TomiCh
//
//-------------------------------------------------------------------------------

//-------------------------------------------------------------------------------
// globals
//-------------------------------------------------------------------------------

var xNS =(navigator.appName.indexOf('Netscape') != -1);
var xDOC=document;
var xURI='';
var xWSPCID=1428;

window.defaultStatus='VATRICA.com';
window.name='VATRICA';

//-------------------------------------------------------------------------------
// timeout
//-------------------------------------------------------------------------------
var xTIMEOUTTIME=60*60*1000;
var xTIMEOUT=setTimeout('document.location.href="index.cgi"',xTIMEOUTTIME);

//-------------------------------------------------------------------------------
// status
//-------------------------------------------------------------------------------

function S(pMSG) {
  if (pMSG!='') { pMSG='VATRICA.com ... '+pMSG }
  window.status=pMSG;
  return(true);
}

//-------------------------------------------------------------------------------
// AJAX
//-------------------------------------------------------------------------------

function ajaxEvaluate (pTXT) {
  var rSCRIPT = new RegExp('(?:<script.*?>)((\n|\r|.)*?)(?:<\/script>)', 'img');
  var tSCRIPT = '';
  while (tSCRIPT = rSCRIPT.exec(pTXT)) { eval(tSCRIPT[1]) }
}

function getDataReturnText (pURL, pTAG) { 
  var XMLHttpRequestObject = false; 
  if (window.XMLHttpRequest) {
    XMLHttpRequestObject = new XMLHttpRequest();
  } else if (window.ActiveXObject) {
    XMLHttpRequestObject = new 
     ActiveXObject("Microsoft.XMLHTTP");
  }

  if(XMLHttpRequestObject) {
    XMLHttpRequestObject.open('GET', pURL+'&DUMMY='+new Date().getTime()); 

    XMLHttpRequestObject.onreadystatechange = function() 
    { 
      if (XMLHttpRequestObject.readyState == 4 && 
        XMLHttpRequestObject.status == 200) { 
          ajaxCallback(XMLHttpRequestObject.responseText, pTAG);
          delete XMLHttpRequestObject;
          XMLHttpRequestObject = null;
      } 
    } 

    XMLHttpRequestObject.send(null); 
  }
}

function ajaxCallback (pTXT,pTAG) {
  ajaxEvaluate(pTXT);
  var rNAVIG=/^<NAVIGATOR>(.*?)<\/NAVIGATOR>/m;
  var tNAVIG=rNAVIG.exec(pTXT);
  if (tNAVIG) {
    pTXT=pTXT.replace(rNAVIG,'');
    if (getO('NAVIGATOR')) { getO('NAVIGATOR').innerHTML=tNAVIG[1] }
  }
  if (getO(pTAG)) { getO(pTAG).innerHTML=pTXT }
  if (pTAG=='LOGON') {
    Update('BODY',xURI);
    Update('MENU-KG',xURI)
    Update('KORISNIK',xURI);
  }
  if (pTAG=='BODY') { decodeURI('aURI') }
}

function Update(pTAG,pURI) {
  clearTimeout(xTIMEOUT);
  xTIMEOUT=setTimeout('document.location.href="index.cgi"',xTIMEOUTTIME);
  if (pTAG=='BODY') { 
    scrollTo(0,0);
    getO(pTAG).innerHTML='<div class="dLOADING"><img src="loading.gif" width="78" height="118" alt=" "/></div>' 
  }
  var rKG=/A=KG/;
  if (rKG.test(pURI) && pTAG=='BODY') {
    var tURI=pURI.replace(/CHINTERNET=[0-9]+&/,'');
    getDataReturnText('?JSRS=MENU-KG&'+tURI,'MENU-KG');
  }
  getDataReturnText('?JSRS='+pTAG+'&'+pURI,pTAG);
}

function encodeHtml(pTXT) {
  var tRET=escape(pTXT);
  tRET=tRET.replace(/&/g, '%26');
  tRET=tRET.replace(/\//g,'%2F');
  tRET=tRET.replace(/=/g, '%3D');
  tRET=tRET.replace(/\?/g,'%3F');
  tRET=tRET.replace(/@/g, '%40');
  return(tRET);
} 

function getElementFormValues(pE) {
  var tURI='';
  var rTAG=/^(TABLE|TBODY|TR|TD|NOBR|CENTER|DIV|BR|A|B|SPAN)$/;
  for (var i=0; i<pE.childNodes.length; i++) {
    var tNODE=pE.childNodes[i];
    if (rTAG.test(tNODE.tagName))  { tURI+=getElementFormValues(tNODE) }

    if (tNODE.id) {
      if (tNODE.tagName=='INPUT') {
        if (tNODE.type=='password')      { tURI+=tNODE.id+'='+encodeHtml(tNODE.value)+'&' }
        else if (tNODE.type=='text')     { tURI+=tNODE.id+'='+encodeHtml(tNODE.value)+'&' }
        else if (tNODE.type=='hidden')   { tURI+=tNODE.id+'='+encodeHtml(tNODE.value)+'&' }
        else if (tNODE.type=='checkbox') { if (tNODE.checked) { tURI+=tNODE.id+'='+encodeHtml(tNODE.value)+'&' } }
      }
      else if (tNODE.tagName=='TEXTAREA') { tURI+=tNODE.id+'='+encodeHtml(tNODE.value)+'&' }
      else if (tNODE.tagName=='SELECT')   { tURI+=tNODE.id+'='+encodeHtml(tNODE.options[tNODE.selectedIndex].value)+'&' }
    }
    else if (tNODE.name && tNODE.tagName=='INPUT' && (tNODE.type=='radio') && tNODE.checked) {
      tURI+=tNODE.name+'='+encodeHtml(tNODE.value)+'&'
    }
  }
  return(tURI);
}

function UpdateForm(pTAG,pFORMID) {
  var tURI=getElementFormValues(getO(pFORMID));
  Update(pTAG,tURI);
}

//-------------------------------------------------------------------------------
// switch
//-------------------------------------------------------------------------------

// class
function CC(pO,pID) {
  pO.className=pO.className.substr(0,pO.className.length-1)+pID;
}

// button
function CB(pO,pID) {
  pO.src=pO.src.replace(/[0-2]./,pID+'.');
}

// wishlist
function CW(pID,pC) {
  if (pC==0) {
    tRET='<a class="aWSH0" href="#" onClick="CW(\''+pID+'\',1);return(false)" onMouseOver="return(S(\'Dodaj artikl na listu želja!\'))" onMouseOut=";return(S(\'\'))">Dodaj</a> artikl na listu želja!';
  }
  else if (pC==1) {
    tRET='<a class="aWSH1" href="#" onClick="CW(\''+pID+'\',0);return(false)" onMouseOver="return(S(\'Obriši artikl s liste želja!\'))" onMouseOut=";return(S(\'\'))">Obriši</a> artikl s liste želja!'
  }
  getO('WSH'+pID).innerHTML=tRET;
  Update('WISHLISTINFO','A=KG&WSH='+pID+pC);
}

//-------------------------------------------------------------------------------
// goto
//-------------------------------------------------------------------------------

function GoTo(pURLID) {
  if (pURLID) { document.location.href='?ACCEPT='+pURLID }
  else { document.location.href='http://www.google.hr/' }
}

//-------------------------------------------------------------------------------
// field and object values
//-------------------------------------------------------------------------------

function getS (pID) {
  var tSEL=getO(pID);
  if (tSEL && tSEL.selectedIndex>=0) { return(tSEL.options[tSEL.selectedIndex].value) }
  return('')
}

function getT (pID) {
  var tTXT=getO(pID);
  if (tTXT) { return(tTXT.value) }
  return('')
}

function getO (pID) {
  return(xDOC.getElementById(pID))
}

//-------------------------------------------------------------------------------
//  WSP Capcha
//-------------------------------------------------------------------------------

function WSPCaptcha(ID) {
  if (!ID) { ID='WSP' }
  var chars = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz';
  var wsp_key_length = 32;
  var wsp_key = '';
  for (var i=0; i<wsp_key_length; i++) {
    var rnum = Math.floor(Math.random() * (chars.length-1));
    wsp_key += chars.substring(rnum, rnum+1);
  }
  getO(ID+'_CAPTCHA').src = 'http://webspamprotect.com/captcha.php?id=' + xWSPCID + '&key=' + wsp_key;
  getO(ID+'_KEY').value   = wsp_key;
}

//-------------------------------------------------------------------------------
// forms
//-------------------------------------------------------------------------------

function CheckForm(pFORM) {

  var rEMAIL=/[\w\-\.]+\@[\-\w\.]+\.[\w\-\.]{2,4}/;
  var rIME=/[\w\.]+.*\s+.*[\w\.]+/;
  var rPRAZNO=/[\d\w]+/;
  var rCAPTCHA=/^[A-Z]{6}$/;

  if (!rCAPTCHA.test(getT('OR_CODE'))) {
    alert('Niste upisali ispravni kontrolni kod (6 VELIKIH slova)!');
    getO('OR_CODE').focus();
    return(false);
  }
  else if (!rIME.test(getT('IME'))) {
    alert('Niste upisali ime i prezime!');
    getO('IME').focus();
    return(false);
  }
  else if (!rPRAZNO.test(getT('ULI'))) {
    alert('Niste upisali ulicu i broj!');
    getO('ULI').focus();
    return(false);
  }
  else if (!rPRAZNO.test(getT('POS'))) {
    alert('Niste upisali poštu i mjesto!');
    getO('POS').focus();
    return(false);
  }
  else if (!rEMAIL.test(getT('EMA'))) {
    alert('Niste upisali ispravnu E-mail adresu!');
    getO('EMA').focus();
    return(false);
  }

  return(true);
}


//-------------------------------------------------------------------------------
// decode uri
//-------------------------------------------------------------------------------

function decodeURI(pCLASS) {
  if (!xDOC.getElementsByTagName && !xDOC.createElement && !xDOC.createTextNode) return;
  var tNODES=xDOC.getElementsByTagName('span');
  for(var tI=tNODES.length-1;tI>=0;tI--) {
    if (tNODES[tI].className=='sURI') {
      var rATH=/\(ath\]/;
      var rDOTH=/\[doth\)/g;
      var tNODE=xDOC.createElement('a');
      var tURI=tNODES[tI].firstChild.nodeValue;
      tURI=tURI.replace(rATH,'@');
      tURI=tURI.replace(rDOTH,'.');
      tNODE.setAttribute('href','mailto:'+tURI);
      tNODE.setAttribute('className',pCLASS);
      tNODE.setAttribute('class',pCLASS);
      tNODE.appendChild(xDOC.createTextNode(tURI));
      var tOUTPUT = tNODES[tI].parentNode;
      for(var tJ=0;tJ<tOUTPUT.childNodes.length;tJ++)
        if (tOUTPUT.childNodes[tJ] == tNODES[tI]) {
          if (!tOUTPUT.replaceChild) return;
          tOUTPUT.replaceChild(tNODE,tOUTPUT.childNodes[tJ]);
          break;
        }
    }
  }
}