function _GDU(f) {
	var s = '';
	var e = getFormElements(f);
	for (var i = 0; i < e.length; i++)
		if ((e[i].tagName.toLowerCase() == 'input' && (e[i].type == 'text' || e[i].type == 'password' || e[i].type == 'hidden')) || e[i].tagName.toLowerCase() == 'textarea' || (e[i].tagName.toLowerCase() == 'select' && !e[i].multiple))
			s += '&' + encodeURIComponent(e[i].name) + '=' + encodeURIComponent(e[i].value);
		else if (e[i].tagName.toLowerCase() == 'select' && e[i].multiple) {
			for (var j = 0; j < e[i].options.length; j++)
				if (e[i].options[j].selected)
					s += '&' + encodeURIComponent(e[i].name) + '=' + encodeURIComponent(e[i].options[j].value);
		}
		else if (e[i].tagName.toLowerCase() == 'input' && e[i].type == 'checkbox')
			s += '&' + encodeURI(e[i].name).replace(/&/g, '%26') + '=' + (e[i].checked?1:0);
		else if (e[i].tagName.toLowerCase() == 'input' && e[i].type == 'radio' && e[i].checked)
			s += '&' + encodeURI(e[i].name).replace(/&/g, '%26') + '=' + encodeURIComponent(e[i].value);
	return s.substr(1);
}

function getFormElements(f) {
	var ret = [];
	var e = f.getElementsByTagName('input');
	for (var i = 0; i < e.length; i++)
		ret.push(e[i]);
	var e = f.getElementsByTagName('textarea');
	for (var i = 0; i < e.length; i++)
		ret.push(e[i]);
	var e = f.getElementsByTagName('select');
	for (var i = 0; i < e.length; i++)
		ret.push(e[i]);
	return ret;
}

var Search = {
	Dmodel_id: 0,
	makeC: function(id, def, fid) {
		var f = document.cfrm;
		var fmo = document.getElementsByName('model_id['+fid+']')[0];
		fmo.options.length = 0;
		fmo.options[0] = new Option('Toate', '', false, false);
		eval("new Ajax.Request('/req/get_models.req.php?make_id='+id, {onComplete: function(t) { Search.makeCL(t, def, "+fid+"); }} );");
	},
	
	makeCL: function(t, def, fid) {
		var f = document.cfrm;
		var fmo = document.getElementsByName('model_id['+fid+']')[0];
		fmo.options.length = 0;
		fmo.options[0] = new Option('Toate', '', false, false);
		var root = t.responseXML.getElementsByTagName('models')[0];
		var models = root.getElementsByTagName('model');
		for (var i = 0; i < models.length; i++) {
			var model_id = models[i].getElementsByTagName('model_id')[0].firstChild.nodeValue;
			var name = models[i].getElementsByTagName('name')[0].firstChild.nodeValue;
			fmo.options[fmo.options.length] = new Option(name, model_id, false, def == model_id);
		}
	},
	
	countRes: function() {
		new Ajax.Request('/req/count_results.req.php?' + _GDU(document.cfrm), {onComplete: function(t) { Search.cRL(t.responseText); }});
	},
	
	cRL: function(t) {
		$('id_btn_submit').innerHTML = '<b>Rezultate:</b> ' + t + '';
		if ($('id_btn_submit2'))
			$('id_btn_submit2').innerHTML = '<b>Rezultate:</b> ' + t + '';
	},
	
	numMakeF: 1,
	
	addMakeF: function(i) {
		if (i >= this.numMakeF && document.getElementsByName('make_id['+i+']')[0].value) {
			this.numMakeF++;
			var e = $('make_id_f_cont').getElementsByTagName('tbody')[0];
			var o = document.createElement('tr');
			
			var td1 = document.createElement('td');
			td1.innerHTML = '<select name="make_id['+this.numMakeF+']" class="elem50" onchange="Search.addMakeF('+this.numMakeF+'); Search.makeC(this.value, this.Dmodel_id, '+this.numMakeF+'); Search.countRes();"></select>';
			var td2 = document.createElement('td');
			td2.innerHTML = '<select name="model_id['+this.numMakeF+']" class="elem50" onchange="Search.countRes();"></select>';
			
			o.appendChild(td1);
			o.appendChild(td2);
			e.appendChild(o);
			
			var s = document.getElementsByName('make_id[1]')[0];
			var d = document.getElementsByName('make_id['+this.numMakeF+']')[0];
			d.options.length = 0;
			for (var j = 0; j < s.options.length; j++)
				d.options[d.options.length] = new Option(j ? s.options[j].text : '', j ? s.options[j].value : '', false, false);
		}
	},
	
	resetF: function() {
		var f = document.cfrm;
		var e = f.getElementsByTagName('select');
		for (var i = 0; i < e.length; i++)
			e[i].value = '';
		var e = f.getElementsByTagName('input');
		for (var i = 0; i < e.length; i++)
			if (e[i].type == 'checkbox')
				e[i].checked = false;
		this.countRes();
	}
}
