function checkUser(){
	var korisnickoIme = document.frmLog.txtEmail.value;
	if(korisnickoIme.length < 2 || korisnickoIme.length > 80){
		return false;
	} else {
		if (pravilanUnos(korisnickoIme.split(""))){
			return true;
		} else {
			return false;
		}
	}
}

function checkPass(){
	var lozinka = document.frmLog.txtPass.value;
	if(lozinka.length < 2 || lozinka.length > 25){
		return false;
	} else {
		if (pravilanUnos(lozinka.split(""))){
			return true;
		} else {
			return false;
		}
	}
}

function checkLog(){
	var userOk, passOk;
	passOk = true;
	userOk = checkUser();
	//passOk = checkPass();
	if(userOk && passOk){
		return true;
	} else {
		if(! userOk){
			alert("Email nije pravilno unet!\n(Mora imati od 2 do 80 alfanumerickih karaktera)");
		} else {
			alert("Lozinka nije pravilno uneta!\n(Mora imati od 2 do 25 alfanumerickih karaktera)");
		}
		return false;
	}
}

function pravilanUnos(sArray){
	var sKarakteri = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789@._-";
	for (var i=0; i < sArray.length; i++){
		if (sKarakteri.indexOf(sArray[i]) == -1) return false;	
	}
	return true;
}

function checkRegPass(){
	var lozinka = document.frmLog.txtPass.value;
	var lozinkaRe = document.frmLog.txtRePass.value;
	if(lozinka != lozinkaRe){
		alert('Ne podudaraju se lozinke!');
		return false;
	} else {
		return true;
	}
}

function chekBasicReg(){
	var ispravno;
	var poruka, zarez;
	
	ispravno = true;
	poruka = "Morate uneti email i lozinku!";
	zarez = "";
	
	ispravno = checkLog();
	
	ispravno = checkRegPass();
	
	// zavrsena je provera
	if(ispravno){
		return true;
	} else {
		alert(poruka);
		return false;
	}
}

function checkReg(){
	var ispravno;
	var poruka, zarez;
	var objOpsirno;
	objOpsirno = document.frmLog.chkOpsirno;
	
	ispravno = true;
	poruka = "Morate uneti ";
	zarez = "";
	
	ispravno = checkLog();
	
	//ispravno = checkRegPass();
	
	if(ispravno){
		// proveravam da li je opsirniji unos
		if(objOpsirno.checked == true){
			// proveravam naziv
			if(document.frmLog.txtIme.value + "" == ""){
				ispravno = false;
				poruka += zarez + "ime";
				zarez = ", ";
			}
			// proveravam naziv
			if(document.frmLog.txtPrezime.value + "" == ""){
				ispravno = false;
				poruka += zarez + "prezime";
				zarez = ", ";
			}
			// proveravam adresu
			if(document.frmLog.txtAdresa.value + "" == ""){
				ispravno = false;
				poruka += zarez + "adresu";
				zarez = ", ";
			}
			// proveravam postanski broj
			if(document.frmLog.txtZIP.value + "" == ""){
				ispravno = false;
				poruka += zarez + "postanski broj";
				zarez = ", ";
			}
			// proveravam mesto
			if(document.frmLog.txtMobilni.value + "" == ""){
				ispravno = false;
				poruka += zarez + "mobilni telefon";
				zarez = ", ";
			}
			// proveravam email
			if(document.frmLog.txtEmail.value + "" == ""){
				ispravno = false;
				poruka += zarez + "email";
				zarez = ", ";
			}
			// proveravam telefon
			if(document.frmLog.txtTelefon.value + "" == ""){
				ispravno = false;
				poruka += zarez + "telefon";
				zarez = ", ";
			}
		}
		
		poruka += " da biste se registrovali!";
		
		// zavrsena je provera
		if(ispravno){
			return true;
		} else {
			alert(poruka);
			return false;
		}
	} else { return false; }
}

function novi_nalog(strana){
	var email;
	email = encodeURI(document.frmLog.txtEmail.value);
	window.location.href = "register.php?email=" + email + "&page=" + strana + "&user=new";	
}

function checkPassEmail(){
	var korisnickoIme = document.frmLog.txtEmail.value;
	if(korisnickoIme.length < 2 || korisnickoIme.length > 80){
		alert("Unesite ispravan email!");
		return false;
	} else {
		if (pravilanUnos(korisnickoIme.split(""))){
			return true;
		} else {
			alert("Unesite ispravan email!");
			return false;
		}
	}
}

