// scripts.js

// Preenche o campo Assunto Sigiloso do formulário de Proposição de acordo com o 
// tipo de proposição escolhido.
function MoveValor(propriedade)
{	
	if(propriedade.value != "")
	{
		document.forms[0].assuntoSigiloso.value = document.forms[0].elements['prop['+propriedade.value+']'].value;
	}
}
function MovePrazoAtividade(propriedade,atividade)
{	
	if(propriedade.value != "")
	{
	    for(var i=0; i<	atividade.length;i++){               
           if(atividade[i].value == propriedade.value) {                             
				document.forms[0].prazo.value = atividade.options[i].text;
		 		i = i + atividade.length + 1 ; 
			}
		}		
	}
}
function MoveGeraEmenta(fkTipoProposicao,hasEmenta)
{	
	if(fkTipoProposicao != null)
	{
	    var indice = fkTipoProposicao.selectedIndex;	    
        hasEmenta[indice].selected=true;
        document.forms[0].temEmenta.value = hasEmenta[indice].text; 		
	}
	
	// Se o tipo selecionado não gera ementa, é necessário removê-la,
	// se houver algum texto no campo ementa notifica o usuário
	/*
	if(document.documentoForm.temEmenta.value == 'N')
	{
		//(document.documentoForm.ementaTextoIntegral.length > 0 || document.documentoForm.ementaTextoFinal.length > 0)
		alert("Este tipo de documento não permite ementa!\nOs campos \"Ementa\" dos textos integral e final foram removidos.");
		
		var msg = "";
		var cnt = 0;
		
		if(document.documentoForm.ementaTextoIntegral)
		{
			if(document.documentoForm.ementaTextoIntegral.value.length > 0)
			{
				document.documentoForm.ementaTextoIntegral.value = '';
				cnt++;
			}
		}
			
			
		if(document.documentoForm.ementaTextoFinal)
		{
			if(document.documentoForm.ementaTextoFinal.value.length > 0)
			{
				document.documentoForm.ementaTextoFinal.value = '';
				cnt++;
			}
		}
			
		if(cnt > 0)
			alert("Este tipo de documento não permite ementa!\nO" + cnt>1?"s":"" + " campo" + cnt>1?"s":"" + " de texto fo" + cnt>1?"ram":"i" + " removido" + cnt>1?"s":"");
	}
	*/
}

function MovePrazo(propriedade,atividade,atividadeAux)
{	
	if(propriedade.value != "")
	{
	
  	    for(var i=0; i<	atividade.length;i++){               
        	if(document.forms[0].atividade.options[i].text == propriedade.value) {                             	    
                var propaux = atividade[i].value;                            
           		document.forms[0].idAtividadeAux.value = propaux;            	           		
          		i = i + atividade.length + 1 ; 
         	}	
         } 
         
        for(var i=0; i<	atividadeAux.length;i++){               
           if(atividadeAux[i].value == propaux) {                             
				document.forms[0].prazo.value = atividadeAux.options[i].text;
		 		i = i + atividadeAux.length + 1 ; 
			}
		}         
	} 
} 
function marcaTudo(form) {
	
	for (var i=0;i<form.elements.length;i++)
      {
         var e = form.elements[i];
         if (e.type == 'checkbox' && e.name != 'allbox')
            e.checked = form.allbox.checked;
      }	
}

function allCheckBox(form, checkName, allBox) {
	
	for (var i = 0; i < form.elements.length; i++)
      {      
         var e = form.elements[i];        
         if (e.type == 'checkbox' && e.name == checkName){	               	
            e.checked = allBox.checked;
         }
      }	
}

function executaAction(action) {
    
	document.location.replace(action + ".do");
}


// mascaras para os campos de protocolo, processos e projestos da proposicaogeral.jsp
function mascara(obj){
	var parte1,parte2;
		if(obj.value.length >=6 && obj.value.indexOf("/")==-1 ){
		parte1=obj.value.substr(0,5);
		parte2=obj.value.substr(5,4);
		obj.value=parte1+"/"+parte2;
	}
}

// Cadastro de anexos.
function PopUpAnexo(action)
{
	j= window.open(action + ".do","", "toolbar=no,location=no,directories=no,status=no, scrollbars=auto, menubar=no, resizable=no, width=410, height=350");
	j.moveTo( (screen.width - 560)/2, (screen.height - 350)/2 ); 
}

