function checaCNPJ(cnpj)
      {
	var cnpj_parte1 = cnpj.substring(0,2);
	var cnpj_parte2 = cnpj.substring(3,6);
    var cnpj_parte3	= cnpj.substring(7,10);
    var cnpj_parte4	= cnpj.substring(11,15);
    var cnpj_parte5	= cnpj.substring(16,18);
	
	cnpj = cnpj_parte1 + cnpj_parte2 + cnpj_parte3 + cnpj_parte4 + cnpj_parte5;		

      var numeros, digitos, soma, i, resultado, pos, tamanho, digitos_iguais;
      digitos_iguais = 1;
      if (cnpj.length < 14 && cnpj.length < 15)
            return false;
      for (i = 0; i < cnpj.length - 1; i++)
            if (cnpj.charAt(i) != cnpj.charAt(i + 1))
                  {
                  digitos_iguais = 0;
                  break;
                  }
      if (!digitos_iguais)
            {
            tamanho = cnpj.length - 2
            numeros = cnpj.substring(0,tamanho);
            digitos = cnpj.substring(tamanho);
            soma = 0;
            pos = tamanho - 7;
            for (i = tamanho; i >= 1; i--)
                  {
                  soma += numeros.charAt(tamanho - i) * pos--;
                  if (pos < 2)
                        pos = 9;
                  }
            resultado = soma % 11 < 2 ? 0 : 11 - soma % 11;
            if (resultado != digitos.charAt(0))
                  return false;
            tamanho = tamanho + 1;
            numeros = cnpj.substring(0,tamanho);
            soma = 0;
            pos = tamanho - 7;
            for (i = tamanho; i >= 1; i--)
                  {
                  soma += numeros.charAt(tamanho - i) * pos--;
                  if (pos < 2)
                        pos = 9;
                  }
            resultado = soma % 11 < 2 ? 0 : 11 - soma % 11;
            if (resultado != digitos.charAt(1))
                  return false;
            return true;
            }
      else
            return false;
      } 


 function checaCPF (CPF) {
	var cpf_parte1  =CPF.substring(0,3);
	var cpf_parte2  =CPF.substring(4,7);
    var cpf_parte3	=CPF.substring(8,11);
    var cpf_parte4	=CPF.substring(12,14);
	CPF = cpf_parte1 + cpf_parte2 + cpf_parte3 + cpf_parte4;		
	
	if (CPF.length != 11 || CPF == "00000000000" || CPF == "11111111111" ||
		CPF == "22222222222" ||	CPF == "33333333333" || CPF == "44444444444" ||
		CPF == "55555555555" || CPF == "66666666666" || CPF == "77777777777" ||
		CPF == "88888888888" || CPF == "99999999999")
		return false;
	soma = 0;
	for (i=0; i < 9; i ++)
		soma += parseInt(CPF.charAt(i)) * (10 - i);
	resto = 11 - (soma % 11);
	if (resto == 10 || resto == 11)
		resto = 0;
	if (resto != parseInt(CPF.charAt(9)))
		return false;
	soma = 0;
	for (i = 0; i < 10; i ++)
		soma += parseInt(CPF.charAt(i)) * (11 - i);
	resto = 11 - (soma % 11);
	if (resto == 10 || resto == 11)
		resto = 0;
	if (resto != parseInt(CPF.charAt(10)))
		return false;
//        alert('Correto');
	return true;
 }


