
PageInit();
function PageInit() {

    updateModelOptions();
    updateFrekvencaOptions();
    updateDobaOptions();
    updatePologOptions();
    updatePolog();
    updateTipKomitenta();


}

function onVrednostVALUTAChange()
{
	saveVrednostInputVALUTA(); 
	
	convert2LOCAL(objVrednostVALUTA, objVrednostLOCAL); 
	updatePolog();
}

function onVrednostLOCALChange()
{
	saveVrednostInputLOCAL();
	
	convert2VALUTA(objVrednostLOCAL, objVrednostVALUTA); 
	updatePolog();
}

function onPologVALUTAChange()
{
	savePologInputVALUTA();
	
	resetPologPercent(); 
	convert2LOCAL(objPologVALUTA, objPologLOCAL);
}

function onPologLOCALChange()
{
	savePologInputLOCAL();
	
	resetPologPercent(); 
	convert2VALUTA(objPologLOCAL, objPologVALUTA);
}

function skupinaProduktaChanged()
{
	updateTipProduktaOptions();
	
	clearOptions( objVrstaLeas);
}

function updateModelOptions()
{
	if ( !objModel || !objZnamka)
		return;
		
	var znamkaValue = objZnamka.value;
	var previousValue = objModel.value;
	var i;
	
	clearOptions( objModel);
	
	for ( i = 0; i < originalModel.length; i++)
	{
		//if ( originalModel[i].getAttribute('voidValue') && originalModel[i].getAttribute('voidValue') == "1")
		if ( originalModel[i].voidValue && originalModel[i].voidValue == "1")
		    optionsAdd (originalModel[i], objModel);
		else
		{
			//if ( znamkaValue != null && znamkaValue != "")
			//{
			//	if ( originalModel[i].getAttribute('znamka') && originalModel[i].getAttribute('znamka') == znamkaValue)
			//	{
			//		optionsAdd (originalModel[i], objModel);
			//	}
			//}
			if ( znamkaValue != null && znamkaValue != "")
			{
				if ( originalModel[i].znamka && originalModel[i].znamka == znamkaValue)
				{
					optionsAdd (originalModel[i], objModel);
				}
			}
		}
	}
	
	objModel.value = previousValue;
}

function updateFrekvencaOptions()
{
	if ( !objFrekvenca || !objFrekvenca.options || !objFrekvenca.options.length)
		return;
		
	if (objFrekvenca.disabled)
		return;
		
	if ( objFrekvenca.options.length == 1)
		objFrekvenca.disabled = true;
	else
		objFrekvenca.disabled = false;
}

function updateDobaOptions()
{
	if ( !objDoba || !objFrekvenca)
		return;
		
	var previousValue = objDoba.value;
	var i;
	var frekvenca;
	var doba;
	
	clearOptions( objDoba);
	
	// If frequency isn't selected we only clear options.
	if ( objFrekvenca.value == null || objFrekvenca.value == "")
		frekvenca = -1;
	else			
		frekvenca = parseInt( objFrekvenca.value);
	
	for ( i = 0; i < originalDoba.length; i++)
	{
		if ( originalDoba[i].getAttribute('voidValue') && originalDoba[i].getAttribute('voidValue') == "1") // Always insert void value
		    optionsAdd (originalDoba[i], objDoba);
		else if ( frekvenca > 0)
		{
			doba = parseInt( originalDoba[i].value);
			
			if ( doba % frekvenca == 0)
				optionsAdd (originalDoba[i], objDoba);
		}
	}
	
	objDoba.value = previousValue;
	
	if ( !objDoba.options || !objDoba.options.length)
		return;
		
	if (objDoba.disabled)
		return;
	
	if (objDoba.options.length == 1)
		objDoba.disabled = true;
	else
		objDoba.disabled = false;
}

function optionsAdd(item, control)
{
    if (!item || !control)
		return;
		
	var oOption = document.createElement("OPTION");
    oOption.text = item.text;
    oOption.value = item.value;
	control.options.add( oOption);
}

function updatePologOptions()
{
	if ( !objPologPercent || !objPologPercent.options || !objPologPercent.options.length)
		return;
		
	var disabled = false;
		
	if ( objPologPercent.options.length == 1)
		disabled = true;
	
	if ( !objPologPercent.disabled)
		objPologPercent.disabled = disabled;
	
	if ( objPologVALUTA && !objPologVALUTA.disabled) objPologVALUTA.disabled = disabled;
	if ( objPologLOCAL && !objPologLOCAL.disabled) objPologLOCAL.disabled = disabled;
}