function PopUpVeto(action)
{
	j= window.open(action + ".do?menu=sim&paramFilha=V&fdprop=sim&popup=sim&modoAba=Edit","", "toolbar=no,location=no,directories=no,status=no, scrollbars=auto, menubar=no, resizable=no, width=800, height=600");
	j.moveTo( (screen.width - 660)/2, (screen.height - 450)/2 ); 
}

function popUpVotacao()
{
	j = window.open("ProposicaoExibirVotacao.do","","toolbar=no,location=no,directories=no,status=no, scrollbars=auto, menubar=no, resizable=no, width=500, height=450");
	j.moveTo( (screen.width - 500)/2, (screen.height - 450)/2 ); 
}

function popUpVotacaoEditar(idVotoPlenario)
{
	j = window.open("ProposicaoExibirVotacao.do?idVotoPlenario=" + idVotoPlenario,"","toolbar=no,location=no,directories=no,status=no, scrollbars=auto, menubar=no, resizable=no, width=500, height=450");
	j.moveTo( (screen.width - 500)/2, (screen.height - 450)/2 ); 
}

function popUpVotacaoDocumento(idDocumento) 
{
	j = window.open("ProposicaoExibirVotacao.do?idDocumento=" + idDocumento,"","toolbar=no,location=no,directories=no,status=no, scrollbars=auto, menubar=no, resizable=no, width=500, height=450");
	j.moveTo( (screen.width - 500)/2, (screen.height - 450)/2 ); 
}

function popUpVotacaoEditarDocumento(idVotoPlenario, idDocumento)
{
	j = window.open("ProposicaoExibirVotacao.do?idVotoPlenario=" + idVotoPlenario + "&idDocumento=" + idDocumento,"","toolbar=no,location=no,directories=no,status=no, scrollbars=auto, menubar=no, resizable=no, width=500, height=450");
	j.moveTo( (screen.width - 500)/2, (screen.height - 450)/2 ); 
}

function popUpAddProposicao(){
	j = window.open("OrdemDiaExibirAddProposicao.do","","toolbar=no,location=no,directories=no,status=no, scrollbars=auto, menubar=no, resizable=no, width=500, height=450");
	j.moveTo( (screen.width - 500)/2, (screen.height - 450)/2 ); 
}

//==============================================================================
//Função que submite o formulário referenciado.
//==============================================================================
function submitForm(form) {
	form.submit();
}

function submitFormMsg(form, msg) {
	var confirmacao = confirm(msg);
	if (confirmacao==true){
		form.submit();
	}
}
function executaActionParam(action, param) {    
	document.location.replace(action + ".do?" + param);
}

function executaActionParamMsg(action, param, msg) {  
	var confirmacao = confirm(msg);
	if (confirmacao==true){
		document.location.replace(action + ".do?" + param);
	}  
	
}
function submitFormMetodo(form, metodo, forward, msg) {

	form.fwddestino.value=forward;	
	
	var idProp = form.hiIdProp.value;
	
	//alert("$"+idProp+"$");
		
	// Verifica se a aba selecionada foi a de 'Anexos', 'Emenda', 'Ofícios', 'Veto', 'Comissoes' e se a proposição não foi salva.
	if((forward=="sucesso3" || forward=="sucesso4" || forward=="sucesso5" ||forward=="sucesso6" || forward=="sucesso7" || forward=="sucesso8" || forward=="sucesso9" || forward=="sucesso10" || forward=="sucesso11") && (Trim(idProp)=="" || Trim(idProp)=="null"))	{	
	    alert(msg);
		//submitFormMsg(form, msg);
	} else
		form.submit();
} 

function submitFormDispath(form, metodo) {
	form.metodo.value=metodo;
//	alert('metodo d: '+form.metodo.value);
	form.submit();
} 

function validaCamposFormComissao(form){
	
	if (form.fkComissao && form.fkComissao.options[form.fkComissao.selectedIndex].value == "-1"){		
		return false;	
	}else if (form.resultado && form.resultado.options[form.resultado.selectedIndex].value == "S"){
		return false;
	}else if (form.dataDesigRel && form.dataDesigRel.value == ""){
		return false;
	}
	
	return true;
}