function checaCEI(cei)
{
	var cei_parte1  =cei.substring(0,3);
	var cei_parte2  =cei.substring(4,7);
    var cei_parte3	=cei.substring(8,12);
    var cei_parte4	=cei.substring(13,15);
	cei = cei_parte1 + cei_parte2 + cei_parte3 + cei_parte4;		

cei_tmp= "";
  for (i = 0; (i <= cei.length ); i++) 
  { 
    p = cei.charAt(i,1) ;
    if (p != " ") 
    {   
        cei_tmp+=p;
    }
  }
 cei_tmp      = "000000000000" + cei_tmp;
  nPosIni       = cei_tmp.length - 12;
  cei_tmp      = cei_tmp.substring(nPosIni,cei_tmp.length);
  var cDigito   = "";                                                                                 
  var ceidig1   = cei_tmp.substring(0,1);                                                                
  var ceidig2	= cei_tmp.substring(1,2);
  var ceidig3	= cei_tmp.substring(2,3);
  var ceidig4	= cei_tmp.substring(3,4);
  var ceidig5	= cei_tmp.substring(4,5);
  var ceidig6	= cei_tmp.substring(5,6);
  var ceidig7	= cei_tmp.substring(6,7);
  var ceidig8	= cei_tmp.substring(7,8);
  var ceidig9	= cei_tmp.substring(8,9);
  var ceidig10	= cei_tmp.substring(9,10);
  var ceidig11 = cei_tmp.substring(10,11);                                                                  
  var ceidig12  = cei_tmp.substring(11,12);     
  var soma   = 0;     
  soma = ceidig1 + ceidig2;                                                                            
  if ((soma ==0 ))
 
  return false;
 
  if ((ceidig11 == 1) || (ceidig11 == 2) || (ceidig11 == 3) || (ceidig11 == 4) || (ceidig11 == 5))
      return false;
   
                                                                               
 soma =0;
 soma += ceidig1  * 7;
 soma += ceidig2  * 4;
 soma += ceidig3  * 1;
 soma += ceidig4  * 8;
 soma += ceidig5  * 5;
 soma += ceidig6  * 2;
 soma += ceidig7  * 1;
 soma += ceidig8  * 6;
 soma += ceidig9  * 3;
 soma += ceidig10 * 7;
 soma += ceidig11 * 4;
 var soma2 = "" + soma;
 
  var somauni = soma2.substring((soma2.length - 1),soma2.length);
 var somadez = soma2.substring((soma2.length - 2),(soma2.length - 1));
  
 var somauni1 = parseInt(somauni);
 var somadez1= parseInt(somadez);
 
  soma = somauni1 + somadez1 ;
  soma2 = "" + soma;
 somauni = soma2.substring((soma2.length - 1),soma2.length);
  if ( somauni == 0)
 	soma=0
 else
    soma = 10 - parseInt(somauni);
		
if (soma != ceidig12)

 return false;

return true;
 
 }

function AbreJanela(szJanela, szUrl, intWidth, intHeight ) {
	var posx = (screen.width-intWidth)/2;
	var posy = (screen.height-intHeight)/2;

	win = window.open(szUrl,szJanela,'toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=yes,menubar=no,width='+intWidth+',height='+intHeight+',screenX='+posx+',screenY='+posy);
	win.moveTo(posx,posy);
	win.focus();
}
function FechaJanela( w ) {
	w.opener.location.reload();
	w.close();
}

function Procura( o, szUrl ) {
	if( o.value == '') {
		alert("Você precisa especificar algum parâmetro de procura.");
		return;
	}

	if( szUrl != '' )
		AbreJanela( 'procura',szUrl+'?key='+o.value+"&field="+o.name, 350, 200);
	else
		alert( "Tipo de procura inválida." );
}


function SetCheckBox( obj, str )
{
	var tam=obj.length;

	if( tam == undefined )
	{
		if( obj.value == str )
			obj.checked = true;
	}
	else
	{
		for( i=0; i < tam; i++ )
		{
			if( obj[i].value == str )
			{
				obj[i].checked = true;
				return;
			}
		}
	}
}

function procuraSimples( obj, field, label, table, title, width, height )
{
	if( obj.value == '')
	{
		alert("++ Erro\n\nÉ necessário especificar um parâmetro de procura.");
		return;
	}

	if( field != '' || table != '' )
		AbreJanela( 'procuraSimples','../funcoes/procuraSimples.php?key='+obj.value+'&field2='+obj.name+
				   '&field1='+field+'&label='+label+'&table='+table+'&title='+title,width, height);
	else
		alert( "++ Erro\n\nTipo de procura inválida." );
}

//Clientes Guias on-line
function procuraSimplesOnLine( obj, field, label, table, title, width, height )
{
	if( obj.value == '')
	{
		alert("++ Erro\n\nÉ necessário especificar um parâmetro de procura.");
		return;
	}

	if( field != '' || table != '' )
		AbreJanela( 'procuraSimples','../../procuraSimples.php?key='+obj.value+'&field2='+obj.name+
				   '&field1='+field+'&label='+label+'&table='+table+'&title='+title,width, height);
	else
		alert( "++ Erro\n\nTipo de procura inválida." );
}
////////////////////////

//Clientes Guias on-line
function seaac_procuracliente( obj, field, label, table, title, width, height )
{
	if( obj.value == '')
	{
		alert("++ Erro\n\nÉ necessário especificar um parâmetro de procura.");
		return;
	}

	if( field != '' || table != '' )
		AbreJanela( 'procuraSimples','../../seaac_procuracliente.php?key='+obj.value+'&field2='+obj.name+
				   '&field1='+field+'&label='+label+'&table='+table+'&title='+title,width, height);
	else
		alert( "++ Erro\n\nTipo de procura inválida." );
}
////////////////////////




function procuraUsuarioNoCliente( obj, field, label, table, title, width, height )
{
	if( obj.value == '')
	{
		alert("++ Erro\n\nÉ necessário especificar um parâmetro de procura.");
		return;
	}

	if( field != '' || table != '' )
		AbreJanela( 'procuraSimples','../../procuraSimples.php?key='+obj.value+'&field2='+obj.name+
				   '&field1='+field+'&label='+label+'&table='+table+'&title='+title,width, height);
	else
		alert( "++ Erro\n\nTipo de procura inválida." );
}

