function caricaPage(n) {
	root = XMLDOC.documentElement
	nodes = root.selectNodes("PAGE");
	XMLTBL.loadXML(nodes[n].xml)
	inPage = n
	addPaginazione()
}

function prevPage() {
	if (inPage<=0)
		caricaPage(0)
	else
		caricaPage(--inPage)
}

function nextPage() {
	if (inPage>=npages-1)
		caricaPage(npages-1)
	else
		caricaPage(++inPage)
}

function addPaginazione() {
	removePaginazione();
	contapg = 0
	pagina = inPage+1
	if (pagina > 1) {
		newa = document.createElement("A")
		newa.href = "javascript:prevPage()"
		newa.className="testolink";
		newa.innerText = "back"
		paginazione.appendChild(newa)
		newa.insertAdjacentHTML("afterEnd","&nbsp;")
	}
	if (pagina > 10) {
		contapg = (parseInt((inPage)/10))*10
		newa = document.createElement("A")
		newa.href = "javascript:caricaPage("+(contapg-1)+")"
		newa.className="testolink";
		newa.innerHTML = "&laquo;"+(contapg)
		paginazione.appendChild(newa)
		newa.insertAdjacentHTML("afterEnd","&nbsp;")
	}
	if (pagina>0) {
		for (i=contapg;i<=contapg+9;i++) {
			if (i>=npages) break;
			bold = document.createElement("B")
			newa = document.createElement("A")
			newa.href = "javascript:caricaPage("+i+")"
			newa.className="testolink";
			newa.innerText = i+1
			if (i==inPage) {
				//bold.appendChild(newa)
				bold.innerText =i+1
				paginazione.appendChild(bold)
				bold.insertAdjacentHTML("afterEnd","&nbsp;")
			}
			else
				paginazione.appendChild(newa)
			newa.insertAdjacentHTML("afterEnd","&nbsp;")
		}
	}
	if ((npages>10)&&(contapg+10<npages)) {
		contapg = (parseInt(inPage/10)*10)+10
		newa = document.createElement("A")
		newa.href = "javascript:caricaPage("+(contapg)+")"
		newa.className="testolink";
		newa.innerHTML = "&raquo;"+(contapg+1)
		paginazione.appendChild(newa)
		newa.insertAdjacentHTML("afterEnd","&nbsp;")
	}
	if (pagina<npages) {
		newa = document.createElement("A")
		newa.href = "javascript:nextPage()"
		newa.className="testolink";
		newa.innerText = "next"
		paginazione.appendChild(newa)
		newa.insertAdjacentHTML("afterEnd","&nbsp;")
	}
}

function removePaginazione() {
	paginazione.innerHTML='';
}

function carica(pageXML) {
	removePaginazione();
	XMLDOC.async = false;
	XMLTBL.async = false;
	XMLDOC.load(pageXML+"&pageSize="+pageSize);
	root = XMLDOC.documentElement;
	if (root!=null){
		if (root.hasChildNodes()) {
			npages = root.getAttribute("npages");
			nrecs = root.getAttribute("nrecs");
			nodes = root.selectNodes("PAGE");
			XMLTBL.loadXML(nodes[0].xml);
			if (nodes.length>1) addPaginazione();
			return true
		} else {
			return false
		}
	} else {
	return false
	}
	return false
}