function submitFormPopUp(form, acao, action, larg, alt, larguraTela, alturaTela){

	if (validaCamposFormComissao(form)){
	
		var idRelatoria = form.idRelatoria.value;		
		
		if (form.fkComissao){
			var idComissao = form.fkComissao.options[form.fkComissao.selectedIndex].value;
		}else{
			var idComissao = form.idComissao.value;
		}
		
		if (Trim(idRelatoria) == ""){		
			if (confirm("Para executar esta operação é necessário salvar a comissão atual.\nDeseja salvar agora?") == true){
				form.metodo.value = acao;				
				popUp(action, '?idComissao='+idComissao, larg, alt, larguraTela, alturaTela);
				form.submit();							
			}
		}else{
			if (form.fkComissao){					
				form.metodo.value = acao;	
				popUp(action, '?idComissao='+idComissao, larg, alt, larguraTela, alturaTela);
				form.submit();	
			}else{								
				popUp(action, '?idComissao='+idComissao, larg, alt, larguraTela, alturaTela);
			}
		}
	}else{	
		form.metodo.value = acao;
		form.submit();			
	}	
}

function popUpAndamento(action, Param1, Param2, Param3)
{
	j= window.open(action + ".do?" + Param1 + "&" + Param2 + "&" + Param3,"", "toolbar=no,location=no,directories=no,status=no, scrollbars=auto, menubar=no, resizable=no, width=500, height=300");
	j.moveTo( (screen.width - 500)/2, (screen.height - 300)/2 ); 
}
function popUp(action, Param, largura, altura, larguraTela, alturaTela){

	j = window.open(action + ".do" + Param,"", "toolbar=no,location=no,directories=no,status=no, scrollbars=yes, menubar=no, resizable=no, width="+largura+", height="+altura);
	j.moveTo( (screen.width - larguraTela)/2, (screen.height - alturaTela)/2 ); 

}

function popUpNew(action, param){

	j = window.open(action + ".do?" + param, "", "toolbar=no,location=no,directories=no,status=no, scrollbars=yes, menubar=no, resizable=yes");

}

function Trim(v){
	// Passa o valor ou objeto recebido pela função para uma variável temporária,
	// pois se for objeto, a variável "v" só poderá ser alterada no final da função.
	var x = v
	// Cria uma varíavel temporária com o valor recebido convertido para string em minúsculas.
	// Essa variável será usada para testar se o valor recebido é uma string ou um objeto.	
	var test = v.toString().toLowerCase()
	// Verifica se o valor recebido é um objeto
	if(test.indexOf("object") == 1){
		// Se v é um objeto, x recebe o valor do objeto v.
		x = v.value
	}
	// Enquanto o primeiro caractere de x (que tem índice 0) for espaço em branco,
	// x receberá um novo valor, que será o valor anterior sem o primeiro caractere.
	while(x.charAt(0) == " "){
		x = x.substr(1,x.length - 1)
	}
	// Enquanto o último caractere de x (onde o índice é definido pela quantidade de
	// carateres de x menos um) for espaço em branco, x receberá um novo valor, que 
	// será o valor anterior sem o último caractere.
	while(x.charAt(x.length - 1) == " "){
		x = x.substr(0,x.length-1)
	}
	// Se o valor recebido é um objeto, o objeto recebe o valor de x, sem espaços
	// em branco à direita e à esquerda.
	if(test.indexOf("object") == 1){
		v.value = x
	} else {
		// Se não for objeto, a função retorna o valor de x sem espaços
		// em branco à direita e à esquerda.
		return x
	}
}
// Verifica se existe veto cadastrado, se tiver, não permite o cadastro de um novo.
function UnicoVeto(idVeto){
	if(idVeto!="")
		alert("Para incluir um novo veto você deve excluir o veto listado.");
	else
		PopUpVeto('PropExibirInserir');	
}
function popUpPauta(action)
{
	j= window.open(action + ".do","", "toolbar=no,location=no,directories=no,status=no, scrollbars=auto, menubar=no, resizable=no, width=510, height=300");
	j.moveTo( (screen.width - 560)/2, (screen.height - 350)/2 ); 
}

