/********************************************************************************************/
/*   Funkcije za rad web-a u AJAX-u                                                         */ 
/*   Autor ovog koda je "ZJKiza"                                                            */
/*   Autor zadrzava sva autorska prava.                                                     */
/*   Ovaj kod se ne moze komercijalno koristiti bez odobrenja autora!                       */
/*   Copyright © 2008 "ZJKiza"                                                              */
/********************************************************************************************/
var VremeIzvrsavanja;
var VremeCekanjaNaOdzivServera = 20000 ; /* 10 sekundi */
var TeksZaUcitavanje = '<p class=KlasicanTekstGo><br/><br/><br/><br/><img src="img/ucitavanje.gif"  height="15" width="15" border="0"/><b>&nbsp;&nbsp;U&#269;itavanje strane je u toku, molimo vas sa&#269;ekajte.</b></p>';

function VratiXMLhttpObjekat (){
	var xmlhttp = false;
	try {
			xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
	} catch (e) {
					try {
							xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
					} catch (E) {
									xmlhttp = false;
					}
	}
	if (!xmlhttp && typeof XMLHttpRequest != 'undefined') 
		{xmlhttp = new XMLHttpRequest();}
	
	return xmlhttp;
	}

function IzgenerisiStranu (serverPage, objID, getOrPost, str){
	obj = document.getElementById(objID);
	obj.innerHTML = TeksZaUcitavanje;
	xmlhttp = VratiXMLhttpObjekat ();
	
	if (getOrPost == "get"){
			xmlhttp.open("GET", serverPage);
			VremeIzvrsavanja = setTimeout("IstekloJeVreme(xmlhttp)",VremeCekanjaNaOdzivServera);
			xmlhttp.onreadystatechange = function() {
				if (xmlhttp.readyState == 4){
						clearTimeout(VremeIzvrsavanja);
						if (xmlhttp.status == 200) 
							{obj.innerHTML = xmlhttp.responseText;}
				}
			}
			xmlhttp.send(null);
	
	} else {
			xmlhttp.open("POST", serverPage, true);
			VremeIzvrsavanja = setTimeout("IstekloJeVreme(xmlhttp)",VremeCekanjaNaOdzivServera);
			xmlhttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded; charset=UTF-8");
			xmlhttp.onreadystatechange = function() {
				if (xmlhttp.readyState == 4){
						clearTimeout(VremeIzvrsavanja);
						if (xmlhttp.status == 200) 
							{obj.innerHTML = xmlhttp.responseText;}
				}
			}
			xmlhttp.send(str);
	}
}

function VratiVrednostiForme (fobj, valfunc){
	var str = "";
	ProveraPodatakaForme = true;
	var val;

	for(var i = 0; i < fobj.elements.length; i++)
	{
		if(valfunc) {
			if (ProveraPodatakaForme == true){
				val = valfunc (fobj.elements[i].value,fobj.elements[i].name);
				if (val == false)
					{ProveraPodatakaForme = false;}
			}
		}
		str += fobj.elements[i].name + "=" + escape(fobj.elements[i].value) + "&";
	}
	
	return str;
}

function PotvrdiForm (theform, serverPage, objID, valfunc){
	var str = VratiVrednostiForme(theform,valfunc);
	
	if (ProveraPodatakaForme == true){
		
		IzgenerisiStranu (serverPage, objID, "post", str);
	}
}

function IstekloJeVreme(xmlhttp){
	xmlhttp.abort();
	alert("Doslo je do problema na serveru!\nVreme predvidjeno za odziv servera je prekoraceno.\nProbajte kasnije.");
	
}

function OsveziSliku(IDtag, AdresaSlike) {
    var Datum = new Date();
    obj = document.getElementById(IDtag)
   
    if (document.images) {
        obj.src = AdresaSlike+'?'+Datum.getTime();
    }
}

/**************************************************************************/
/***************************************************************************/
/********** SPECIFICNA FORMA - INK4JET (za) Podloga_Email **********************/

function PotvrdiFormu_Podloga_Email (theform, serverPage, objID, valfunc){
	var str = VratiVrednostiForme(theform,valfunc);
	
	if(!Provera_UnesenihPodataka(theform)) {ProveraPodatakaForme = false;}
	else {ProveraPodatakaForme = true;}
	
	if (ProveraPodatakaForme == true){
		
		IzgenerisiStranu (serverPage, objID, "post", str);
	}
}

function Provera_UnesenihPodataka(theForm)
{   
	if(!ProveraForme("Ime ", theForm.ime.value, 3, 40))
    	{   
    		theForm.ime.focus();
        	return false;
    	}	

    if(!Kontrola_EposteV11(theForm.e_posta.value))
    	{   
    		theForm.e_posta.focus();
        	return false;
    	}    	
    	
	if(!ProveraForme("Text poruke ", theForm.komentar.value, 3, 2000))
    	{   
    		theForm.komentar.focus();
        	return false;
    	}    	
    return true;
}