function procuraSimplesDesc( obj, field, label, table, title, width, height )
{
	if( obj.value == '')
	{
		alert("++ Erro\n\nÉ necessário especificar um parâmetro de procura.");
		return;
	}

	if( field != '' || table != '' )
		AbreJanela( 'procuraSimplesDesc','../funcoes/procuraSimplesDesc.php?key='+obj.value+'&field2='+obj.name+
				   '&field1='+field+'&label='+label+'&table='+table+'&title='+title,width, height);
	else
		alert( "++ Erro\n\nTipo de procura inválida." );
}


function procuraSimples1( obj, field, label, table, title, width, height )
{
	if( obj.value == '')
	{
		alert("++ Erro\n\nÉ necessário especificar um parâmetro de procura.");
		return;
	}

	if( field != '' || table != '' )
		AbreJanela( 'procuraSimples','../funcoes/procuraSimples1.php?key='+obj.value+'&field2='+obj.name+
				   '&field1='+field+'&label='+label+'&table='+table+'&title='+title,width, height);
	else
		alert( "++ Erro\n\nTipo de procura inválida." );
}



function ProcuraSel( o, szUrl ) {
	var valor=GetSelect(o);
	
	if( valor  == '-1') {
		alert("Você precisa especificar algum parâmetro de procura.");
		return;
	}

	if( szUrl != '' )
		AbreJanela( 'procSel',szUrl+'?key='+valor+"&campo="+o.name, 350, 200);
	else
		alert( "Tipo de procura inválida." );
}

function SetSelect( sel, strOpt ) {
	if( strOpt == "" ) return;
	for( var i=0; i < sel.length; i++ ) {

		if( sel.options[i].value == strOpt ) {
			sel.options[i].selected = true;
			return;
		}
	}
}

function SetRadio( sel, strOpt ) {
	if( strOpt == "" ) return;

	for( var i=0; i < sel.length; i++ ) {
		if( sel[i].value == strOpt ) {
			sel[i].checked = true;
			return;
		}
	}
}

function SetRadio( o, strOpt ) {
	if( strOpt == "" ) return;
	
	var tam=o.length;
	
	if( tam > 1 ) {
		for( var i=0; i < tam; i++ )
			if( o[i].value == strOpt ) {
				o[i].click();
				return;
			}
	} else
		if( o.value == strOpt )
			o.click();
}

function GetSelect( o ) 
{
	return o.options[o.options.selectedIndex].value;
}

function GetRadio( o ) {
	var tam=o.length;
	
	if( tam > 1 ) {
		for (var i=0;i<tam;i++)
			if(o[i].checked=="1")
				return o[i].value;
	} else
		if(o.checked=="1")
			return o.value;

	return "";
}

function VerificaData( dia, mes, ano ) {
	if( dia.length != 2 || mes.length != 2 || ano.length != 4 )
		return false;
		
	if( dia <= 0 || dia > 31 )
		return false;
		
	if( mes <= 0 || mes > 12 )
		return false;
		
	if( mes == 2 && dia > 29 )
		return false;
		
	if( mes == 3 && dia > 31 )
		return false;

	if( mes == 4 && dia > 30 )
		return false;

	if( mes == 5 && dia > 31 )
		return false;

	if( mes == 6 && dia > 30 )
		return false;

	if( mes == 7 && dia > 31 )
		return false;

	if( mes == 8 && dia > 31 )
		return false;

	if( mes == 9 && dia > 30 )
		return false;

	if( mes == 10 && dia > 31 )
		return false;

	if( mes == 11 && dia > 30 )
		return false;

	if( mes == 12 && dia > 31 )
		return false;

	if( ano < 1900 || ano > 2100)
		return false;

	return true;
}
function data_atual()
{//Mostra a data atual
	var now = new Date();
	var mName = now.getMonth() + 1;
	var dName = now.getDay() + 1;
	var dayNr = now.getDate();
	var yearNr=now.getYear();

	if(mName == 1)  mName = "Janeiro"; 
	else if(mName == 2)  mName = "Fevereiro"; 
	else if(mName == 3)  mName = "Março"; 
	else if(mName == 4)  mName = "Abril"; 
	else if(mName == 5)  mName = "Maio"; 
	else if(mName == 6)  mName = "Junho"; 
	else if(mName == 7)  mName = "Julho"; 
	else if(mName == 8)  mName = "Agosto"; 
	else if(mName == 9)  mName = "Setembro"; 
	else if(mName == 10) mName = "Outubro"; 
	else if(mName == 11) mName = "Novembro"; 
	else mName = "Dezembro"; 


	if(dName==1) Day = "Domingo";
	else if(dName==2) Day = "Segunda-feira";
	else if(dName==3) Day = "Ter&ccedil;a-feira";
	else if(dName==4) Day = "Quarta-feira";
	else if(dName==5) Day = "Quinta-feira";
	else if(dName==6) Day = "Sexta-feira";
	else if(dName==7) Day = "S&aacute;bado";
	else if(yearNr < 2000) Year = 1900 + yearNr;
	else Year = yearNr;

	alert(" " + Day + ", " + dayNr + " de " + mName + " de " + Year);

}

