function Confirmar(button)
{
	button.form.submit();
}

function Cancelar(Link)
{
	location.href = Link;
}

function criaItem(select,value,text)
{
	var novoOption = new Option();
	
	novoOption.text = text;
	novoOption.value = value;
	
	select.options.add(novoOption, 0);
}

function PassaItem(Origem, Destino, Indice)
{
	var antigoOption = Origem.options(Indice);

	criaItem(Destino, antigoOption.value, antigoOption.text)
	
	Origem.options.remove(Indice);
}

function existeItem(select, value)
{
	var o = select.options;

	for(var i = 0; i < o.length; i++)
	{
		if(o(i).value == value)
		{
			return true;
		}
	}

	return false;
}

function PassaItens(Origem, Destino, Todos)
{
	var o = Origem.options;

	for(var i = o.length - 1; i >= 0; i--)
	{
		if(Todos || o(i).selected)
		{
			PassaItem(Origem, Destino, i);
		}
	}
}

function CopiaItem(Origem, Destino, Indice)
{
	var novoOption = new Option();
	var antigoOption = Origem.options(Indice);

	novoOption.text = antigoOption.text;
	novoOption.value = antigoOption.value;
	
	Destino.options.add(novoOption, Destino.options.length);
}


function CopiaItems(Origem, Destino)
{
	var i;
	var o = Origem.options;
	var d = Destino.options;
	var selectedValue = '';

	for(i = 0; i < d.length; i++)

	while(d.length > 0)
	{
		if(d(0).selected && (selectedValue == ''))
		{
			selectedValue = d(0).value;
		}
		d.remove(0);
	}

	for(i = 0; i < o.length;i++)
	{
		CopiaItem(Origem, Destino, i);
		d(i).selected = (d(i).value == selectedValue);
	}
}

function SelecionaTodos(Select)
{
	var o = Select.options;

	for(var i = 0; i < o.length;i++)
	{
		o[i].selected = true;
	}
}

var args;

function AbreFecha(Ancora){
var src = Ancora.childNodes.item(0).src;
var display;

	if (src.substr(src.length - 5, 1) == "7")
	{
		Ancora.childNodes.item(0).src = "../images/i8.gif";
		display = "none";
	}
	else
	{
		Ancora.childNodes.item(0).src = "../images/i7.gif";
		display = "block";
	}

	if ((args != null)&&(args[0] != arguments[0]))
	{
		args[0].childNodes.item(0).src = "../images/i8.gif";
		for(var i = 1; i < args.length; i++)
		{
			document.all(args[i]).style.display = "none";
		}
	}

	for(var i = 1; i < arguments.length; i++)
	{
		document.all(arguments[i]).style.display = display;
	}

	args = arguments;
}


function IsCPF(strCPF)
{
	if (IsNumeric(strCPF.charAt(i))){		
		strCPF = RemoveNotNumeric(strCPF);
		var varFirstChr = strCPF.charAt(0);
		var vaCharCPF = false;

		for ( var i=0; i<=10; i++ ) { 
		     var c = strCPF.charAt(i);
		         if( ! (c>="0")&&(c<="9") ) { 
			return false;
		     } 
		         if( c!=varFirstChr ) vaCharCPF = true; 
		} 

		    if( ! vaCharCPF ) { 
			return false;
		    } 	

		soma=0;
		for ( i=0; i<9; i++ ) { 
			soma += (10-i) * ( eval(strCPF.charAt(i)) );	
		} 
		digito_verificador = 11-(soma % 11);
		if ( (soma % 11) < 2 ) digito_verificador = 0;
		if ( eval(strCPF.charAt(9)) != digito_verificador ) {
			return false;
		} 

		soma=0;
		for ( i=0; i<9; i++ ) {
			soma += (11-i) * ( eval(strCPF.charAt(i)) ); 
		}
		soma += 2 * ( eval(strCPF.charAt(9)) );
		digito_verificador = 11-(soma % 11);
		if ( (soma % 11) < 2 ) digito_verificador = 0;
		if ( eval(strCPF.charAt(10)) != digito_verificador ) { 
			return false; 
		} 
	}
	return true;
}

function IsCNPJ(scgc) {
        cgc = RemoveNotNumeric(scgc);
        if ((cgc.indexOf("-") != -1) || (cgc.indexOf(".") != -1) || (cgc.indexOf("/") != -1)){
                return( false )
        }
        var df, resto, dac = ""
        df = 5*cgc.charAt(0)+4*cgc.charAt(1)+3*cgc.charAt(2)+2*cgc.charAt(3)+9*cgc.charAt(4)+8*cgc.charAt(5)+7*cgc.charAt(6)+6*cgc.charAt(7)+5*cgc.charAt(8)+4*cgc.charAt(9)+3*cgc.charAt(10)+2*cgc.charAt(11)
        resto = df % 11
        dac += ( (resto <= 1) ? 0 : (11-resto) )
        df = 6*cgc.charAt(0)+5*cgc.charAt(1)+4*cgc.charAt(2)+3*cgc.charAt(3)+2*cgc.charAt(4)+9*cgc.charAt(5)+8*cgc.charAt(6)+7*cgc.charAt(7)+6*cgc.charAt(8)+5*cgc.charAt(9)+4*cgc.charAt(10)+3*cgc.charAt(11)+2*parseInt(dac)
        resto = df % 11
        dac += ( (resto <= 1) ? 0 : (11-resto) )
        return (dac == cgc.substring(cgc.length-2,cgc.length))
}

// Remove os caracteres não numéricos da string
function RemoveNotNumeric(strValue)
{ 
	var i, strReturn = "";
	for(i = 0; i < strValue.length; i++)
	{
		if(IsNumeric(strValue.substr(i, 1)))
			{strReturn += strValue.substr(i, 1)}
	}
	return(strReturn);
}