function kupacOpsirno(){
	var objKupac, objIsporuka;
	var i;
	
	objKupac = document.getElementById("tblKupac");
	objIsporuka = document.getElementById("tblIsporuka");
 	
	if(document.frmLog.chkOpsirno.checked == true){
		objKupac.style.display = "block";
	} else {
		objKupac.style.display = "none";
		objIsporuka.style.display = "none";
		// resetujem vrednosti za popunjavanje
		for(i = 0; i < document.frmLog.rdKupac.length; i++){
			document.frmLog.rdKupac[i].checked = false;
		}
		document.frmLog.txtIme.value = "";
		document.frmLog.txtPrezime.value = "";
		document.frmLog.txtMobilni.value = "";
		document.frmLog.txtFirma.value = "";
		document.frmLog.txtPIB.value = "";
		document.frmLog.txtAdresa.value = "";
		document.frmLog.txtZIP.value = "";
		document.frmLog.txtMesto.value = "";
		document.frmLog.txtDrzava.value = "Srbija";
		document.frmLog.txtTelefon.value = "";
		document.frmLog.txtFax.value = "";
	}
}

function popuniMesto(broj){
	var zip, id, mesto;
	ajaxObjectArray[ajaxObjectArray.length] = new ajax();
	var ajaxIndex = ajaxObjectArray.length-1;

	//zip = trim(document.frmLog.txtZip.value + "");
	zip = trim(broj);

	ajaxObjectArray[ajaxIndex].queryString = 'zip=' + zip;
	ajaxObjectArray[ajaxIndex].requestFile = "zip_ajax.php";
	ajaxObjectArray[ajaxIndex].onCompletion = function() { getMesto(ajaxIndex); };	// Specify function that will be executed after file has been found					
	ajaxObjectArray[ajaxIndex].onError = function() { handleError(ajaxIndex); };
	ajaxObjectArray[ajaxIndex].onFail = function() { handleFail(); };
	ajaxObjectArray[ajaxIndex].initRequest();		// Execute AJAX function
}

function getMesto(ajaxIndex){
	var retValue = eval("(" + ajaxObjectArray[ajaxIndex].response + ")");
	
	if(retValue.isDone){
		document.frmLog.hdnMesto.value = retValue.id;
		//document.frmLog.txtMesto.value = retValue.mesto;
		fillMesto(retValue);
		fillDrzava(retValue);
		//document.frmLog.txtDrzava.value = retValue.drzava;
		//document.frmLog.txtTelefon.focus();
	} else {
		alert(retValue.poruka);	
	}
	ajaxObjectArray[ajaxIndex] = false; //raskidam vezu sa ajax zahtevom
}

function tipKupca(tip){
	var objIsporuka;
	var objNazivVal, objFaxVal, objNaziv, objFax;
	var objPib, objPibVal;
	objIsporuka = document.getElementById("tblIsporuka");
	objNaziv = document.getElementById("tdNazivFirme");
	objFax = document.getElementById("tdFax");
	objNazivVal = document.getElementById("tdNazivFirmeVal");
	objFaxVal = document.getElementById("tdFaxVal");
	objPibVal = document.getElementById("tdPIBVal");
	objPib = document.getElementById("tdPIB");

	if(tip == "1"){ //pravno lice
		objNazivVal.style.display = "block";
		objFaxVal.style.display = "block";
		objNaziv.style.display = "block";
		objFax.style.display = "block";
		objIsporuka.style.display = "block";
		objPib.style.display = "block";
		objPibVal.style.display = "block";
	} else { // fizicko lice
		objNazivVal.style.display = "none";
		objFaxVal.style.display = "none";
		objNaziv.style.display = "none";
		objFax.style.display = "none";
		objIsporuka.style.display = "block";
		objPib.style.display = "none";
		objPibVal.style.display = "none";
	}
}

// pronalazim index u nizu
function placeInArray(theArray, theValue){
	var arLength = theArray.length;
  	for(var i=0; i < arLength ; i++){
   		if (theArray[i] == theValue){
    		return i;
   		}
  	}
	return -1;
}

function trim(stringToTrim) {
	return stringToTrim.replace(/^\s+|\s+$/g,"");
}

function fillMesto(retValue)
{
    
   var num = document.frmLog.cmbMesto.options.length;
   for(var i=0; i<num; i++)
   {
        document.frmLog.cmbMesto.selectedIndex = 0;
        document.frmLog.cmbMesto.remove(0);
   }
    
   var count = retValue.mesta.length;
   var bName = navigator.appName;
   for(var i=0; i<count; i++)
   {
        var y=document.createElement('option');
        y.text=retValue.mesta[i].mesto;
        if(bName == "Microsoft Internet Explorer")
            document.frmLog.cmbMesto.add(y);
        else
            document.frmLog.cmbMesto.add(y, null);
   }
   
   document.frmLog.cmbMesto.selectedIndex = 0;

}

function fillDrzava(retValue)
{
    document.frmLog.txtDrzava.value = retValue.mesta[0].drzava;

}
