 //-------------------------------------------------------------------
// Trim functions
//   Returns string with whitespace trimmed
//-------------------------------------------------------------------
function LTrim(str){
	if (str==null){return null;}
	for(var i=0;str.charAt(i)==" ";i++);
	return str.substring(i,str.length);
	}
function RTrim(str){
	if (str==null){return null;}
	for(var i=str.length-1;str.charAt(i)==" ";i--);
	return str.substring(0,i+1);
	}
function Trim(str){return LTrim(RTrim(str));}
function LTrimAll(str) {
	if (str==null){return str;}
	for (var i=0; str.charAt(i)==" " || str.charAt(i)=="\n" || str.charAt(i)=="\t"; i++);
	return str.substring(i,str.length);
	}
function RTrimAll(str) {
	if (str==null){return str;}
	for (var i=str.length-1; str.charAt(i)==" " || str.charAt(i)=="\n" || str.charAt(i)=="\t"; i--);
	return str.substring(0,i+1);
	}
function TrimAll(str) {
	return LTrimAll(RTrimAll(str));
	}
//-------------------------------------------------------------------
// isNull(value)
//   Returns true if value is null
//-------------------------------------------------------------------
function isNull(val){return(val==null);}

//-------------------------------------------------------------------
// isBlank(value)
//   Returns true if value only contains spaces
//-------------------------------------------------------------------
function isBlank(val){
	if(val==null){return true;}
	for(var i=0;i<val.length;i++) {
		if ((val.charAt(i)!=' ')&&(val.charAt(i)!="\t")&&(val.charAt(i)!="\n")&&(val.charAt(i)!="\r")){return false;}
		}
	return true;
	}

//-------------------------------------------------------------------
// isInteger(value)
//   Returns true if value contains all digits
//-------------------------------------------------------------------
function isInteger(val){
	if (isBlank(val)){return false;}
	for(var i=0;i<val.length;i++){
		if(!isDigit(val.charAt(i))){return false;}
		}
	return true;
	}

//-------------------------------------------------------------------
// isNumeric(value)
//   Returns true if value contains a positive float value
//-------------------------------------------------------------------
function isNumeric(val){return(parseFloat(val,10)==(val*1));}

function ZameniZarezSaTackom(str) {
rExp=/,/gi;
str = str.replace(rExp,'.')
return str;
}
function PromeniPozadinuPromena(obj){
 obj.kolicina.style.backgroundColor = "#FA8C89";
 obj.kolicina.style.Color = "#FFFFFF";
}

function PromeniPozadinuUbaceno(obj){
 obj.kolicina.style.backgroundColor = "#83D6AC";
  obj.kolicina.style.Color = "#FFFFFF";

}

function Zaokruzi(val,obj,default_vrednost){
var modulus;
var kolicinik;
var umnozak;
var nova_kolicina;
if (default_vrednost != 0) {
if (parseFloat(val) < parseFloat(default_vrednost)) {
 alert("Uneta količina je manja od pakovanja!\n Minimalna količina je " + default_vrednost);
 obj.kolicina.value= default_vrednost;
 return false;
}
else
{
val = Math.round(parseFloat(val)*1000)/1000;
default_vrednost = Math.round(parseFloat(default_vrednost)*1000)/1000;
modulus = parseFloat(val) % parseFloat(default_vrednost);

modulus = Math.round(modulus*1000)/1000;
//tweak za problem sa modulusom
if (parseFloat(modulus) == parseFloat(default_vrednost)) {modulus=0;}
//tweak za problem sa modulusom
   if ( modulus !=0 ) {
      kolicnik = parseFloat(val) / parseFloat(default_vrednost);
      kolicnik = Math.round(kolicnik*1000)/1000;
      umnozak = Math.ceil(kolicnik);
      umnozak = Math.round(umnozak*1000)/1000;
      nova_kolicina = default_vrednost * umnozak;
      nova_kolicina = Math.round(nova_kolicina*1000)/1000;
      //alert("Uneta količina ne odgovara pakovanju!\nPrva sledeća količina je: " + nova_kolicina + "\n Val: " + val + " pakkom: " + default_vrednost + " Kolicnik:" + kolicnik + " mod: " + modulus + " umnozak: " + umnozak);
      alert("Uneta količina ne odgovara pakovanju!\nPrva sledeća količina je: " + nova_kolicina );
      obj.kolicina.value = nova_kolicina;
      return false;
   }
   else
   {
       obj.kolicina.value= val;
	   return true;
   }

}
}
else
{
  //Ako je pakkom = 0
  return true;
}
}

function UvecajKolicinu(val,obj,default_vrednost){

if (ProveriSve(val,obj,default_vrednost) == true)
{
val = Math.round(parseFloat(val)*1000)/1000 + Math.round(parseFloat(default_vrednost)*1000)/1000;
PromeniPozadinuPromena(obj);
obj.kolicina.value = Math.round(val*1000)/1000;
}

}

function UmanjiKolicinu(val,obj,default_vrednost){
if (ProveriSve(val,obj,default_vrednost) == true)
{
if (val == Math.round(parseFloat(default_vrednost)*1000/1000)) {
obj.kolicina.value = Math.round(default_vrednost*1000)/1000;
}
else{
val = Math.round(parseFloat(val)*1000)/1000 - Math.round(parseFloat(default_vrednost)*1000)/1000;
PromeniPozadinuPromena(obj);
obj.kolicina.value = Math.round(val*1000)/1000;
}
}
}

function SubmitProvera(kol,obj,default_vrednost,source) {
if (ProveriSve(kol,obj,default_vrednost) == true){
 	     document.blSveOK = true;

}
else
{
         document.blSveOK = false;

}
}

function ProveriSve(kol,obj,default_vrednost) {
//Prvo proveri da li je polje prazno ili sa spaceovima
var strTrimKol;

strTrimKol = Trim(kol);


if (strTrimKol.length > 0) {
//Proveri da li je numerik
if (isNumeric(kol) == true)
{
   if (kol > 0) {
    return true;
   }
   else // za veće od 0
   {
    alert("Količina mora biti veća od nule!")
    obj.kolicina.value=default_vrednost;
    return false;
   }

}
else
{
 alert("Uneli ste slova. Za količinu morate unositi samo cifre!")
 obj.kolicina.value=default_vrednost;
 return false;
}

}
else
{
 alert("Molimo vas unesite količinu!")
 obj.kolicina.value=default_vrednost;
 return false;
}





}

function ProveriStanje(val,obj,default_vrednost) {
if (event.keyCode == "38") {UvecajKolicinu(val,obj,default_vrednost)}
if (event.keyCode == "40") {UmanjiKolicinu(val,obj,default_vrednost)}
if (event.keyCode == "13") {obj.submit()}

}