function limita(campo,tam)
{ // Limitador de caracteres para objeto TextArea.
	if (campo.value.length >= tam) {
		campo.value = campo.value.substring(0,tam); 
		return false
	}
	return true;
}

function contacampo(campo, campotxt, tam)
{//Contador de caracteres restantes
	campo.value = tam - campotxt.value.length;
}

function validaHora(hora)
{//Verifica se a hora foi digitada corretamente. Formato= 24 hs

	hour = parseInt(hora.substring(0,3),10);
	minutes = parseInt(hora.substring(3,5),10);

	if(hour > 24 || hour < 0)
	{
		alert("Hora inválida!");
	}
	if(minutes > 60 || minutes < 0)
	{
		alert("Minutos inválido!");
	}
}
function validaAno(ano)
{ // só vai validar se ano tiver conteúdo senão retorna verdadeiro
	if (ano == '')
		return true;
	ano = "01/01/" + ano;
	if (validaData(ano))
		return true;
	else
		return false;
}

function validaData(data)
{//Verifica se a data digitada é correta

if (data.length == 0){
	return;
}

aux = data.split('/');
var dia = parseInt(aux[0], 10);
var mes = parseInt(aux[1], 10);
var ano = parseInt(aux[2], 10);

if (dia <= 31 && mes <=12 && ano >= 1000)
{
	if (data.substring(0,1)=='0' && data.substring(1,2) != '0' || data.substring(0,1)!='0')
	{
		if (data.substring(2,3)=="/")
		{
			if (data.substring(3,4)=='0' && data.substring(4,5)!='0' || data.substring(3,4)!='0')
			{
				if (data.substring(5,6)=="/")
				{
					if (data.substring(6,7)== '0' || data.substring(6,7)=='' && data.substring(7,8)!='0')
					{
						window.alert('++ Erro\n\nO ano que você digitou não existe.');
						return false;
					} 
					else
					{
						if (mes == 2)
						{
							if ((dia > 0 ) && (dia <= 29))
							{
								if (dia == 29)
								{
									if ((ano % 4) == 0)
									{
										return true;
									}
									else
									{
										window.alert('++ Erro:\n\nO dia que você digitou não existe.');
										return false;
									}
								}
							} 
							else
							{
								window.alert('++ Erro:\n\nO dia que você digitou não existe.');
								return false;
							}
						}
						if ((mes == 4)||(mes == 6)||(mes == 9)||(mes == 11))
						{
							if ((dia > 0 ) && (dia <= 30))
							{
								return true;
							}
							else
							{
								window.alert('++ Erro:\n\nO dia que você digitou não existe.');
								return false;
							}
						}
						if ((mes == 1)||(mes == 3)||(mes == 5)||(mes ==7)||(mes == 8)||(mes == 10)||(mes == 12))
						{
							if ((dia > 0) && (dia <= 31))
							{
								return true;
							}
							else
							{
								window.alert('++ Erro:\n\nO dia que você digitou não existe.');
								return false;
							}
						}
					}
				}
				else
				{
					window.alert('++ Erro:\n\nA data foi digitada fora do padrão(dd/mm/aaaa).');
					return false;
				}
			}
			else
			{
				window.alert('++ Erro:\n\nVocê digitou um mês que não existe.');
				return false;
			}
		}
		else
		{
			window.alert('++ Erro:\n\nA data foi digitada fora do padrão(dd/mm/aaaa).');
			return false;
		}
	}
	else
	{
		window.alert('++ Erro:\n\nVocê digitou um dia que não existe.');
		return false;	
	}
	}
	else
	{
		window.alert('++ Erro:\n\nData inválida.');
		return false;
	}
	return true; 
}

function interdata(data1,data2, msg)
{//função para verificar se a data final é superior à inicial
 
	di = parseInt(data1.substring(0,2),10);
	mi = parseInt(data1.substring(3,5),10);
	ai = parseInt(data1.substring(6,10),10);
		
	df = parseInt(data2.substring(0,2),10);
	mf = parseInt(data2.substring(3,5),10);
	af = parseInt(data2.substring(6,10),10);
			
	datai = new Date(ai, mi - 1, di);
	dataf = new Date(af, mf - 1, df);

			
	if(dataf.getTime() < datai.getTime())
	{
		alert(msg);
		return false;
	}
	return true;
	
}