function popUpPautaParam(action,param)
{
	j= window.open(action + ".do?"+param,"", "toolbar=no,location=no,directories=no,status=no, scrollbars=auto, menubar=no, resizable=no, width=510, height=300");
	j.moveTo( (screen.width - 560)/2, (screen.height - 350)/2 ); 
}

// Verifica se há checkboxes checados.
function existeChecados(check, form)
{
	var tam = form.elements.length; 
    var achou = false;
    i = 0; 
 
	while (i<tam && !achou) 
	{ 
		if (form.elements[i].type == 'checkbox') 
		{ 
			if(form.elements[i].checked == true)
				achou = true;			
		}
		i++;
	} 
	return achou
}

function desabilitaCheckbox(check) {
	if (document.forms[0].manual.checked){
       document.forms[0].manualChecked.value = "S";
       document.forms[0].dataI.style.display = "none";
       document.forms[0].dataIAux.style.display = "";              
       document.forms[0].dataF.style.display = "none";
       document.forms[0].dataFAux.style.display = "";                             
	}else{	       
	   document.forms[0].manualChecked.value = "";
       document.forms[0].dataI.style.display = "";
       document.forms[0].dataIAux.style.display = "none";              
       document.forms[0].dataF.style.display = "";
       document.forms[0].dataFAux.style.display = "none";                             
	}		       
}

function ocultaData() {   
       if (document.forms[0].manualChecked.value == "S") {			
            document.forms[0].dataI.style.display = "none";
	       	document.forms[0].dataIAux.style.display = "";              
	       	document.forms[0].dataF.style.display = "none";	
	       	document.forms[0].dataFAux.style.display = "";   	        
  	          
       }else
       {           
    	   	document.forms[0].dataIAux.style.display = "none";       
	       	document.forms[0].dataFAux.style.display = "none";       
	   }
}
function desabilitaCheckboxAlteracao(check) {      
	if (document.forms[0].manual.checked){
       document.forms[0].manualChecked.value = "S";
       document.forms[0].strDataI.style.display = "none";
       document.forms[0].dataIAux.style.display = "";              
       document.forms[0].strDataF.style.display = "none";
       document.forms[0].dataFAux.style.display = "";                                 
    }else{	       
	   document.forms[0].manualChecked.value = "";
       document.forms[0].strDataI.style.display = "";
       document.forms[0].dataIAux.style.display = "none";              
       document.forms[0].strDataF.style.display = "";
       document.forms[0].dataFAux.style.display = "none";                                 	               

	}		              
}

function ocultaDataAlteracao() {   
       if (document.forms[0].manualChecked.value == "S") {	       				
			if(document.forms[0].strDataI)
	            document.forms[0].strDataI.style.display = "none";
           	if(document.forms[0].dataIAux)
	       		document.forms[0].dataIAux.style.display = "";
	       	if(document.forms[0].strDataF)
	       		document.forms[0].strDataF.style.display = "none";	
	       	if(document.forms[0].dataFAux)
		       	document.forms[0].dataFAux.style.display = "";  	          
       } 
       else
       {     
       		if (document.forms[0].dataIAux)      
       		{
    		   	document.forms[0].dataIAux.style.display = "none";       
		       	document.forms[0].dataFAux.style.display = "none";       
	       	}
	   }
}
function verificaChecados(check, form) {

    var achou = existeChecados(check, form);
	
	// Não há anexo selecionado para exclusão.
	if(!achou){
		alert("Selecione pelo menos 1 documento para exclusão.");
	}
	else if (confirm('Confirma a exclusão do anexo?')){
	   	document.forms[0].metodo.value='excluirAnexo';
    	submitFormMetodo(document.proposicaoInserirForm, 'excluirAnexo', 'sucesso3');
	}
}

function excluirAnexosverificaChecados(check, form) {

    var achou = existeChecados(check, form);
	
	// Não há anexo selecionado para exclusão.
	if(!achou){
		alert("Selecione pelo menos 1 documento para exclusão.");
	}
	else if (confirm('Confirma a exclusão do anexo?')){
	    submitFormDispath(form, 'excluirAnexo');    	
	}
}

