//--------------------------------------------------------------------------------//
// Formatação dos números no novo formato CJF (20 dígitos) - Fabiano 04/06/2010
function formata_numero(num){
	numero = num.substr(0,7)+ '-' + num.substr(7,2) + '.' + num.substr(9,4) + '.' + num.charAt(13) + '.' + num.substr(14,2) + '.' + num.substr(16,4);			
	return numero;
}

function str_pad (input, pad_length, pad_string, pad_type) {
    // Returns input string padded on the left or right to specified length with pad_string  
    // 
    // version: 1004.2314
    // discuss at: http://phpjs.org/functions/str_pad    // +   original by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
    // + namespaced by: Michael White (http://getsprink.com)
    // +      input by: Marco van Oort
    // +   bugfixed by: Brett Zamir (http://brett-zamir.me)
    // *     example 1: str_pad('Kevin van Zonneveld', 30, '-=', 'STR_PAD_LEFT');    // *     returns 1: '-=-=-=-=-=-Kevin van Zonneveld'
    // *     example 2: str_pad('Kevin van Zonneveld', 30, '-', 'STR_PAD_BOTH');
    // *     returns 2: '------Kevin van Zonneveld-----'
    var half = '', pad_to_go;
     var str_pad_repeater = function (s, len) {
        var collect = '', i;
 
        while (collect.length < len) {collect += s;}
        collect = collect.substr(0,len); 
        return collect;
    };
 
    input += '';    pad_string = pad_string !== undefined ? pad_string : ' ';
    
    if (pad_type != 'STR_PAD_LEFT' && pad_type != 'STR_PAD_RIGHT' && pad_type != 'STR_PAD_BOTH') { pad_type = 'STR_PAD_RIGHT'; }
    if ((pad_to_go = pad_length - input.length) > 0) {
        if (pad_type == 'STR_PAD_LEFT') { input = str_pad_repeater(pad_string, pad_to_go) + input; }        else if (pad_type == 'STR_PAD_RIGHT') { input = input + str_pad_repeater(pad_string, pad_to_go); }
        else if (pad_type == 'STR_PAD_BOTH') {
            half = str_pad_repeater(pad_string, Math.ceil(pad_to_go/2));
            input = half + input + half;
            input = input.substr(0, pad_length);        }
    }
 
    return input;
}

function calcula_digver(numproc){
	num_proc 	= numproc.substr(0,7);
	ano 		= numproc.substr(9,4);
	jtr			= 405;
	loc			= numproc.substr(16,4);
	numproc_semdigito	= num_proc + ano + jtr + loc + '00';
	modulo  	= 	numproc_semdigito % 97;
	subtracao	=	98 - modulo;
	digito		= 	str_pad(subtracao,2,'0');
	return digito;
}

// Função que verifica o digito verificador do número de um processo dado no formato (99999999999999999999)
function verifica_digito_processo(numero){
	var valido = true;
	var digito = -1;
	// Verifica o digito para um processo no novo formato CJF (20 digitos)
	if(numero.length == 20){				
		digito = calcula_digver(numero);						
		if(digito != parseInt(numero.substr(7,2))){
			valido = false;
		}
	} 
	// O número do processo não possui 20 algarismos
	else {
		valido = false;
	}
	return valido;
}

//Essa função só é utilizada se a opção for justiça comum
function retira_caracteres(str){
	var campo_final = "";
	var i;
	for(i=0; i < str.length; i++){
		if((str.charAt(i) != '/') && (str.charAt(i) != '%')&& (str.charAt(i) != '#')&& (str.charAt(i) != '$')&& (str.charAt(i) != '@')&& (str.charAt(i) != '-')&& (str.charAt(i) != '.')&& (str.charAt(i) != ' '))
			campo_final = campo_final + str.charAt(i);
	}
	
	return campo_final;	
}
//--------------------------------------------------------------------------------------

function montar_processo(NumProc, opcao){
	Processo = NumProc;
	return Processo;
}