function difdata(data1,data2)
{//função para verificar se a data final é superior à inicial
 	if(data1 == '' || data2 == '') return " ";
	
	di = parseInt(data1.substring(0,2),10);
	mi = parseInt(data1.substring(3,5),10);
	ai = parseInt(data1.substring(6,10),10);
		
	df = parseInt(data2.substring(0,2),10);
	mf = parseInt(data2.substring(3,5),10);
	af = parseInt(data2.substring(6,10),10);
			
	datai = di + (mi*30) + (ai*365);
	dataf = df + (mf*30) + (af*365);
		
	return Math.floor((dataf - datai)/365);
}

function so_number(valor){
	if( isNaN(valor) ){
		alert('Digite somente Número para este Campo');
		return;
	}
}
function onlyNumber(e)
{//Permite apenas números no campo
	if( (e.keyCode >= 48 && e.keyCode <= 57) || (e.keyCode >= 8 && e.keyCode <= 20) || e.keyCode == 46 || (e.keyCode >= 37 && e.keyCode <= 40) || (e.keyCode >= 96 && e.keyCode <= 105) || e.keyCode != 35 || e.keyCode != 36 ) return true;
	
	alert("Campo obrigatoriamente numérico! Digite apenas números.");
	
	return false;
}
function onlyText(e)
{//Permite apenas texto no campo
	//|| (e.keyCode >= 97 && e.keyCode <= 122)
	if( (e.keyCode >= 65 && e.keyCode <= 90) || e.keyCode == 46 || (e.keyCode >= 8 && e.keyCode <= 20) || (e.keyCode >= 37 && e.keyCode <= 40) || e.keyCode == 192 || e.keyCode == 222 || e.keyCode == 32 || e.keyCode == 219 || e.keyCode != 35 || e.keyCode != 36) return true;
	alert("Campo obrigatoriamente não numérico! Digite apenas letras.");
	return false;
}

function buscaListView(campo,intWidth,intHeight)
{//função usada pela ListView
	if(campo.value == "")
	{
		alert("Você precisa especificar um parâmetro para busca!");
		return;
	}
	
	document.listview.filterf.value = campo.name;
	document.listview.filter.value = campo.value;

	var posx = (screen.width-intWidth)/2;
	var posy = (screen.height-intHeight)/2;
	win = window.open('','popup','width='+intWidth+',height='+intHeight)
	win.moveTo(posx,posy);
	win.focus();

	document.listview.submit();
}


function buscaJacaView(campo,valor,jcampo)
{//função usada pela JacaView argumentos: nome do campo desejado, valor do campo, campo de destino
	if(campo == "")
	{
		alert("Você precisa especificar um parâmetro para busca!");
		return;
	}
	document.jacaview.jaca.value = jcampo;
	document.jacaview.filterf.value = campo;
	document.jacaview.filter.value = valor;
	window.open('','jacaview','width=640,height=300')
	document.jacaview.submit();
}

// sintax: <input .... onkeydown="FormataCampo(this,event,'##/##:##-## ##:##')"> 
//exemplo: <input type="text" name="cpf" size="13" onkeydown="FormataCampo(this,event,'###.###.###-##')" maxlength="14">
function FormataCampo(Campo,teclapres,mascara){ 
	strtext = Campo.value 
	tamtext = strtext.length 
	tammask = mascara.length 
	arrmask = new Array(tammask)     
	
    for (var i = 0 ; i < tammask; i++){ 
        arrmask[i] = mascara.slice(i,i+1) 
    } 
    if (((((arrmask[tamtext] == "#") || (arrmask[tamtext] == "9"))) || (((arrmask[tamtext+1] != "#") || (arrmask[tamtext+1] != "9"))))){ 
        if ((teclapres.keyCode >= 37 && teclapres.keyCode <= 40)||(teclapres.keyCode >= 48 && teclapres.keyCode <= 57)||(teclapres.keyCode >= 96 && teclapres.keyCode <= 105)||(teclapres.keyCode == 8)||(teclapres.keyCode == 9) ||(teclapres.keyCode == 46) ||(teclapres.keyCode == 13)){ 
            Organiza_Casa(Campo,arrmask[tamtext],teclapres.keyCode,strtext)         
        } 
        else{ 
            Detona_Event(Campo,strtext) 
        } 
    } 
    else{
        if ((arrmask[tamtext] == "A"))    { 
            charupper = event.valueOf() 
			Detona_Event(Campo,strtext) 
            masktext = strtext + charupper 
            Campo.value = masktext 
        } 
    } 
}
function Organiza_Casa(Campo,arrpos,teclapres_key,strtext){ 
    if (((arrpos == "/") || (arrpos == ".") || (arrpos == ",") || (arrpos == ":") || (arrpos == " ") || (arrpos == "-")) && !(teclapres_key == 8)){ 
        separador = arrpos 
        masktext = strtext + separador 
        Campo.value = masktext 
    } 
} 
function Detona_Event(Campo,strtext){ 
    event.returnValue = false; 
    if (strtext != "") { 
        Campo.value = strtext 
    } 
} 