function  exibeUosUsuarioAutenticado() {

		j= window.open("UOsUsuarioAutenticado" + ".do","", "tolbar=no,location=no,directories=no,status=no, scrollbars=auto, menubar=no, resizable=no, width=420, height=190");
		j.moveTo( (screen.width - 420)/2, (screen.height - 190)/2 ); 
}	
function addComissao(form)
{
	/*form.metodo.value="adicionarComissao";
	form.fwddestino.value="adicionarComissao";
	form.submit();*/
	popUp('AdicionarComissao', ' ', 810, 600, 700, 500);
		
}	
function MoveIdDeptoDest(propriedade,departamento)                
{	    
    
	if(propriedade.value != "")
	{
	    
  	    for(var i=0; i<	departamento.length;i++){          	            
        	if(departamento.options[i].text == propriedade.value) {                             	
                var idDpto = departamento[i].value;                  
          		document.forms[0].idDepartamentoAux.value = idDpto;
          		break;          		
         	}	
         }  
   	}
}  
	
function recursoNaoImplementado()
{
	alert("Recurso ainda não disponível.");
}

function contChecados(check, form)
{	
	var tam = form.elements.length;    
    i = 0; 
    var achou = 0;
 
	while (i<tam) 
	{ 
		if (form.elements[i].type == 'checkbox') 
		{ 
			if(form.elements[i].checked == true && form.elements[i].name != 'allbox' && form.elements[i].name == check)
				achou++;			
		}
		i++;
	} 
	return achou
}


function selecionadosSubmit(check, form, msg){	

	var achou = contChecados(check, form);
		
	if(achou == 0){
		alert("Selecione pelo menos 1 documento!");
	}
	else{	   	
		if (confirm(msg)){
	    	form.submit();
    	}
	}
}

function selecionados(check, form, msg){	

	var achou = contChecados(check, form);
		
	if(achou == 0){
		alert("Selecione pelo menos 1 documento!");
		return false;
	}
	else{	   	
		
		return confirm(msg) ? true : false;
		
//		if (confirm(msg)){
//			return true;
  //  	}else{
    //		return false;
    //	}
	}
}

function selecionadoSubmit(check, form, msg){	

	var achou = contChecados(check, form);
		
	if(achou == 0){
		alert("Selecione pelo menos 1 documento!");
	}
	else if ( achou == 1 ){	
		if (confirm(msg)){
	    	form.submit();
    	}
	}else{
		alert("Selecione somente 1 documento!");
	}
}

function indexSelecionado(form){

	var tam = form.elements.length;    
    i = 0;     
 
	while (i < tam) 
	{ 
		if (form.elements[i].type == 'checkbox') 
		{ 
			if(form.elements[i].checked == true && form.elements[i].name != "allbox")
				break;
		}
		i++;
	} 
	return form.elements[i].value;


}

function mostraDIV(nomeDIV) 
{ 	
	div = document.getElementById(nomeDIV); 
	
	if(div.style.display == "block") 
		div.style.display = "none"; 
	else 
		div.style.display = "block"; 
}

function strutsMsg() {
alert((document.getElementById('tMsg').innerHTML.split("#quebra")).join("\n"));
}

/*
Para usar nas janelas que precisam aparecer: Aguarde carregando...
*/
function carregando()
{
    document.all.carregamento.style.display = '';
}


//
// Verifica se o navegador utilizado é Mozilla ('NS'), Internet Explorex ('MSIE') ou outro qualquer
// 
function verificaNavegador()
{
	browsername=navigator.appName;
	if (browsername.indexOf("Netscape")!=-1) 
	{
		browsername="NS"
	}
	else
	{
		if (browsername.indexOf("Microsoft")!=-1)
		{
			browsername="MSIE"
		}
		else 
		{
			browsername="N/A"
		}
	};
	return browsername;
}

/* Formatação para qualquer máscara */

function formatar(src, mask) 
{
	var i = src.value.length;
	var saida = mask.substring(0,1);
	var texto = mask.substring(i)
	if (texto.substring(0,1) != saida) 
  	{
		src.value += texto.substring(0,1);
  	}
}

// Radio Button Validation
// copyright Stephen Chapman, 15th Nov 2004,14th Sep 2005
// you may copy this function but please keep the copyright notice with it
function valButton(btn) {
    var cnt = -1;
    for (var i=btn.length-1; i > -1; i--) {
        if (btn[i].checked) {cnt = i; i = -1;}
    }
    if (cnt > -1) return btn[cnt].value;
    else return null;
}
                  