function GetXMLHTTP()
{
	var xmlhttp;

	if (typeof XMLHttpRequest != "undefined")
	{
		try
		{ xmlhttp = new XMLHttpRequest(); }
		catch (e)
		{ xmlhttp = false; }
	}
	else
	{
		try
		{ xmlhttp = new ActiveXObject("Msxml2.XMLHTTP"); }
		catch (e)
		{ xmlhttp = false; }
	}
	return xmlhttp;
}

function RPCGet(url, handler, data)
{
	var xmlhttp = GetXMLHTTP();

	if (!xmlhttp) return false;
	if (!data) data = null;

	xmlhttp.open("GET", url, true);
	xmlhttp.onreadystatechange = function()
	{
		if (xmlhttp.readyState == 4 && handler)
			eval(handler(xmlhttp.responseText))
	};
	xmlhttp.send(data);
}

function RPCPost(url, handler, data)
{
	var xmlhttp = GetXMLHTTP();

	if (!xmlhttp)
		return false;
	if (!data)
		data = null;

	xmlhttp.open("POST", url, true);
	xmlhttp.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
	xmlhttp.onreadystatechange = function()
	{
		if (xmlhttp.readyState == 4 && handler)
			eval(handler(xmlhttp.responseText))
	};
	xmlhttp.send(data);
}
	
function votarEnquete(enqueteID) {
	objForm   = document.forms['frmEnquete'+enqueteID];
	if(!objForm)
		return false;
	objOpcoes  = objForm.opcao_id;
	votou      = false;
	contOpcoes = (objOpcoes.length) ? objOpcoes.length : 0;
	i = 0;
	while(!votou && i < contOpcoes) {
		if (objOpcoes[i].checked)
			votou = true;
		i++;
	}	
	if (!votou) {
		alert("Escolha uma opção de voto");
		return false;
	}
	
	w = window.open("","_voto","width=450,height=300");
	return true;
}

function trim(texto) {
	while (texto.substring(0,1) == ' ') {
		texto = texto.substring(1, texto.length);
	}
	while (texto.substring(texto.length-1, texto.length) == ' ') {
		texto = texto.substring(0,texto.length-1);
	}
	return texto;
}

function validaFormDOM(formName) {
	
	var f;
	
	if (typeof(formName) == 'object') 
		f = formName;
	else
		f = document.getElementById(formName);

	if (!f)
		return false;

	var i, fElementos;

	fElementos = f.elements;

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

		_valor = fElementos[i].value;
		_regex = fElementos[i].getAttribute("regex");
		_etiqueta = fElementos[i].getAttribute("etiqueta") ? fElementos[i].getAttribute("etiqueta") : "o valor do campo" ;

		if ((fElementos[i].type != "hidden" && fElementos[i].type == "text" || fElementos[i].type == "textarea") && fElementos[i].getAttribute("obrigatorio") == "S") {
			if(_regex) {
				_r = new RegExp(_regex);
				if (!_r.test(_valor)) {
					alert ("Informe " + _etiqueta + " corretamente");
					fElementos[i].focus();
					return false;
				}
			} else if (trim(_valor) == "") {
				alert("Entre com " + _etiqueta);
				fElementos[i].focus();
				return false;
			}
		} else if ((fElementos[i].type == "select-one" || fElementos[i].type == "select-multiple") && fElementos[i].getAttribute("obrigatorio") == "S") {
				if (!(fElementos[i].selectedIndex >= 0 && fElementos[i][fElementos[i].selectedIndex].value != "")) {
					alert("Selecione uma opção para " + _etiqueta);
					fElementos[i].focus();
					return false;
				}
		}
	}

	return true;
}

function exibePaginaTexto(idx) {
	objDiv = document.getElementsByTagName("div");
	var j = 0;
	
	strImgsV = Array("imagens/botao-paginavaziaR.gif", "imagens/botao-paginavaziaL.gif");
	strImgsC = Array("imagens/botao-paginacheiaR.gif", "imagens/botao-paginacheiaL.gif");
		
	for (var i = 0; i < objDiv.length; i++) {
		if (objDiv[i].getAttribute("textoFatiado") == "sim") {
			objImg = document.getElementById("imgPagina" + j);
			if (objDiv[i].getAttribute("id") == ("divPaginaTexto" + idx)) {
				objDiv[i].style.display = "block";
				objImg.src = strImgsC[j%2]; // pagina cheia
			} else {
				objDiv[i].style.display = "none";
				objImg.src = strImgsV[j%2];
			}
			j++;
		}
	}
	
	objNumPags = document.getElementById("numPaginas");
	objNumPags.innerHTML = (idx + 1) + "/" + j;
}