function verifica_form_consulta_processo(formulario){
	f = document.forms[formulario];
	
	var num = montar_processo(retira_caracteres(f.NumProc.value),f.opcaoEsc.value);
	
	//Verifica se o número do processo é válido de acordo com o dígito verificador	
	var valido = verifica_digito_processo(num);
	//Se o número do processo for válido, formata o número
	if ((valido) && (f.NumProc.value != '') && (f.NumProc.value != 0)) {
		
		f.NumProc.value = formata_numero(num);
		if(f.opcaoEsc.value == 'jfc'){
			f.submit();
		}else{
			location.href="http://jef.jfal.gov.br/cretainternetal/consulta/processo/pesquisar.wsp?tmp.processo.nr_processo="+numero;			
		}
	} else{
		alert('Número de processo inválido!');
	}	
}

function setaValorOpcaoEsc(opc){
	document.frm_consulta.opcaoEsc.value = opc;
}
//--------------------------------------------------------------------------------
// Redireciona para a tabela da contadoria escolhida
function verifica_consulta_juizado(tipo){
	if((tipo == 'parte') && (this.frm_consulta.NumProc.value == '')){
		alert('Digite o nome da parte!');
	} else if ((tipo == 'advogado') && (this.frm_consulta.NumProc.value == '')){
			alert('Digite o nome do advogado!');
	} else if (tipo == 'numero'){
		verifica_form_consulta_processo();
	} else{
		document.frm_consulta.submit();
	}
}
//--------------------------------------------------------------------------------
// Redireciona para a tabela da contadoria escolhida
function redireciona_contadoria_tabela(){
	opcao = document.form_tabela.tabela.options[document.form_tabela.tabela.selectedIndex].value;
	switch(opcao){
		 case '1': 
		 	location.href="tabela1.php?tabela=1";
			break;
		 case '2': 
			 location.href="tabela2.php?tabela=2";
			break;			
		 case '3': 
		 	location.href="tabela3.php?tabela=3";
			break;			
		 case '4': 
		 	location.href="tabela4.php?tabela=4";
			break;			
	}
}
//--------------------------------------------------------------------------------
// Redireciona para o concurso selecionado
function redireciona_concurso(){
	opcao = document.form_concurso.concursos.options[document.form_concurso.concursos.selectedIndex].value;
	switch(opcao){
		 case '16': 
		 	location.href="selecao_conciliadores.php?concurso_id=16";		 
			break;
		 case '15': 
		 	location.href="estagiarios2006_arapiraca.php?concurso_id=15";		 
			break;
		 case '14': 
		 	location.href="estagiarios2005.php?concurso_id=14";		 
			break;	
		 case '13': 
		 	location.href="vii_juiz_federal.php?concurso_id=13";		 
			break;	
		 case '12': 
		 	location.href="estagiarios2004_varas.php?concurso_id=12";		 
			break;	
		 case '1': 
		 	location.href="estagiarios2004_juizado.php?concurso_id=1";
			break;
		 case '2': 
		 	location.href="juiz_federal2004.php?concurso_id=2";		 
			break;			
		 case '3': 
		 	location.href="estagiarios2003_varas.php?concurso_id=3";		 
			break;			
		 case '4': 
		 	location.href="estagiarios2003_juizado.php?concurso_id=4";
			break;			
		 case '5': 
		 	location.href="trf52003.php?concurso_id=5";		 
			break;			
		 case '6': 
		 	location.href="estagiarios2002_varas.php?concurso_id=6";		 
			break;			
		 case '7': 
		 	location.href="estagiarios2002.php?concurso_id=7";		 
			break;			
		 case '8': 
		 	location.href="estagiarios2001.php?concurso_id=8";		 
			break;			
		 case '9': 
		 	location.href="vjuiz_federal.php?concurso_id=9";		 		 
			break;			
		 case '10': 
		 	location.href="estagiarios2000.php?concurso_id=10";		 		 
			break;						
		 case '11': 
		 	location.href="trf51998.php?concurso_id=11";		 
			break;															
	}
}

