function js_poblarProvinciaPorComunidad () {
	selProvincia = $('pr');
	pos = 1;
	for (i=0; i<provincias.length; i++) {
		selProvincia.options [0] = new Option ("- todas las provincias -", "0", true);
		selProvincia.options [pos++] = new Option (provincias [i].substr (12), provincias [i].substr (3, 2));
	}
	selProvincia.selectedIndex = 0;
}

function js_rellenarprovincia (prId) {
	if (prId.length < 2) prId = '0' + prId;
	js_poblarLimpiarProvincia ();
	if ($('cp')) $('cp').value='';
	selProvincia = $('pr');
	pos = 1;
	for (i=0; i<provincias.length; i++) {
		if (provincias [i].substr (3, 2) == prId) {
			js_poblarProvinciaPorComunidad ();
			prPos = 0;
			for (j=0; j<selProvincia.options.length; j++) {
				if (selProvincia.options [j].value == prId) {
					prPos = j;
					break;
				}
			}
			selProvincia.selectedIndex = prPos;
		}
	}
}

var oModBuscs;
function js_modBuscador () {
	$$('.modbuscador input[type=text]').forEach (function (oI) {
		if (oI.title) {
			if (oI.value.length == 0) {
				oI.value = oI.title
				oI.setStyle ('color', '#999999');
			}
			oI.addEvent ('focus', function () {
				if (this.value == this.title) {
					this.value = '';
					$(this).setStyle ('color', '#000000');
				}
			});
			oI.addEvent ('blur', function () {
				if (this.value.length == 0) {
					this.value = this.title;
					$(this).setStyle ('color', '#999999');
				}
			});
		}
	});
	
	oModBuscs = {
		'f': $$('form.modbuscador'),
		'ta': $$('.mbta'),
		'cp': $$('.mbcp'),
		'fa': $$('.mbfa'),
		'ti': $$('.mbti'),
		'pr': $$('.mbpr')
	};
	
	oModBuscs.f.addEvent ('submit', function (ev) {
		this.getElements ('input[type=text]').forEach (function (oI) {
			if (oI.value == oI.title) oI.value = '';
		});

		if (this.getElement ('.mbta').value == '') {
			sPara = new Array ();
			oFa = this.getElement ('select.mbfa');
			oPr = this.getElement ('select.mbpr');
			oTi = this.getElement ('select.mbti');
			if (oFa.getValue () != 0) sPara.push (oFa.options [oFa.selectedIndex].title);
			if (oPr.getValue () != 0) sPara.push (oPr.options [oPr.selectedIndex].title);
			if (oTi.getValue () != 0) sPara.push (oTi.options [oTi.selectedIndex].title);
			//if (sPara.length > 0) document.location += sPara.join ('&');
			if (sPara.length > 0) document.location = document.location.protocol +'//'+ document.location.host +'/academias-de/'+ sPara.join ('&');
		}
		else (function () {this.submit ();}).delay (500, this);
	});

	oModBuscs.ti.addEvent ('change', function () {
		tipoSel = this.getValue ();
		if ((tipoSel == 0) || (tipoSel == 1) || (tipoSel == 4)) {
			oModBuscs.pr.setProperty ('disabled', false);
			oModBuscs.cp.setProperty ('disabled', false);
			oModBuscs.pr.setStyle ('color', '#000000');
			oModBuscs.cp.setStyle ('color', '#000000');
		} else {
			oModBuscs.pr.forEach (function (oPr) { oPr.options [0].selected = true; });
			oModBuscs.cp.setProperty ('value', '');
			oModBuscs.pr.setProperty ('disabled', true);
			oModBuscs.cp.setProperty ('disabled', true);
			oModBuscs.pr.setStyle ('color', '#cccccc');
			oModBuscs.cp.setStyle ('color', '#cccccc');
		}
	});
	if ($defined (oModBuscs.ti [0])) oModBuscs.ti [0].fireEvent ('change');
		
	oModBuscs.cp.setProperty ('lastCP', false);
	oModBuscs.cp.addEvent ('keypress', val_es_cp);
	oModBuscs.cp.addEvent ('keyup', function (e) {
		if (this.lastCP != this.value) {
			oModBuscs.cp.setProperty ('value', this.value);
			val_es_cpprov (this, this.value.substr (0, 2));
		}
	});
	
	/*
	oF.pr.cargaComunidad = function (c) {
		while (this.options [1]) this.options [1] = null;
		this.options [0] = new Option ("- todas las provincias -", 0, true);
		$each(provincias, function (p) {
			if (p.substr (0, 2) == c) {
				this.options [this.options.length] = new Option (p.substr (12), p.substr (3, 2));
			}
		});
	}
	*/
	oModBuscs.pr.forEach (function (o) {
		o.seleccionar = function (i) {
			$A(this.options).forEach (function (o, p) {
				if (o.value == i) this.selectedIndex = p;
			}.bind (this));
		};
	});
	oModBuscs.pr.addEvent ('change', function () {
		oModBuscs.cp.setProperty ('value', '');
	});
	
	if ($('znapublicidadnavegar')) {
		oModBuscs.pr.addEvent ('change', function () { this.form.fireEvent ('submit'); });
		oModBuscs.fa.addEvent ('change', function () { this.form.fireEvent ('submit'); });
		oModBuscs.ti.addEvent ('change', function () { this.form.fireEvent ('submit'); });
	}
}

window.addEvent ('domready', js_modBuscador);