<!--
//FormTemplate 1.501
//Copyright 2001 ASCENT, Sistemske integracije d.o.o., Teslova 30, Ljubljana
//Vse pravice pridržane. Reprodukcija ali distribuiranje po delih ali v celoti na 
//kakršenkoli način in na kateremkoli mediju ni dovoljena brez pisnega dovoljenja 
//avtorja. Vsaka kršitev se preganja v skladu z Zakonom o avtorskih in sorodnih 
//pravicah in Kazenskim zakonikom Republike Slovenije.

   //nad nekim stevilom se najprej do konca izvede funkcija f_FormatNr_JScript in nato f_FormatNrSLO
   //najprej izvaja f_FormatNrSLO-v okviru nje pa funkcija f_FormatNr_JScript
   var isIE = false
   var isNav = false
   var isNav6 = false
   if (navigator.appName == "Netscape") {
      if (navigator.appVersion.substr(0,3) == "5.0") {
         isNav6 = true;
       } else {
         isNav = true;
       }
   } else {
      isIE = true; 
   }
   //alert(navigator.appName);
   //alert(navigator.appVersion);
   //alert(isNav6)

  
   // funkcija back() se uporablja če imamo gumb 'back'
   function back() {
      history.go(-1);                              // eno stran nazaj
   }
   function repQM(prm_value) {
      var strOut;
      var objVzorec;
      var ClearNumber
      objVzorec = /\'/g;
      strOut = prm_value.replace(objVzorec,'&#39;');
      return (strOut)
   }
   function repBS(prm_value) {
      var strOut;
      var objVzorec;
      var ClearNumber
      objVzorec = /\\/g;
      strOut = prm_value.replace(objVzorec,'');
      return (strOut)
   }
      // mostly for check if variable 'o' was suplied to function
   function isNull (o) {
      if (typeof(o) == 'undefined') {return true;}
      if (o == null) {return true;}
      if (o == '') {return true;}
      return false;
   }
   function ClearNumber(prm_value) {
      var strOut;
      var objVzorec;
      var ClearNumber
      objVzorec = /\(/g;
      strOut = prm_value.replace(objVzorec,'');
      objVzorec = /\)/g;
      strOut = strOut.replace(objVzorec,'');
      objVzorec = /\$/g;
      strOut = strOut.replace(objVzorec,'');
      objVzorec = /[A-Za-z]/g;
      strOut = strOut.replace(objVzorec,'');
      objVzorec = /\s/g; //any white space chara...
      strOut = strOut.replace(objVzorec,'');
      ClearNumber = strOut;
      return ClearNumber
   }
      
   // funkcija delete0 pobriše vse nule iz začetka stringa
   function delete0(niz) {
      // dokler je niza še kaj in so spredaj ničle, jih brišemo
      //alert(niz.charAt(niz.length-1)); //vrne črko, ki je zadnja
      while ((niz.length > 0) && (niz.charAt(0) == '0')) {
         niz = niz.substr(1);
      }
      return(niz);
   }

   // funkcija isDate() preveri, če je datum pravilno vnešen (ne upošteva še vsako 400-to leto)!!!
   function isDate (datum) {
      
      var del, dan, mesec, leto, ustrezen;
      
      ustrezen = 0;                                    // predpostavimo, da datum ni ustrezen
      del = datum.split('.');                              // datum razbijemo na dan, mesec in leto
      if (del.length == 3){  
                                   // če je razbit na tri dele, ...
         // poberi spredaj ničle, da parseInt ne bo mislil da je številka osmiška
         del[0] = delete0(del[0]);
         del[1] = delete0(del[1]);
         del[2] = delete0(del[2]); //napaka pri npr.2000hoihkjg
         //if (!(del[2].charAt(del[2].length-1) == '')) { alert('crka je'); }
         leto = parseInt(del[2]);                        // poberemo leto
         if (!isNaN(leto)){                              // če je leto številka, ...
            if ((leto>999)&&(leto<3000)){                  // ... ustrezna številka ...
               mesec = parseInt(del[1]);                  // poberemo mesec
               if (!isNaN(mesec)){                        // in če mesec številka, ...
                  if ((mesec>0)&&(mesec<13)){               // ... ki je ustrezna, ...
                     dan = parseInt(del[0]);               // poberemo dan
                     if (!isNaN(dan)){                  // če dan ni številka, ...
                        switch (mesec){
                           case 1:
                           case 3:
                           case 5:
                           case 7:
                           case 8:
                           case 10:
                           case 12:                  // če ima mesec 31 dni
                              if ((dan>0)&&(dan<32)){
                                 ustrezen = 1;
                              }
                              break
                           case 4:
                           case 6:
                           case 9:
                           case 11:
                              if ((dan>0)&&(dan<31)){      //če ima mesec 30 dni
                                 ustrezen = 1;
                              }
                              break
                           case 2:                     // če je mesec februar
                              if (Math.floor(leto/4) == (leto/4)){
                                 // vsako četrto leto
                                 if (Math.floor(leto/100) == (leto/100)){
                                    // še vsako stoto leto
                                    if ((dan>0)&&(dan<30)){
                                       ustrezen = 1;
                                    }
                                 } else  if ((dan>0)&&(dan<30)){
                                          // vsako četrto, ne pa stoto
                                          ustrezen = 1;
                                       }
                              } else {
                                 if ((dan>0)&&(dan<29)){
                                    // ne vsako četrto
                                    ustrezen = 1;
                                 }
                              }
                        }
                     }
                  }
               }
            }
         }
      }
      var objVzorec = /[^0-9]/; //any non digit stran 38 JavaScript Objects-ustvarim objekt, ki hrani ta vzorec
      for (var i = 1; i <= del.length; i++) { 
         if (objVzorec.test(del[i-1])) { ustrezen = 0; }
      }      
      //if (ustrezen == 0){
      //   alert('Napačen datum!\nDatum mora biti oblike\nDD.MM.LLLL');
      //}
      return(ustrezen)
   }

	//funkcija preverja, ali je vnešena vsebina EMŠO
	function isEMSO(prm_value) {
		var lcl_EMSO = prm_value;
		var intDolzinaNiza = 0; //dolzina stringa (mora bit 13 mest!)
		var blnEmsoOK = false; // emso je kot nepravilen
		var intPom = 0; //pomozna stevilka ob izracunavanju
		var dblPom; //pomozna stevilka ob izracunavanju
		var intOstanek; //pomozna stevilka ob izracunavanju
		var strDatumRojstva = ""; //string datum rojstva
		var intKontrolnaStevilka; //kontrolna stevilka je zadnja stevilka emsoja (13)
		intDolzinaNiza = lcl_EMSO.length
		if (intDolzinaNiza = 13) { 
			//alert('emso je ' + lcl_EMSO);
			//alert('dolzina niza je ' + lcl_EMSO.length);
			intKontrolnaStevilka = lcl_EMSO.charAt(12);
			//alert('kontrolna stevilka je ' + intKontrolnaStevilka);
			for (i=1; i<7; ++i) {
				intPom = intPom + (parseInt(lcl_EMSO.charAt(i-1)) * parseInt((8-i)));
				//alert('i = ' + i + ' vmesni izracun je ' + intPom);
			}
			for (i=7; i<13; ++i) {
				intPom = intPom + (parseInt(lcl_EMSO.charAt(i-1)) * parseInt((14-i)));
				//alert('i = ' + i + ' vmesni izracun je ' + intPom);
			}
			//alert('na koncu je intPom ' + intPom);
			dblPom = intPom / 11;
			//alert('po deljenju z 11 je dblPom ' + dblPom);
			//alert('celi del od dblPom je ' + parseInt(dblPom))
			intOstanek = intPom - (parseInt(dblPom)*11)
			//alert('ostanek je ' + intOstanek)
			if (intOstanek == 0 && intKontrolnaStevilka == 0) { blnEmsoOK = true }
			if ((11 - intOstanek) == intKontrolnaStevilka) { blnEmsoOK = true }
		}
		return (blnEmsoOK);
	}

   //funckija preverja, ali je vnešena vsebina tipa Curreny
   function isCurrency(prm_value) {
      var oneDecimal = true;
      var NrOfDecimalPoints = 0;
      var NrOfComas = 0;
      var step = 0;
      var lastComa = 0;
      inputStr = prm_value.toString()
      strLength = inputStr.length
      for (step; step < inputStr.length; step++) {
         var oneChar = inputStr.charAt(step)
         if (step == 0 && oneChar == "-") {
            continue
         }
         if (oneChar == ",") {
            NrOfDecimalPoints++;
            if (NrOfDecimalPoints > 1) { //število decimalnih vejic mora biti natanko 1 ali manj
               return false
            }
            continue
         }
         if (oneChar == ".") {
            NrOfComas++;
            if ((NrOfComas == 1) || (NrOfComas > 1) && ((step - lastComa) == 4)) {
               lastComa = step;
               if (step < strLength) {  //ne sme se zaključiti s piko (nadaljevati se mora s številko)
                  if ((inputStr.charAt(step + 1) < "0" || inputStr.charAt(step + 1) > "9") || (inputStr.charAt(step + 2) < "0" || inputStr.charAt(step + 2) > "9") || (inputStr.charAt(step + 3) < "0" || inputStr.charAt(step + 3) > "9")  ) {                        
                     return false
                  } else {
                     continue 
                  }
               } else {
                  return false
               }
            } else {
               return false
            }
         }
         if (oneChar < "0" || oneChar > "9") {
            /*if (((step == strLength - 4) && (oneChar == " ")) || ((step == strLength - 3) && (oneChar == "S")) || ((step == strLength - 2) && (oneChar == "I")) || ((step == strLength - 1) && (oneChar == "T"))) {
               continue
            } else {
               return false
            }*/
            if (((step == strLength - 4) && (oneChar == " ")) || ((step == strLength - 3) && (oneChar == "E")) || ((step == strLength - 2) && (oneChar == "U")) || ((step == strLength - 1) && (oneChar == "R"))) {
               continue
            } else {
               return false
            }
         }
      }
      return true
   }

	function isEMail(prm_value){
	   email = prm_value ;
      var intPosOfLastDot = -1;
      var intNrOfDotsAfterAt = 0;
      var intNrOfDotsBeforeAt = 0;
      var blnDotsOK = true;
      var blnAtOK = true;
	   var indDot = email.lastIndexOf(".");
	   var indAt = email.indexOf("@");
	   var indAtLast = email.lastIndexOf("@");
	   var semi = email.indexOf(";");
	   var coma = email.indexOf(",");
	   var space = email.indexOf(" ");
	   var tick = email.indexOf("`");
	   var quote = email.indexOf("\"");
	   for (i=0; i<email.length; ++i) {
			var oneChar = email.charAt(i);
			if (oneChar == '.') {
				if ((i - intPosOfLastDot) == 1) { blnDotsOK = false }
				intPosOfLastDot = i;
				if (i > indAt) { intNrOfDotsAfterAt++ }
				if (i < indAt) { intNrOfDotsBeforeAt++ }
			}
	   }
	   if (indAt != indAtLast) { blnAtOK = false }
	   //alert('pike so ' + blnDotsOK);
	   //alert(intNrOfDotsAfterAt)
	   //alert(intNrOfDotsBeforeAt)
	   if ((indDot <= 0) || (semi > 0) || (space > 0) || (tick > 0) || (quote > 0) || (indAt <= 0) || ((indDot - indAt) <= 1) || (indDot == (email.length - 1))){
			return false;
	   }
			if (blnDotsOK && blnAtOK) {
				return true;
			} else {
				return false;
			}
	}

   function f_FormatNrCurrencySLO(prm_value) {
      var strOut;
      var f_FormatNrCurrencySLO;
         
      strOut = ""
      if (!isNull(prm_value)) {
         if (prm_value.length > 0) {
            //strOut = f_FormatNrSLO(prm_value, 2, 3) + ' SIT'
            strOut = f_FormatNrSLO(prm_value, 2, 3) + ' EUR'
         }
      }
      f_FormatNrCurrencySLO = strOut;
      return f_FormatNrCurrencySLO;
   }

   function f_FormatNrCurrencySLOWC(prm_value) {
      var strOut;
      var f_FormatNrCurrencySLO;
         
      strOut = ""
      if (!isNull(prm_value)) {
         if (prm_value.length > 0) {
            strOut = f_FormatNrSLO(prm_value, 2, 3);
         }
      }
      f_FormatNrCurrencySLO = strOut;
      return f_FormatNrCurrencySLO;
   }
   
   function f_FormatNr_JScript(prm_value, prm_nrOfDec, prm_formatMode) { //ekvivalentno vb for SQL; prm_value="1,33xfhiu"
      //funkcijo uporabljamo, ko zelimo v JScripti izvajati racunske operacije z stevili
      //ki jih vpisujemo v input polja; npr. funkcija vrne ob vpisu števila 1.22,33, število 
      //122.33 kar je podlaga za računanje z decimalnimi števili v JS (locilo je namrec pika)
      var strOut = '';
      var fmInputFormatMode;
      var str_v_Hidden
      var intOut;
      var objOut;
      var lcl_fmInputFormatMode;
      fmInputFormatMode = 'SLO';
      //if ((prm_mode = 'USA') || (prm_mode = 'SLO')) {
      if ((prm_formatMode == 'USA') || (prm_formatMode == 'SLO')) {
         lcl_fmInputFormatMode = prm_formatMode;
      }
      else { 
         lcl_fmInputFormatMode = fmInputFormatMode
      }
      strOut = '';
//      alert('prm_value ' + prm_value + ' prm_formatMode ' + prm_formatMode + ' typeof() ' + typeof(prm_value));
      //blnFlag = true; //indikator, ali so vejice pred stevilom; npr. ,,,234.33 - ne potrebujem ker omogoca return kot exit iz funkcije
      if (!isNull(prm_value)) { //If (VarType(prm_value) > 1) Then
         //prm_value = new String(prm_value); //dodano 27.01.2001
         //prm_value = prm_value.toString(prm_value); //dodano 27.01.2001
         if (typeof(prm_value) == 'number') {
            if (lcl_fmInputFormatMode == 'USA') {
               strOut = new String(prm_value);
               strOut = strOut.toString(strOut);
               //alert('1strOut ' + strOut + ' typeof() ' + typeof(prm_value) + ' typeof() ' + typeof(strOut));
               //strOut = strOut.replace(/\./g,',');
               //alert('2strOut ' + strOut + ' typeof() ' + typeof(prm_value) + ' typeof() ' + typeof(strOut));
               //alert(strOut);
               return strOut;
               
            }
         }
         if (prm_value.length > 0) { //If (Len(prm_value) > 0) Then
            strOut = ClearNumber(prm_value); //npr. 1.276.49,77
            switch (lcl_fmInputFormatMode) {
               case 'SLO': 
                  strOut = strOut.replace(/\./g,''); //piko v nič in sicer globalno torej povsod kjer se pojavi;npr. 127649,77 vb:strOut = Replace(strOut, ".", "")
                  objVzorec = /\,/g; 
                  strOut = strOut.replace(objVzorec,"."); //vejico v piko; 127649.77
                  break;
               case 'USA':
                  strOut = strOut.replace(/\./g,','); //potrebno pri vnosu pri sestevanjih v neka polja 
                  //break;
            }
//alert('prm_value ' + prm_value + ' prm_formatMode ' + prm_formatMode + ' strOut ' + strOut);
            //(strOut*100-0.05)/100     2dec
            if (prm_nrOfDec > -1) { //strOut = CStr(Round(strOut, prm_nrOfDec))
	      	   if (isNaN(strOut)) { //ali so vejice pred stevilom; npr. ,,,234.33
      	         alert('Vrednost, ki ste jo vnesli ni veljavna za to polje.');
      	         strOut = '0';
      	         return strOut;
	      	   } // || isNull(strOut)
	      	   if (isNull(strOut)) { //ali so samo crke vnesene; npr. xfthgfsht
      	         strOut = '0'; //mora biti string
      	         return strOut;
	      	   } // || isNull(strOut)
               intOut = parseFloat(strOut); //Math.round uporablja nr
               objVzorec = /\,/g;
               if ((prm_nrOfDec == 0) && (!(objVzorec.test(strOut)))) { //and; prej sem meu or
                  intOut = Math.round(intOut);
               }
               else { //n>0 in v vzorcu je vejica
                  intOut = Math.round(intOut*(Math.pow(10,prm_nrOfDec)) - 5 * (Math.pow(10,-(prm_nrOfDec))) )/ (Math.pow(10,prm_nrOfDec));
               }
               objOut = new String(intOut);
               strOut = objOut.toString(intOut);
            }
         }
      }
      else { 
         strOut = '0';
      	return strOut;
	   } // || isNull(strOut)
      return strOut; //1.33
   }
   
	function f_FormatNrSLO (prm_value, prm_nrOfDec, prm_nrOfGroupDigits, prm_formatMode) { //(prm_value="10.satrfg00,00",prm_nrOfDec=2,prm_nrOfGroupDigits=3
	   var intPikaPos;
	   var i;
	   var intCurpos;
	   var intCurLen;
	   var strOut;
	   var arrStrGroups;
	   var strFract;
	   var strCeil;
	   var int_arrStrGroupslen;
	   var valueJScript;
	   var f_FormatNrSLO;
	   intPikaPos = 0;
      strOut = '';
      if (isNull(prm_value)) { 
         f_FormatNrSLO = 0;
         return f_FormatNrSLO
      }   
	   //valueJScript = f_FormatNr_JScript(prm_value, prm_nrOfDec, prm_mode, prm_formatMode) //valueJScript="1000.00" tisoč
	   valueJScript = f_FormatNr_JScript(prm_value, prm_nrOfDec, prm_formatMode) //valueJScript="1000.00" tisoč
	   //alert('valueJScript ' + valueJScript + 'typeof' + typeof(valueJScript));
	   //alert('valueJScript ' + valueJScript + 'typeof' + typeof(valueJScript)); //vedno je string; npr. vpisem 2,66-vrne string 2.66
	   strOut = valueJScript; //inicializacija
	   intPikaPos = strOut.indexOf('.') + 1; //intPikaPos = InStr(1, strOut, ".")
	   if (intPikaPos == 0) {
	      if (prm_nrOfDec > 0) {
	         strOut = strOut + '.';
	         for (i = 1; i <= prm_nrOfDec; i++) {
	            strOut = strOut + '0';
	         }
	      }
	   } else {
	      if (prm_nrOfDec > ((strOut.length) - intPikaPos)) {
	         for (i = 1; i <= (prm_nrOfDec-(strOut.length) + intPikaPos); i++) {
	            strOut = strOut + '0';
	         }
	      }
	   }
	   if (prm_nrOfGroupDigits > 1) {
	      intPikaPos = strOut.indexOf('.') + 1;
	      if (intPikaPos == 0) {
	         strFract = '';
	         strCeil = strOut;
	      }
	      else {
	         strFract = strOut.substr(intPikaPos,(strOut.length) - intPikaPos); //strFract = Right(strOut, Len(strOut) - intPikaPos)
	         strCeil = strOut.substring(0, intPikaPos-1); //1 če 10.00 nepravilno //strCeil = Left(strOut, intPikaPos - 1)
	      }
	      int_arrStrGroupslen = parseInt((strCeil.length)/prm_nrOfGroupDigits);
	      if (((strCeil.length)/prm_nrOfGroupDigits) - int_arrStrGroupslen) {
	         int_arrStrGroupslen++;
	      }
	      if (int_arrStrGroupslen > 0) {
	         arrStrGroups = new Array(int_arrStrGroupslen)
	         for (i = int_arrStrGroupslen; i >= 1; i--) { //For intI = intArrStrGroupsLen To 1 Step -1
	            intCurpos = (strCeil.length) - (int_arrStrGroupslen - i)*prm_nrOfGroupDigits;
	            if (intCurpos - prm_nrOfGroupDigits < 1) {
	               intCurLen = intCurpos;
	            }
	            else {
	               intCurLen = prm_nrOfGroupDigits;
	            }
	            intCurpos = intCurpos - intCurLen + 1;
	            arrStrGroups[i-1] = strCeil.substr(intCurpos-1,intCurLen); //arrStrGroups(intI - 1) = Mid(strCeil, intCurPos, intCurLen)
	         }
	         strOut = '';
	         for (i = 1; i <= int_arrStrGroupslen; i++) {
               if (i == int_arrStrGroupslen) {
	               strOut = strOut + arrStrGroups[i-1];
	            }
	            else {
	               strOut = strOut + arrStrGroups[i-1] + '.';
	            }	         
	         }
	         if (strFract.length > 0) { strOut = strOut + ',' + strFract;}
	      }
	      else {
	         if (strFract.length > 0) { strOut = strOut + '0,' + strFract;}
	      } 
	   }
	   f_FormatNrSLO = strOut;
	   //alert('f_FormatNrSLO=' + f_FormatNrSLO); //1.000,00
	   return f_FormatNrSLO;
   }
   function onblurInputTwo(prm_input) {
      var prm_nrOfDec = '2';
      var prm_nrOfGroupDigits = '3';
      prm_input.value = f_FormatNrSLO(prm_input.value, prm_nrOfDec, prm_nrOfGroupDigits,'');
   }
   
   function onfocusInputTwo(prm_input) {
      if (!(prm_input.value == '')) {
         var prm_nrOfDec = '2';
         prm_input.value = f_FormatNr_JScript(prm_input.value, prm_nrOfDec,'');
         prm_input.value = prm_input.value.replace(/\./g,',');
      }
   }
   function onblurInputZero(prm_input) {
      var prm_nrOfDec = '0';
      var prm_nrOfGroupDigits = '3';
      prm_input.value = f_FormatNrSLO(prm_input.value, prm_nrOfDec, prm_nrOfGroupDigits,'');
   }
   
   function onfocusInputZero(prm_input) {
      if (!(prm_input.value == '')) {
         var prm_nrOfDec = '0';
         prm_input.value = f_FormatNr_JScript(prm_input.value, prm_nrOfDec,'');
         prm_input.value = prm_input.value.replace(/\./g,',');
      }
   }
   function onfocusDifferentFocus(prm_value) {
      document.form1[prm_value].focus();
   }
   
	function checkAndConvertEMail(prm_value, prm_convertTo, prm_name) {
		if (prm_value != '') {
			if (isEMail(prm_value) && checkEMailWithPattern(prm_value)) {
				var strEval;
				if (prm_value != '' && prm_convertTo != "") {
					if (prm_convertTo == 'U' || prm_convertTo == 'u') { // na upperCase
						strEval = 'document.form1.' + prm_name + '.value = "' + prm_value.toUpperCase() + '"';
					}
					if (prm_convertTo == 'L' || prm_convertTo == 'l') { // na upperCase
						strEval = 'document.form1.' + prm_name + '.value = "' + prm_value.toLowerCase() + '"';
					}
					eval(strEval);
				}
			} else {
				alert('Vaš elektronski naslov ni pravilno vpisan!')
			}
		}
	}	

	function checkEMailWithPattern(prm_value) {
		var lcl_value;
		lcl_value = prm_value;
		checkEMailOK = true;
		var oneCharacter;
		if (lcl_value != '') {
			for (i=0; i<lcl_value.length; ++i) {
				oneCharacter = lcl_value.charAt(i);
				if (strCheckEMailPattern.indexOf(oneCharacter) == -1) { checkEMailOK = false }
			}		
		}
		return (checkEMailOK) 
	}
   
//-->
