	

	/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

	// FORMULARIO DE BÚSQUEDA: RELLENAN CADA LISTA DESPLEGABLE DEL FORMULARIO

	/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

	

	function form_section_fill () {

		

		index = 1;

		section = null;

		for (i = 0; i < list_sec_fam.length; i++) {

			

			// Si la sección leida de la matriz es distinta a la leida anteriormente, la imprime

			// Si no, al estar repetida, la ignora y verifica la siguiente

			if (list_sec_fam [i][0] != section) {

				document.form_search.sel_section.options [index] = new Option (list_sec_fam [i][1], list_sec_fam [i][0], false, false);

				section = list_sec_fam [i][0];

				index++;

			}

		}

	}

	

	function form_family_fill (section) {

		

		var index = 1;

		for (i = 0; i < list_sec_fam.length; i++) {

			

			// Si la familia actual coincide en sección con la sección pasada, la imprime

			// Si no, la ignora y verifica la siguiente

			if (list_sec_fam [i][0] == section) {

				document.form_search.sel_family.options [index] = new Option (list_sec_fam [i][3], list_sec_fam [i][2], false, false);

				index++;

			}

		}

	}

	

	/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

	// FORMULARIO DE BÚSQUEDA: INICIALIZA LAS FAMILIAS DEPENDIENDO DE LO ESCOGIDO EN SECCIONES

	/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////



	function form_family_init () {

		

		// Crea punteros a los objetos del formulario

		var sel_section = document.form_search.sel_section;

		var sel_family = document.form_search.sel_family;

		

		// Si selecciona la opción "Todos", bloquea la lista de familias y elimina el contenido de ésta, salvo el del primer índice

		if (sel_section.options [sel_section.selectedIndex].value == "") {



			sel_family.disabled = true;

			sel_family.selectedIndex = 0;



		} else {



			sel_family.options.length = 1;

			form_family_fill (sel_section.options [sel_section.selectedIndex].value);

			sel_family.selectedIndex = 0;

			sel_family.disabled = false;

			

		}

	}





	/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

	// FORMULARIO DE BÚSQUEDA: ENVÍO

	/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////



	function form_search_submit (block, page) {

		

		// Si no se han producido errores, continúa

		// Si sí, muestra un mensaje de error

		if (! form_search_check ()) {

			

			// Crea punteros a los objetos del formulario

			var form = document.form_search;

			var txb_text = form.txb_text;

			var sel_section = form.sel_section;

			var sel_family = form.sel_family;

			var txb_from = form.txb_from;

			var txb_upto = form.txb_upto;

	

			// Crea el nombre del archivo actual

			var url = "search.php?block=" + block + "&page=" + page;

			

			// Añade las variables "text", "section", "family", "from" y "upto"a la URL si han sido modificadas

			if (txb_text.value != "") url += "&text=" + encodeURIComponent (txb_text.value);

			if ((sel_section.selectedIndex != 0) && (sel_family.selectedIndex == 0))

			url += "&section=" + sel_section.options [sel_section.selectedIndex].value;

			if ((sel_section.selectedIndex != 0) && (sel_family.selectedIndex != 0)) {

				url += "&section=" + sel_section.options [sel_section.selectedIndex].value + "&family=" + sel_family.options [sel_family.selectedIndex].value;

			}

			if (txb_from.value != "") url += "&from=" + txb_from.value;

			if (txb_upto.value != "") url += "&upto=" + txb_upto.value;

			

			// Carga la nueva página

			location.href = url;

			

		}		

	}

	

	

	/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

	// FORMULARIO DE BÚSQUEDA: VERIFICACIÓN

	/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////



	function form_search_check () {

		

		// Crea punteros a los objetos del formulario

		var form = document.form_search;

		var txb_text = form.txb_text;

		var sel_section = form.sel_section;

		var sel_family = form.sel_family;

		var txb_from = form.txb_from;

		var txb_upto = form.txb_upto;



		// 1 - PRECIOS

		

			var error_price = "";

						

			// 1A - SON NÚMEROS

				

				if ((isNaN (txb_from.value)) || (isNaN (txb_upto.value))) {

					

					error_price = "Precios: Deben de estar formados por números enteros o decimales exclusivamente.\n";

					

			// 1B - PRECIO INICIAL SEA MENOR QUE EL FINAL

			

				} else if ((txb_from.value != "") && (txb_upto.value != "") && (txb_from.value >= txb_upto.value)) {



					error_price = "Precios: el precio inicial ha de ser menor que el final.\n";

				}



			

		// MENSAJE DE ERROR Y DEVOLUCIÓN DE RESULTADO

		var error = error_price;

		if (error == "") {

			return false;

		} else {

			alert ("¡ERROR!\n\n" + error + "Verifique los datos introducidos en el formulario. Gracias.");

			return true;

		}

		

	}

	