function UhvatiElementeFormeDopunaKertridza(serverPage, objID, izbor_radio, TipaKertridza, ml) {
     var Kontrolna = false;
	 for (var i = 0; i < izbor_radio.length; ++i) {
            if (izbor_radio[i].checked)
            {  
				Kontrolna = true;
            	linkZaCenuDopune = izbor_radio[i].name+'='+izbor_radio[i].value+'&'+TipaKertridza.name+'='+TipaKertridza.value+'&'+ml.name+'='+ml.value ;  
            }         
     }
     if(Kontrolna) 
     		{ IzgenerisiStranu (serverPage, objID, "post", linkZaCenuDopune); }
     else 
     		{ alert('Niste izabrali izabrali sve elemente formulara.');}
}

/**************************************************************************/
/**************************************************************************/
/************** Rad sa formama ********************************************/

function broj_znakova(ProveraTeksta, TekuciBrojZnakova, max_broj_znakova)
{
	if (ProveraTeksta.value.length > max_broj_znakova)
		ProveraTeksta.value = ProveraTeksta.value.substring(0, max_broj_znakova);
	else
		TekuciBrojZnakova.value = max_broj_znakova - ProveraTeksta.value.length;
}


function Kontrola_EposteV10(ePosta) 
{
    var Patern = /^[\w-]+(\.[\w-]+)*@([\w-]+\.)+[a-zA-Z]{2,7}$/;

    if (!ePosta.match(Patern)) 
    		{ 
    			alert("E-mail je neispravan!\n Pokusajte ponovo")
    			return false 
    		}
    return true
}

function Kontrola_EposteV11(ePosta){
    if (ePosta == null || ePosta.length == 0 || ePosta.indexOf(".") == -1 || ePosta.indexOf("@") == -1 || ePosta.indexOf(" ") != -1)
    		{ alert("E-mail je neispravan!\n Pokusajte ponovo."); return false; }

    regex=/(^\w{2,}\.?\w{2,})@/;
    Poklapanje = regex.exec(ePosta);

    if (!Poklapanje){ alert("E-mail je neispravan!\n Pokusajte ponovo."); return false; }

    regex=/@(\[\d{1,3}\.\d{1,3}\.\d{1,3}.\d{1,3}\])$/;
    Poklapanje = regex.exec(ePosta);

    if(Poklapanje){ return true; } 
    else {
        	regex=/@(\w{2,}\.(\w{2,}\.)?[a-zA-Z]{2,3})$/;
        	Poklapanje = regex.exec(ePosta);
        	
        	if(!Poklapanje){ alert("E-mail je neispravan!\n Pokusajte ponovo."); return false; }
    }
    return true;
}

function ProveraForme(ImePoljaForme, VrednostPoljaForme, MinBrojKaraktera, MaxBrojKaraktera ){
    
	var Duzina = VrednostPoljaForme.length;
	
	prazno=true;
      for (var i=0; i<Duzina; ++i)
    		{ if(VrednostPoljaForme.charAt(i)!=" ")  prazno=false}
	
	if (prazno) {  
    	alert(ImePoljaForme+" ne moze biti praznina.")
    	return false	
    	}

	if (MinBrojKaraktera>Duzina) 
		{     alert(ImePoljaForme+" je kratko!\nNije ispunjen uslov o minimalnom broju karaktera.")
			  return false 
		}

	if (Duzina>MaxBrojKaraktera)
		{     alert(ImePoljaForme+" je dugacko!\nPrelazi broj dozvoljenih karaktera.")
			  return false 
		}
    	return true	
}

/**************************************************************************/
/**************************************************************************/
       function IzracunajCenuDopune(f){
           if (f.ml.value==0) {alert('Morate uneti zapreminu vaseg kertridža');} 
           else
           {
       	  for (var i = 0; i < f.vrstaKertridza.length;i++)
       		{
              		if(f.vrstaKertridza[i].checked)
              			{f.CenaDopuneJe.value = Math.round( ((((f.ml.value * f.IzborTipaKertridza.value) + parseFloat(f.vrstaKertridza[i].value) )/10)+0.4))*10;}
            	}
           }
        }
        
/**************************************************************************/
/**************************************************************************/
/************ Meni grana *************************************************/
function Otvori(id_ime, slika) {

	obj=document.getElementById(id_ime);
	visible=(obj.style.display!="none")
	if (visible) 
		{	obj.style.display="none";	
			document.getElementById(slika).src = "img/fasciklaZatvorena.gif";
		}
	else 
		{	obj.style.display="block";	
		    document.getElementById(slika).src = "img/fasciklaOtvorena.gif";
		}
}	

function Zatvori() {

	divs=document.getElementsByTagName("div");
	for (i=0; i<divs.length; i++) 
		{	divs[i].style.display="none";}
}