//--------------------------------------------------------------------------------
function as_stop(){
	clearTimeout(as_timer);
}
//--------------------------------------------------------------------------------
function as_start(){
	as_scroll(valorcliptop);
}
//--------------------------------------------------------------------------------
as_timer = null;
valorcliptop = null;
//\\_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-//\\
leftedge=0        //  seta lateral \\
topedge=0;    // lacalizacao do top \\
boxheight=100;   // height do novo box \\
boxwidth=201;      // width do novo box \\
scrollheight=5;    // Altura do scroll \\
//\\------------------------------------//\\
//--------------------------------------------------------------------------------
function as_scroll(cliptop) {
as_timer = null
valorcliptop = null
cliptop = (cliptop + 1) % (scrollheight + boxheight);
//==================\\
if (!document.all) {
newsDiv=document.getElementById("noticia").style; 
newsDiv.left = leftedge;
newsDiv.top = topedge - cliptop -20;
}else{
newsDiv=noticia.style;
newsDiv.pixelLeft = leftedge;
newsDiv.pixelTop = topedge - cliptop;
}
//===================================\\
newsDiv.clip = "rect(" + cliptop + "px " + (boxwidth + leftedge) + "px " + (cliptop + boxheight) + "px 0px)";
newsDiv.visibility='visible';
as_timer = setTimeout("as_scroll(" + cliptop + ")", 80);
valorcliptop = cliptop
//=================================\\
}

//FUNÇÂO QUE VERIFICA FORMATAÇÂO DA DATA:
var padrao_data = new Array(2,2,4)
var padrao_cep = new Array(5,3)
function mascara(d,sep,pat,nums){
if(d.valant != d.value){
	val = d.value
	largo = val.length
	val = val.split(sep)
	val2 = ''
	for(r=0;r<val.length;r++){
		val2 += val[r]	
	}
	if(nums){
		for(z=0;z<val2.length;z++){
			if(isNaN(val2.charAt(z))){
				letra = new RegExp(val2.charAt(z),"g")
				val2 = val2.replace(letra,"")
			}
		}
	}
	val = ''
	val3 = new Array()
	for(s=0; s<pat.length; s++){
		val3[s] = val2.substring(0,pat[s])
		val2 = val2.substr(pat[s])
	}
	for(q=0;q<val3.length; q++){
		if(q ==0){
			val = val3[q]
		}
		else{
			if(val3[q] != ""){
				val += sep + val3[q]
				}
		}
	}
	d.value = val
	d.valant = val
	}
}

function verificaData(objeto){
	//f = document.form1;
	erro=0;
	hoje = new Date();
	anoAtual = hoje.getFullYear();
	barras = objeto.value.split("/");
	if (barras.length == 3){
		dia = barras[0];
		mes = barras[1];
		ano = barras[2];
		resultado = (!isNaN(dia) && (dia > 0) && (dia < 32)) && (!isNaN(mes) && (mes > 0) && (mes < 13)) && (!isNaN(ano) && (ano.length == 4) && (ano >= 1900));
		if (!resultado) {
			alert("Formato de data invalido!");
			objeto.focus();
			return false;
		}
	} else {
		alert("Formato de data invalido!");
		objeto.focus();
		return false;
	}
	return true;
}

function SetaClassDigitacao(obj)
	{
	obj.style.backgroundColor='#CCCCCC';	
	}

function SetaClassNormal(obj)
	{	
	obj.style.backgroundColor='#FFFFFF';
	}

function SetaCampo(p_campo)
	{
	var formulario = window.document.forms[0];
	formulario[p_campo].focus();
	}		

function Ajuda(p_campo_destino,p_frase) 
	{
	var formulario = window.document.forms[0];
	formulario[p_campo_destino].value = p_frase;
	}

function Confirma(p_pergunta) 
	{
	if (confirm(p_pergunta))
		{
		return true;
		}
	return false;
	}
//FIM DA FORMATAÇÃO DA DATA