function deletaList(list, distribuido) // Passar valor 0 e 1 para variável distribuído 
{ // 1 se for o primeiro da lista e já foi distribuído item não é excluido. Se não for incidência já passa 0
	for(i = 0 ; i < list.options.length ; )
	{
		if(list.options[i].selected == true)
		{
			if(i == 0 && distribuido == 'sim')
				return;
			list.options[i] = null;
		}
		else
			i++;
	}
}


/* Nome       : deletaList2 
// Objetivo   : Excluir ítem de uma lista, de um campo select.
// Parâmetros : list = nome do campo, da lista.
//				distribuido = campo utilizado para indicar que o inquérito já foi distribuido.
//							  valores possíveis = "sim" ou "nao".
*/				
function deletaList2(list, distribuido) 
{ 
	for(i = 0 ; i < list.options.length ; )
	{
		if(list.options[i].selected == true)
		{
			if(i == 0 && distribuido == 'sim')
			{
				alert('Atenção !!!!  A primeira incidência penal não pode ser excluida, pois a distribuição do inquérito já foi efetuada.');
				return;
			}
			list.options[i] = null;
		}
		else
			i++;
	}
}


function limpaList(list)
{
	for(i = list.options.length-1 ; i >= 0 ; i--)
	{
			list.options[i] = null;
	}
}

function swapItem(i,obj)
{//função que permite que um item de um listbox seja deslocado para cima(i = -1) ou para baixo(i = 1) 
	if((i == -1 &&  obj.selectedIndex == 0) || (i == 1 && obj.selectedIndex == (obj.length - 1)) || (obj.selectedIndex == 0 && i == 1 && distribuido == true))//|| (obj.selectedIndex == 1 && i == -1 && distribuido == true))
		return;
	
	label = obj.options[obj.selectedIndex + i].text;
	value = obj.options[obj.selectedIndex + i].value;
	
	obj.options[obj.selectedIndex + i].text = obj.options[obj.selectedIndex].text;
	obj.options[obj.selectedIndex + i].value = obj.options[obj.selectedIndex].value;
	
	obj.options[obj.selectedIndex].text = label;
	obj.options[obj.selectedIndex].value = value;
	
	obj.options[obj.selectedIndex + i].selected = true;	
	
}

function swapItemIP(i,obj,distribuido)
{	//função que permite que um item de um listbox seja deslocado para cima(i = -1) ou para baixo(i = 1).
	// Esta função não permite a alteração da primeira incidência penal qdo o IP já foi distribuido.
	if((i == -1 &&  obj.selectedIndex == 0) || (i == 1 && obj.selectedIndex == (obj.length - 1)))
		return;
	
	if((obj.selectedIndex == 0 && i == 1 && distribuido == 'sim') || (obj.selectedIndex == 1 && i == -1 && distribuido == 'sim'))
	{
		alert('Atenção !!!  A primeira incidência penal não pode ser movida, pois o inquérito já foi distribuido.');
		return;
	}
	label = obj.options[obj.selectedIndex + i].text;
	value = obj.options[obj.selectedIndex + i].value;
	
	obj.options[obj.selectedIndex + i].text = obj.options[obj.selectedIndex].text;
	obj.options[obj.selectedIndex + i].value = obj.options[obj.selectedIndex].value;
	
	obj.options[obj.selectedIndex].text = label;
	obj.options[obj.selectedIndex].value = value;
	
	obj.options[obj.selectedIndex + i].selected = true;	
	
}



function capital(strInput,words){//1.1
	//função que coloca as letras iniciais em maiuscula, e desconsidera as strings passadas como parâmetro
    var theString = strInput.value;
    var strOutput = "";// Our temporary string used to build the function's output
    var sp = " ";
    var small = false;
    var smallWords = words.split(",") //words that shouldn't be  capitalized
    theString = theString.replace(/(\s*)([^\s])/,"$2")//remove leading spaces
    theString = theString.toLowerCase();  
    var inputArray = theString.split(sp);
    strOutput = inputArray[0].slice(0,1).toUpperCase()+inputArray[0].slice(1);
    for (i = 1; i < inputArray.length; i++){ 
        small=false;
        for (ii=0;ii<smallWords.length;ii++){
           if(inputArray[i] == smallWords[ii]) small = true;
           }
        if(!small) inputArray[i] = inputArray[i].slice(0,1).toUpperCase()+inputArray[i].slice(1);
        strOutput = strOutput + sp + inputArray[i];  
        }
    strInput.value = strOutput;
}