function exibeLinksPaginaTexto(strTexto) {
	
	strTexto = strTexto.split("#QUEBRA#");
	strHTML  = "";
	
	strImgsV = Array("imagens/botao-paginavaziaR.gif", "imagens/botao-paginavaziaL.gif");
	strImgsC = Array("imagens/botao-paginacheiaR.gif", "imagens/botao-paginacheiaL.gif");
	
	strHTML = "<p>";
	
	var i;
	strHTML += "<img src='imagens/pixel.gif' width='10' height='14' border='0' hspace='1' />";
	
	for (i = 0; i < strTexto.length; i++) {
		strHTML += "<img src='"+ ((i== 0) ? strImgsC[(i%2)] : strImgsV[(i%2)] ) +"' id='imgPagina"+i+"' onclick='exibePaginaTexto(" + i + ");' style='cursor: pointer' hspace='1' />";
		if ((i == 0) || (i%2 == 0))
			strHTML += "</p><p>";
	}
    
    if (!(i%2))
    	strHTML += "<img src='imagens/pixel.gif' width='10' height='14' border='0' hspace='1' />";
	strHTML += "</p>";
	strHTML += "<p id='numPaginas'>1/" + strTexto.length + "</p>";
	
	return (strTexto.length > 1) ? strHTML : ""; 
}

function fatiaTexto(strTexto, idx) {
	strTexto = strTexto.split("#QUEBRA#");
	
	strHTML = "";
	
	for (var i = 0; i < strTexto.length; i++) {
		strHTML += "<div textoFatiado='sim' id='divPaginaTexto" + i + "' style='display: " + ((idx == i) ? "block" : "none") + "'>" + strTexto[i] + "<p></div>";
	}

	return strHTML;
}


function abreJanela(url, w, h, barras) {
    var width = w;
    var height = h;
    var left = parseInt((screen.availWidth/2) - (width/2));
    var top = parseInt((screen.availHeight/2) - (height/2));
    var windowFeatures = "width=" + width + ",height=" + height + ",status,resizable,left=" + left + ",top=" + top + "screenX=" + left + ",screenY=" + top;
    
    windowFeatures = (barras) ? windowFeatures + ",scrollbars=1, toolbar=1" : windowFeatures;

    myWindow = window.open(url, "subWind", windowFeatures);
}

function chgIcoEditoria(edID) {
	objSpans = document.getElementsByTagName("span");
	for (i = 0; i < objSpans.length; i++) {
		if (objSpans[i].getAttribute("grupo") == "icoEditoria") {
			if (objSpans[i].getAttribute("id") == ("icoEditoria" + edID)) {
				objSpans[i].style.display = "block";
			} else {
				objSpans[i].style.display = "none";
			}
		}
	}
}


function removePalavra(palavra, texto) {
	texto = texto.split(palavra)
	strTXT = "";
	for (i = 0; i < texto.length; i++)
		strTXT += texto[i];
	return strTXT;
}

idxFonte = 0;
arrFonteSize = Array("xx-small", "x-small", "small", "medium", "large", "x-large", "xx-large");

function dimensionaFonte(op) {
	objDivs = document.getElementsByTagName("p");

	if (op == "+")
		idxFonte = (idxFonte > 4) ? idxFonte : idxFonte+1;
	else
		idxFonte = (idxFonte < 1) ? idxFonte : idxFonte-1;
		
	for (i = 0; i < objDivs.length; i++) {
		objDivs[i].style.fontSize = arrFonteSize[idxFonte];
	}	
}

function exibeElemento(id) {
	if (!document.getElementById(id))
		return;
		
	if (document.getElementById(id).style.display == "block")
		document.getElementById(id).style.display = "none";
	else
   		document.getElementById(id).style.display = "block";
   		
}

function paginaAnterior(frm) {
	with(frm) {
		pagina = parseInt(p.value);
		if (pagina <= 1)
			return;
		else
			p.value = pagina -1;
		submit();
	}	
}

function paginaSeguinte(frm) {
	with(frm) {
		pagina = parseInt(p.value);
		total  = parseInt(tp.value);
		if (pagina >= total)
			return;
		else
			p.value = pagina + 1;
		submit();
	}	
}	

function irPara(pag, frm) {
	with(frm) {
		if (p.value == pag) return;
		p.value = pag;
		submit();
	}
}