function updatePolog() {

    if (!objPologPercent || !objVrednostVALUTA || !objPologVALUTA)
		return;

var percent = unFormatCurr(objPologPercent.value);
	
	// preberemo valuto s katero delamo...
	var valuta = objVrednostVALUTA.value;
	var nabVred;

	nabVred = unFormatCurr(objVrednostOriginal.value);
	
	var polog;
	
	if ( percent != null && percent != "")
	{
	    percent = parseFloat(percent);


	    if (nabVred != null && nabVred != "") {
			nabVred = parseFloat( nabVred);
			polog = nabVred * percent / 100;
			var pologStr = polog.toString();
			pologStr = pologStr.replace(".", ",");


			if ( valuta != "local")
			{
				objPologVALUTA.value = pologStr;
				
				savePologInputVALUTA();
				
				polog = Math.round( polog * 100) / 100;
				pologStr = polog.toString();
				pologStr = pologStr.replace(".", ",");
				
				objPologVALUTA.value = pologStr;
				
				format( objPologVALUTA, 2);
				
				convert2LOCAL( objPologOriginal, objPologLOCAL);
			}
			else {

				objPologLOCAL.value = pologStr;
				
				savePologInputLOCAL();
				
				format( objPologLOCAL, 2);
				
				convert2VALUTA( objPologLOCAL, objPologVALUTA);
			}	
		}
	}
}

function resetPologPercent()
{
	objPologPercent.value = "";
}
/*
updateOstanekValues();
function updateOstanekValues()
{
	if ( !objOstanek || !objOstanek.options || !objOstanek.options.length)
		return;
		
	if ( objOstanek.disabled)
		return;
		
	if ( objOstanek.options.length == 1)
		objOstanek.disabled = true;
	else
		objOstanek.disabled = false;
}
*/

function getLOCALVALUTATecaj()
{
	var tecaj = unFormatCurr( forma.tecajLOCALVALUTA.value);
	
	return parseFloat( tecaj);
}


function getStopnjaDDV()
{
	var stopnja = forma.stopnjaDDV.value;
	stopnja = unFormatCurr( src.value);
	
	return parseFloat( stopnja);
}

function getIND_BRUTO()
{
	var bruto = forma.IND_BRUTO.value;
	
	return bruto == "D";
}

function convert2LOCAL(src, dest)
{
	if (!src || !dest)
		return;
		
	var tecaj = getLOCALVALUTATecaj();
	
	var vrednostVALUTA = unFormatCurr( src.value);
	var vrednostLOCAL = parseFloat(vrednostVALUTA) * tecaj;
	vrednostLOCAL = Math.round( vrednostLOCAL * 100) / 100;
	var vrednostLOCALstr = vrednostLOCAL.toString();
	
	vrednostLOCALstr = vrednostLOCALstr.replace(".", ",");
	
	dest.value = vrednostLOCALstr;
	
	format( dest, 2);
}

function convert2VALUTA(src, dest)
{
	if (!src || !dest)
		return;
		
	var tecaj = getLOCALVALUTATecaj();
	
	var vrednostLOCAL = unFormatCurr( src.value);
	var vrednostVALUTA = parseFloat(vrednostLOCAL) / tecaj;
	vrednostVALUTA = Math.round( vrednostVALUTA * 100) / 100;
	var vrednostVALUTAstr = vrednostVALUTA.toString();
	
	vrednostVALUTAstr = vrednostVALUTAstr.replace(".", ",");
	
	dest.value = vrednostVALUTAstr;
	
	format( dest, 2);
}

function updateTipKomitenta()
{
	if ( !objTipKomitenta || !objTipKomitenta.length || objTipKomitenta.length != 3)
		return;
		
	var ime = objTipKomitenta[0].checked;
	var priimek = ime;
	var naziv = objTipKomitenta[1].checked || objTipKomitenta[2].checked;
	
	layoutDisplayElement( objIme, ime);
	layoutDisplayElement( objPriimek, priimek);
	layoutDisplayElement( objNaziv, naziv);
}

function saveVrednostInputLOCAL()
{
	objVrednostValuta.value = "local";
	objVrednostOriginal.value = objVrednostLOCAL.value;
}

function saveVrednostInputVALUTA()
{
	objVrednostValuta.value = "valuta";
	objVrednostOriginal.value = objVrednostVALUTA.value;
}

function savePologInputLOCAL()
{
	objPologValuta.value = "local";
	objPologOriginal.value = objPologLOCAL.value;
}

function savePologInputVALUTA()
{
	objPologValuta.value = "valuta";
	objPologOriginal.value = objPologVALUTA.value;
}

