﻿function provincia(id, nombre, comunidad) {
    this.id = id;
    this.nombre = nombre;
    this.comunidad = comunidad;
}
var provincias = new Array();
provincias[provincias.length] = new provincia('4','Almería','1');
provincias[provincias.length] = new provincia('11','Cádiz','1');
provincias[provincias.length] = new provincia('14','Córdoba','1');
provincias[provincias.length] = new provincia('18','Granada','1');
provincias[provincias.length] = new provincia('21','Huelva','1');
provincias[provincias.length] = new provincia('23','Jaén','1');
provincias[provincias.length] = new provincia('29','Málaga','1');
provincias[provincias.length] = new provincia('41','Sevilla','1');
provincias[provincias.length] = new provincia('22','Huesca','2');
provincias[provincias.length] = new provincia('44','Teruel','2');
provincias[provincias.length] = new provincia('50','Zaragoza','2');
provincias[provincias.length] = new provincia('33','Asturias','3');
provincias[provincias.length] = new provincia('35','Las Palmas','4');
provincias[provincias.length] = new provincia('38','Tenerife','4');
provincias[provincias.length] = new provincia('39','Santander','5');
provincias[provincias.length] = new provincia('5','Ávila','6');
provincias[provincias.length] = new provincia('9','Burgos','6');
provincias[provincias.length] = new provincia('24','León','6');
provincias[provincias.length] = new provincia('34','Palencia','6');
provincias[provincias.length] = new provincia('37','Salamaca','6');
provincias[provincias.length] = new provincia('40','Segovia','6');
provincias[provincias.length] = new provincia('42','Soria','6');
provincias[provincias.length] = new provincia('47','Valladolid','6');
provincias[provincias.length] = new provincia('49','Zamora','6');
provincias[provincias.length] = new provincia('2','Albacete','7');
provincias[provincias.length] = new provincia('13','Ciudad Real','7');
provincias[provincias.length] = new provincia('16','Cuenca','7');
provincias[provincias.length] = new provincia('19','Guadalajara','7');
provincias[provincias.length] = new provincia('45','Toledo','7');
provincias[provincias.length] = new provincia('8','Barcelona','8');
provincias[provincias.length] = new provincia('17','Girona','8');
provincias[provincias.length] = new provincia('25','Lleida','8');
provincias[provincias.length] = new provincia('43','Tarragona','8');
provincias[provincias.length] = new provincia('51','Ceuta','9');
provincias[provincias.length] = new provincia('3','Alicante','10');
provincias[provincias.length] = new provincia('12','Castellón','10');
provincias[provincias.length] = new provincia('46','Valencia','10');
provincias[provincias.length] = new provincia('6','Badajoz','11');
provincias[provincias.length] = new provincia('10','Cáceres','11');
provincias[provincias.length] = new provincia('15','La Coruña','12');
provincias[provincias.length] = new provincia('27','Lugo','12');
provincias[provincias.length] = new provincia('32','Orense','12');
provincias[provincias.length] = new provincia('36','Pontevedra','12');
provincias[provincias.length] = new provincia('7','Baleares','13');
provincias[provincias.length] = new provincia('28','Madrid','14');
provincias[provincias.length] = new provincia('52','Melilla','15');
provincias[provincias.length] = new provincia('30','Murcia','16');
provincias[provincias.length] = new provincia('31','Navarra','17');
provincias[provincias.length] = new provincia('1','Álava','18');
provincias[provincias.length] = new provincia('20','Guipúzcoa','18');
provincias[provincias.length] = new provincia('48','Vizcaya','18');
provincias[provincias.length] = new provincia('26','La Rioja','19');

function cargarprovincias(prov) {
    var elem_com = document.form_buscar.Comunidad;
    var elem_prov = document.form_buscar.Provincia;
    var sel_id = elem_com.options[elem_com.selectedIndex].value;
    elem_prov.options.length = 2;
    for (var i = 0; i < provincias.length; i++) {
        if (provincias[i].comunidad == sel_id) {
            elem_prov.options[elem_prov.options.length] = new Option(provincias[i].nombre, provincias[i].id);
            if (provincias[i].id == prov) 
                elem_prov.options[elem_prov.options.length - 1].selected = true;
        }
    }
}

function aplicarfiltro() {
    var bH = document.filtro.chk_H.checked;
    var bC = document.filtro.chk_C.checked;
    var bR = document.filtro.chk_R.checked;
    var bA = document.filtro.chk_A.checked;
    var elems = document.getElementsByTagName('tr');
	var iCountPag = 0;
	if (iPage < 1) iPage = 1;
	var iInitPage = (iPage - 1) * iPageSize;
	var iEndPage = (iPage) * iPageSize;
	//alert(iInitPage + ' - ' + iEndPage);
    for (var i = 0; i < elems.length; i++) {
        var tr_id = elems[i].id;
        if (tr_id.indexOf('fil_') >= 0) {
            if ((bH && (tr_id.indexOf('H') > 0)) || (bC && (tr_id.indexOf('C') > 0)) || 
                    (bR && (tr_id.indexOf('R') > 0)) || (bA && (tr_id.indexOf('A') > 0))) {
				iCountPag++;
				if ((iCountPag >= iInitPage) && (iCountPag < iEndPage))
					elems[i].style.display = '';
	            else
	                elems[i].style.display = 'none';
            } else {
                elems[i].style.display = 'none';
            }
        }
    }
	var iTotalPages = parseInt((iCountPag / iPageSize), 10) + 1;
	if (iPage > iTotalPages) {
		pagina(iPage - 1);
	} else {
		var elResum = document.getElementById('resumen_pagina');
		if (elResum) {
			elResum.innerHTML = 'P&aacute;gina ' + iPage + ' de ' + iTotalPages;
		}
		//alert(elResum.innerHTML);
		var elemPag = document.getElementById('pagina_1');
		var elemBPag = document.getElementById('paginab_1');
		var j = 1;
		while (elemPag) {
		//alert(elemPag + ' - ' + j + ' - ' + iTotalPages);
			if (j <= iTotalPages)
				if (j == iPage) {
				//alert(elemBPag.innerHTML);
					elemPag.style.display = 'none';
					elemBPag.style.display = '';
				} else {
					elemPag.style.display = '';
					elemBPag.style.display = 'none';
				}
			else {
				elemPag.style.display = 'none';
				elemBPag.style.display = 'none';
			}
			j++;
			elemPag = document.getElementById('pagina_' + j);
			elemBPag = document.getElementById('paginab_' + j);
		}
	}
	if (document.getElementById('anteriores')) {
        if (iPage == 1) document.getElementById('anteriores').style.display = 'none';
        else document.getElementById('anteriores').style.display = '';
	}
	if (document.getElementById('siguientes')) {
        if (iPage == iTotalPages) document.getElementById('siguientes').style.display = 'none';
        else document.getElementById('siguientes').style.display = '';
	}
}

function pagina(i) {
	iPage = i;
	aplicarfiltro();
}

var iPage = 1;
var iPageSize = 20;
