/*************************************************************************
 *
 * Avtor: Rok Faith (rokfaith at gmail dot com) (c) 2007
 *
 *************************************************************************/
OLMadd('initIskanje()');

function initIskanje() {
	z = GEBID('sZnamke');
	try {
		z.length=0;
		//while(z.hasChildNodes()) z.removeChild(z.firstChild);
		for (i=0; i<znamke.length; i++) {
			addOption(z, znamke[i], znamke[i]);
		}
		brisiSeznam(GEBID('sModeli'), "Vsi modeli");
	
		elLetaOd = GEBID('sLetaOd');
		elLetaDo = GEBID('sLetaDo');
		elCenaOd = GEBID('sCenaOd');
		elCenaDo = GEBID('sCenaDo');
		elKmOd = GEBID('sKmOd');
		elKmDo = GEBID('sKmDo');	
		seznamLet(elLetaOd, 1975, 2008, 1, true);
		seznamLet(elLetaDo, 1975, 2008, 1, false);
		seznamCen(elCenaOd, 500, 100000, 500, true);
		seznamCen(elCenaDo, 500, 100000, 500, false);
		seznamKm(elKmOd, 5000, 200000, 5000, true);
		seznamKm(elKmDo, 5000, 200000, 5000, false);
	} catch(e){}
}

function scm(obj) {
	if (obj.value=='min')
		min=500;
	else {
		min = parseInt(obj.value);
		if (min>29000) { 
			korak=10000;
		} else if (min>4500) {
			korak=1000;
		} else {
			korak=500;
		}
		min+=korak;
	}
	seznamCen(elCenaDo, min, 100000, korak, false);
}



function skm(obj) {
	if (obj.value=='min')
		min=0;
	else {
		min = parseInt(obj.value);
		if (min>=25000) { 
			korak=25000;
		} else if (min>=150000) {
			korak=50000;
		} else {
			korak=5000;
		}
		min+=korak;
	}
	seznamKm(elKmDo, min, 200000, korak, false);
}

function slm(obj) {
	if (obj.value=='min')
		min=1975;
	else
		min = parseInt(obj.value)+1;
	seznamLet(elLetaDo, min, 2008, 1, false);
}

function seznamCen(seznam, min, max, korak, prvi) {
	p=prvi?'min':'max';
	brisiSeznam(seznam, p);
	for(i=min; i<=max; i+=korak) {
		if (i>4500) korak=1000;
		if (i>29000) korak=10000;
		addOption(seznam, i, valuta(i, '€'));
	}
}

function seznamKm(seznam, min, max, korak, prvi) {
	p=prvi?'min':'max';
	brisiSeznam(seznam, p);
	for(i=min; i<=max; i+=korak) {
		if (i>20000) korak=25000;
		if (i>125000) korak=50000;
		addOption(seznam, i, valuta(i, ' km'));
	}	
}

function seznamLet(seznam, min, max, korak, prvi) {
	p=prvi?'min':'max';
	brisiSeznam(seznam, p);
	for(i=min; i<=max; i+=korak) {
		addOption(seznam, i, i);
	}
}

function valuta(x, simbol) {
	if (x<1000) {
		r=x+simbol;
	} else if(x<1000000) {
		s=Math.floor(x/1000);
		t=pad3(x%1000);
		r=s.toString()+'.'+t+simbol;
	} else {
		m=Math.floor(x/1000000);
		x-=m*1000000;
		s=pad3(Math.floor(x/1000));
		t=pad3(x%1000);
		r=m.toString()+'.'+s+'.'+t+simbol;
	}
	return r; 
}
function pad3(x){
	if (x.toString) x=x.toString();
	while(x.length!=3) x='0'+x;
	return x;
}

function addOption(seznam, vrednost, tekst) {
	//nc = new Option(tekst, vrednost);
	nc = document.createElement('OPTION');
	nc.value=vrednost;
	nc.innerHTML=tekst;
	
	seznam.appendChild(nc);
}

function brisiSeznam(obj, prvi) {
	//while(obj.hasChildNodes()) obj.removeChild(obj.firstChild);
	if (obj.length) obj.length=0;
	addOption(obj, prvi, prvi);
}

function inArray(needle, haystack) {
	if (haystack.indexOf) return haystack.indexOf(needle);
	for (i=0; i<haystack.length; i++) {
		if (needle == haystack[i]) return i;
	}
	return -1;
}

function napolniSeznam(seznam, polje) {
	for (i=0; i<polje.length; i++) {
		addOption(seznam, polje[i], polje[i]);
	}	
}

function izbiraZnamke(vsZnamke) {
	vsModeli=GEBID('sModeli');
	znamka = vsZnamke.value;
	if (znamka=='Vse znamke') {
		brisiSeznam(vsModeli, "Vsi modeli");
	} else {
		znamkaIdx = inArray(znamka, znamke);
		model = modeli[znamkaIdx-1];
		
		brisiSeznam(vsModeli, "Vsi modeli");
		napolniSeznam(vsModeli, model);
	}
}