function calculadora(obj)
{
	if(obj.value.length > 0 && obj.value.indexOf('*') != -1)
		obj.value = obj.value.substring(0,obj.value.indexOf('*')) * obj.value.substring(obj.value.indexOf('*')+1); 
	else
		return;
	
	if(obj.value == 'NaN')
		obj.value = '';
}

function jumpField(obj,key)
{
	
	if(String.fromCharCode(event.keyCode) == key)
	{		
		obj.focus();
		return false;
	}
	return true;
}
function limpa_acento(campo)
{
	tam = campo.length;
	aux = '';
	for (i = 0; i < tam; i++)
	{ 
		switch (campo.charAt(i))
		{
			case 'á':
			case 'à':
			case 'â':
			case 'ã': aux2 = 'a'; break;
			case 'Á':
			case 'À':
			case 'Â':
			case 'Ã': aux2 = 'A'; break;
			case 'é':
			case 'è':
			case 'ê': aux2 = 'e'; break;
			case 'É':
			case 'È':
			case 'Ê': aux2 = 'E'; break;
			case 'í':
			case 'ì':
			case 'î': aux2 = 'i'; break;
			case 'Í':
			case 'Ì':
			case 'Î': aux2 = 'I'; break;
			case 'ó':
			case 'ò':
			case 'ô':
			case 'õ': aux2 = 'o'; break;
			case 'Ó':
			case 'Ò':
			case 'Ô':
			case 'Õ': aux2 = 'O'; break;
			case 'ú':
			case 'ù':
			case 'û': aux2 = 'u'; break;
			case 'Ú':
			case 'Ù':
			case 'Û': aux2 = 'U'; break;
			case 'ç': aux2 = 'c'; break;
			case 'ñ': aux2 = 'n'; break;
			case 'Ñ': aux2 = 'N'; break;						
			case 'Ç': aux2 = 'C'; break;				
			default: aux2 = campo.charAt(i); break;
		}
		aux = aux + aux2;
		//aux = aux + tira_acento(campo.charAt(i));
	}
	return aux;
//	toLowerCase()
}

function tira_acento(campo)
{ // além de tirar acentos já faz com que seja digitado somente letras maiúsculas
	//Aqui coloque ou retire caracteres, de acôrdo com sua utilização. 
	//Aqui coloque caracteres válidos 
	var CARACT = new RegExp(/^[A-Z ]+$/i); 
	var caract = new RegExp(/^[a-z ]+$/i); 	
	var nuloC  = new RegExp(/^[Ç]+$/i);
	var nuloc  = new RegExp(/^[ç]+$/i);
	var nuloA  = new RegExp(/^[ÁÀÃÂ]+$/i);
	var nuloa  = new RegExp(/^[áàãâ]+$/i);
	var nuloE  = new RegExp(/^[ÉÈÊ]+$/i);
	var nuloe  = new RegExp(/^[éèê]+$/i);
	var nuloI  = new RegExp(/^[ÍÌÎ]+$/i);
	var nuloi  = new RegExp(/^[íìî]+$/i);
	var nuloO  = new RegExp(/^[ÓÒÕÔ]+$/i);
	var nuloo  = new RegExp(/^[óòõô]+$/i);
	var nuloU  = new RegExp(/^[ÚÙÛ]+$/i);
	var nulou  = new RegExp(/^[úùû]+$/i);

	if (nuloC.test(String.fromCharCode(event.keyCode))) {event.keyCode=67;return;}
	if (nuloc.test(String.fromCharCode(event.keyCode))) {event.keyCode=99;return;}
	if (nuloA.test(String.fromCharCode(event.keyCode))) {event.keyCode=65;return;}
	if (nuloa.test(String.fromCharCode(event.keyCode))) {event.keyCode=97;return;}
	if (nuloE.test(String.fromCharCode(event.keyCode))) {event.keyCode=69;return;}
	if (nuloe.test(String.fromCharCode(event.keyCode))) {event.keyCode=101;return;}
	if (nuloI.test(String.fromCharCode(event.keyCode))) {event.keyCode=73;return;}
	if (nuloi.test(String.fromCharCode(event.keyCode))) {event.keyCode=105;return;}
	if (nuloO.test(String.fromCharCode(event.keyCode))) {event.keyCode=79;return;}
	if (nuloo.test(String.fromCharCode(event.keyCode))) {event.keyCode=111;return;}
	if (nuloU.test(String.fromCharCode(event.keyCode))) {event.keyCode=85;return;}
	if (nulou.test(String.fromCharCode(event.keyCode))) {event.keyCode=117;return;}

	var CARACT = CARACT.test(String.fromCharCode(event.keyCode)); 
	var caract = caract.test(String.fromCharCode(event.keyCode)); 	

/*	 if(!caract)
	{
		 alert("Caracter inválido = ( "+String.fromCharCode(event.keyCode)+" )");
		 event.keyCode=0; 
		return;
	} testa se não é letra*/
}