// Verifica se a string possui apenas caracteres numéricos
function IsNumeric(strNumber)
{
	for(var i = 0; i < strNumber.length; i++)
	{
		if(strNumber.charAt(i) < '0' || strNumber.charAt(i) > '9'){return(false)}
	}
	return(true);
}
 

// Retorna um xmldom a partir de uma URL somente para IE
function xmlFromServer(strURL)
{
	if (ie55){
		window.status = 'Carregando dados';
		var xml = new ActiveXObject("Microsoft.XMLDOM")
		xml.async = false
		xml.load(strURL + "&SISLightMode=1")
		window.status = '';
		if (arguments.length > 0 && arguments[1] && (xml.parseError.errorCode != 0 || xml.readyState != 4))
			alert(strURL + "&SISLightMode=1" + ' (' + xml.parseError.errorCode + ', ' + xml.readyState + ')');
	
		return xml;
	}else{
		return xmlFromServerSarissa(strURL);
	}
}
	
// Faz uma validação de formulário no servidor à partir de uma URL
function validateOnServer(strURL)
{
	if (ie55){
		var xml = xmlFromServer(strURL);
		return(xml.documentElement.nodeTypedValue == "true");
	}else{
		return validateOnServerSarissa(strURL);
	}
}

// Faz uma validação de formulário no servidor à partir de uma URL
function returnFromServer(strURL)
{
	if (ie55){
		var xml = xmlFromServer(strURL);
		return(xml.documentElement.nodeTypedValue);
	}else{
		return returnFromServerSarissa(strURL);
	}
}




// Retorna um xmldom a partir de uma URL para outros navegadores
function xmlFromServerSarissa(strURL)
{
	var location = window.document.location.href;		
	location = location.substring(0, location.indexOf("/", 8));
	
	var xmlhttp = new XMLHttpRequest();
	xmlhttp.open("GET",  location + strURL + "&SISLightMode=1", false);	
	xmlhttp.send(null);	
	return xmlhttp.responseXML;
}
	
// Faz uma validação de formulário no servidor à partir de uma URL
function validateOnServerSarissa(strURL)
{
	var xml = xmlFromServerSarissa(strURL);
	try{
		return(Sarissa.getText(xml.documentElement) == "true");
	}catch(err){
		return (xml.documentElement.textContent == "true");
	}

}

// Faz uma validação de formulário no servidor à partir de uma URL
function returnFromServerSarissa(strURL)
{
	var xml = xmlFromServerSarissa(strURL);
	try{
		return(Sarissa.getText(xml.documentElement));
	}catch(err){
		return xml.documentElement.textContent;
	}
}

// Retorna vários campos de um XML vindo do servidor em um vetor
function returnMultiFieldXML(strURL)
{
	var xml = xmlFromServer(strURL);

	var nodeList = xml.documentElement.childNodes;
	var values = new Array(nodeList.length);
	for (var i = 0; i < nodeList.length; i++) {
		values[i] = nodeList.item(i).nodeTypedValue;
	}
	return(values);
}

function FillListBox(select, xmlurl)
{
	var xslurl = "/SIS/Include/XSL.asp?Estilo=combo" + (arguments[4] ? "&SelecionaOUnico=1" : "");
	
	if(arguments[5]) {
		document.all.tags("input")[0].size = 100;
		document.all.tags("input")[0].value = xmlurl;
		alert(xmlurl);
	}

	// Load XML
	var xml = xmlFromServer(xmlurl);
	// Load XSL
	var xsl = xmlFromServer(xslurl);

	// Transform
	var strSelect = select.outerHTML;
	select.outerHTML = strSelect.substring(0, strSelect.indexOf(">", 6) + 1) + (arguments[2] ? '<OPTION value="">' + arguments[3] + '</OPTION>' : '') + xml.transformNode(xsl) + '</SELECT>';
}

function validaCampoVazio(campo, mensagem) {
	var retorno = '';

	if(campo.value.length == 0)
	{
		retorno = mensagem;
		campo.focus();
	}
	return retorno;
}

function listaAnexo(Codigo, Tipo, Inclusao, Exclusao) {	
	// Load XML
	var xml = xmlFromServer("/SIS/Include/SQLXML.asp?campo=LISTAANEXOS&Codigo=" + Codigo + "&Tipo=" + Tipo);
	// Load XSL
	var xsl = xmlFromServer("/SIS/Include/XSL.asp?Estilo=tableAnexos&Codigo=" + Codigo + "&Tipo=" + Tipo + "&Inclusao=" + Inclusao + "&Exclusao=" + Exclusao);		
	// Transform	
	document.all("divanexos").innerHTML = xml.transformNode(xsl);
}

function showFile(Tipo, codArquivo){
   url = "/SIS/Include/showFile.asp?Tipo=" + Tipo + "&codArquivo=" + codArquivo;
   window.open(url,"","");
}

function abreAnexos(Codigo, Tipo, Inclusao, Exclusao) {
	var height = 105;
	var width = 550;
	var top = (window.screen.height - height) / 2;
	var left = (window.screen.width - width) / 2;
	wnd = window.open('/SIS/Include/Anexos.asp?Codigo=' + Codigo + '&Tipo=' + Tipo + "&Inclusao=" + Inclusao + "&Exclusao=" + Exclusao,'','toolbar=no,resizable=yes,scrollbars=no,width=' + width + ',height=' + height + ',top=' + top + ',left=' + left)
}

function removeOptionInutil(select){
	var o = select.options;
	if(o.length == 1 && o(0).value.length == 0)
	{
		o.remove(0);	
	}
}