function completa_ano(obj){
	if(isNaN(obj.value)){
		alert('Digite Apenas Números');
	}else{
		if(obj.value.length == 1){
			obj.value = '200' + obj.value;
		}

		if(obj.value.length == 2){
			obj.value = '19' + obj.value;
		}
	}
	//alert(document.forms[0].elements[obj.name].value);
}


function FormataReais(fld, milSep, decSep, e) { 

		var sep = 0; 
		
		var key = ''; 
		
		var i = j = 0; 
		
		var len = len2 = 0; 
		
		var strCheck = '0123456789'; 
		
		var aux = aux2 = ''; 
		
		var whichCode = (window.Event) ? e.which : e.keyCode; 
		
		if (whichCode == 13) return true; 
		
		key = String.fromCharCode(whichCode);// Valor para o código da Chave 
		
		if (strCheck.indexOf(key) == -1) return false; // Chave inválida 
		
		len = fld.value.length; 
		
		for(i = 0; i < len; i++) 
		
		if ((fld.value.charAt(i) != '0') && (fld.value.charAt(i) != decSep)) break; 
		
		aux = ''; 
		
		for(; i < len; i++) 
		
		if (strCheck.indexOf(fld.value.charAt(i))!=-1) aux += fld.value.charAt(i); 
		
		aux += key; 
		
		len = aux.length; 
		
		if (len == 0) fld.value = ''; 
		
		if (len == 1) fld.value = '0'+ decSep + '0' + aux; 
		
		if (len == 2) fld.value = '0'+ decSep + aux; 
		
		if (len > 2) { 
		
		aux2 = ''; 
		
		for (j = 0, i = len - 3; i >= 0; i--) { 
		
		if (j == 3) { 
		
		aux2 += milSep; 
		
		j = 0; 
		
		} 
		
		aux2 += aux.charAt(i); 
		
		j++; 
		
		} 
		
		fld.value = ''; 
		
		len2 = aux2.length; 
		
		for (i = len2 - 1; i >= 0; i--) 
		
		fld.value += aux2.charAt(i); 
		
		fld.value += decSep + aux.substr(len - 2, len); 
		
		} 
		
		return false; 
		
		} 

//Fim da Função FormataReais --> 

function TresCasasDecimais(fld, milSep, decSep, e) { 

		var sep = 0; 
		
		var key = ''; 
		
		var i = j = 0; 
		
		var len = len2 = 0; 
		
		var strCheck = '0123456789'; 
		
		var aux = aux2 = ''; 
		
		var whichCode = (window.Event) ? e.which : e.keyCode; 
		
		if (whichCode == 13) return true; 
		
		key = String.fromCharCode(whichCode);// Valor para o código da Chave 
		
		if (strCheck.indexOf(key) == -1) return false; // Chave inválida 
		
		len = fld.value.length; 
		
		for(i = 0; i < len; i++) 
		
		if ((fld.value.charAt(i) != '0') && (fld.value.charAt(i) != decSep)) break; 
		
		aux = ''; 
		
		for(; i < len; i++) 
		
		if (strCheck.indexOf(fld.value.charAt(i))!=-1) aux += fld.value.charAt(i); 
		
		aux += key; 
		
		len = aux.length; 
		
		if (len == 0) fld.value = ''; 
		
		if (len == 1) fld.value = '0'+ decSep + '00' + aux; 
		
		if (len == 2) fld.value = '0'+ decSep + '0' + aux; 

		if (len == 3) fld.value = '0'+ decSep + aux; 
		
		if (len > 3) { 
		
		aux2 = ''; 
		
		for (j = 0, i = len - 4	; i >= 0; i--) { 
		
		if (j == 3) { 
		
		aux2 += milSep; 
		
		j = 0; 
		
		} 
		
		aux2 += aux.charAt(i); 
		
		j++; 
		
		} 
		
		fld.value = ''; 
		
		len2 = aux2.length; 
		
		for (i = len2 - 1; i >= 0; i--) 
		
		fld.value += aux2.charAt(i); 
		
		fld.value += decSep + aux.substr(len - 3, len); 
		
		} 
		
		return false; 
		
		} 
