function handleDWRError(msg){
	//--> DO NOTHING
	//alert('Error: ' + msg);
}

function addTextFCK(text) {
	document.frames[0].FCK.InsertHtml(text);
}

var contextPath = "";

function showLink(url){
	var preApp = contextPath + '/conteudo.do?seqAplicacao=';
	var preInfo = contextPath + '/conteudo.do?seqConteudo=';
	var preVisa = contextPath + '/conteudo.do?task=informacoesVisto&seqConteudo=';

	var queryString = '?task=verLink';
	if (url.length > preInfo.length && url.substr(0, preInfo.length) == preInfo ){
		var valor = url.substr(preInfo.length);
		queryString += '&seqConteudo=' + valor;
	} else if (url.length > preVisa.length && url.substr(0, preVisa.length) == preVisa ){
		var valor = url.substr(preVisa.length);
		queryString += '&seqConteudo=' + valor;
	} else if (url.length > preApp.length && url.substr(0, preApp.length) == preApp ){
		var valor = url.substr(preApp.length);
		queryString += '&seqAplicacao=' + valor;
	} else if (url.length > 1 && url.substr(0, 1) == '#'){
		queryString += '&ancora=' + url.substr(1);
	} else {
		queryString += '&url=' + url;
	}
	window.open(contextPath + '/conteudo/link.do' + queryString,'ShowLink','width=270,height=170,scrollbars=no');
}

function limparForm()
{
	document.forms[0].reset();
	parent.window.scrollTo(0,0);
}

function isPopupBlocked() {
	var mine = window.open('','','width=1,height=1,left=0,top=0,scrollbars=no');
	
	var popupsBlocked = true;
	if(mine){
		popupsBlocked = false;
		mine.close();
	}
	
	return popupsBlocked;
}

function needHelp(nomPagina){
	window.open(nomPagina + '/faq.do?popup=true', 'OnlineHelp', 'width=600,height=350,menubar=no,location=no,resizable=no,scrollbars=yes,status=no');
//	window.open('/visa-web/conteudo.do?nomPagina=' + nomPagina + '&categoria=MANUAIS', 'OnlineHelp', 'width=500,height=300,menubar=no,location=no,resizable=no,scrollbars=yes,status=no');
}

		function submeter(task)
		{
			form = document.forms[0];
			form.task.value= task;
			form.submit();
		}

		function submeterComPost(task)
		{
			document.forms[0].method = 'post';
			submeter(task);
		}
		
		function submeterComIndice(indice, task){
			form = document.forms[0];
			form.task.value = task;
			form.indice.value = indice;
			form.submit();
		}

		function getURLParam(strParamName)
		{
			var strReturn = "";
			var strHref = window.location.href;
			if ( strHref.indexOf("?") > -1 )
			{
				var strQueryString = strHref.substr(strHref.indexOf("?"));
				var aQueryString = strQueryString.split("&");
				for ( var iParam = 0; iParam < aQueryString.length; iParam++ )
				{
					if(aQueryString[iParam].indexOf(strParamName + "=") > -1 )
					{
						var aParam = aQueryString[iParam].split("=");
						strReturn = aParam[1];
						break;
					}
				}
			}
			return strReturn;
		}
	  
	  //=================================================
	  // FUNÇÃO TRIM - retita os espaços
	  //
	  // Retira os espaços do inicio
      // Enquanto o primeiro caracter for igual à "Espaço"
      // 1 caracter do inicio é removido
      //
      // Pega a string já formatada e agora retira os espaços do final
      // mesmo esquema, enquanto o ultimo caracter for um espaço,
      // ele retira 1 caracter do final...
      //=================================================
	  
	function trim(texto)
	{
        if(texto == null)
           return '';

      	return texto.replace( /^\s*/, "" ).replace( /\s*$/, "" );
	}	

	
	/** Completa com zeros a esquerda até chegar a um tamanho especificado*/
	function strZero(campo, tamTotal)
	{
		if (trim(campo.value) != "")
		{
			while (campo.value.length < tamTotal)
				campo.value = "0" + campo.value;
		}
	}
	
	 /** Retorna uma string contendo somente caracteres entre 0 e 9. */
	function onlyNumbers(valor)
	{
		var resultado = "";
	    for ( i = 0; i < valor.length; i++)
	    {
	        chr = valor.charAt(i);
	        if ( chr >= '0' && chr <= '9' )
	            resultado = resultado + chr; 
	    }
	    return resultado;
	}
	
	/** Passa para o proximo campo depois de digitado todo o conteudo do corrente */
	function mudaCampo(campoAtual, tamTotal, campoProx)
	{
	    if( event.keyCode != 9) // se não for tab
			if (campoAtual.value.length == tamTotal)
				campoProx.focus();
	}
	
	/** Abre um página do tipo pop */
	function abrePop(pStrNomePagina, pStrNomeJanela, pIntLarg, pIntComp){
		lStrNomePagina = "";

		blParam = false;
		for(i=0; i<pStrNomePagina.length; i++)	
		{
			if(pStrNomePagina.charAt(i) == "?") 
			{
				blParam = true;
			}
		}
		
		if (blParam) 
		{
			lStrNomePagina = pStrNomePagina+"&blOk=0";
		}
		else
		{
			lStrNomePagina = pStrNomePagina+"?blOk=0";
		}
		return window.open(lStrNomePagina, pStrNomeJanela, "toolbar=no,location=no,status=no,menubar=no,scrollbars=no,resizable=no,width="+pIntLarg+",height="+pIntComp);
	}
	
	/** Abre um página do tipo pop, passando posição de abertura na tela */
	function abrePopPos(pStrNomePagina, pStrNomeJanela, pIntLarg, pIntComp, pIntTop, pIntLeft){
		lStrNomePagina = "";

		blParam = false;
		for(i=0; i<pStrNomePagina.length; i++)	
		{
			if(pStrNomePagina.charAt(i) == "?") 
			{
				blParam = true;
			}
		}
		
		if (blParam) 
		{
			lStrNomePagina = pStrNomePagina+"&blOk=0";
		}
		else
		{
			lStrNomePagina = pStrNomePagina+"?blOk=0";
		}
		return window.open(lStrNomePagina, pStrNomeJanela, "toolbar=no,location=no,status=yes,menubar=no,scrollbars=yes,resizable=no,width="+pIntLarg+",height="+pIntComp+",top="+pIntTop+",left="+pIntLeft);
	}

	// Função para restringir o uso de qualquer tecla não numérica
	function nn_Key()
	{
		if ((event.keyCode<48) || (event.keyCode>57))
			event.keyCode = 0;
	}
	
	/** Formata o número digitado com o formato de moeda, colocando zero quando não houver nenhum valor digitado. */
	function formataMoeda(valor, casasDec, locale, moeda){
		moeda = "US $" ;
		pontoDecimal = "," ;
		pontoMilhar = "." ;
		var wd;
		cont = 0;
		strTemp = "";
		temMilhar = false;
		posDecimal = 0;

		var tempnum = "" + valor;

		// Coloca a máscara no formato desejado (9.999,99), sendo o número de casas decimais passado por parâmetro
		pos = 0;
		if ((tempnum.indexOf(pontoMilhar) > tempnum.indexOf(pontoDecimal)) || 
			((tempnum.indexOf(pontoMilhar) != -1) && (tempnum.indexOf(pontoDecimal) == -1))) {
			for (i=(tempnum.length-1); i>=0; i--) {
				if (pos++ <= casasDec) {
					if (tempnum.charAt(i) == pontoMilhar) {
						parteInteira = tempnum.substring(0, tempnum.indexOf(pontoMilhar));
						parteDecimal = tempnum.substring(tempnum.indexOf(pontoMilhar) + 1, tempnum.length);
						tempnum = parteInteira.replace(pontoDecimal, pontoMilhar) + pontoDecimal + parteDecimal;
						break;
					}
				}else{ 
					break;
				}
			}
		}
			
		// Verifica a existência do milhar
		if (tempnum.indexOf(pontoMilhar) != -1){
			temMilhar = true;
		}
		
		//tempnum.substring(0, tempnum.indexOf(pontoMilhar)
		// Tira os zeros a esquerda
		for (i=0; i<tempnum.length; i++){
			if (tempnum.charAt(i) != 0){
				tempnum = tempnum.substring(i, tempnum.length);
				break;
			}
		}
			
		// Verifica a existência de um ponto flutuante
		if (tempnum.indexOf(pontoDecimal) != -1){
			wd="d";
			posDecimal = tempnum.indexOf(pontoDecimal)-1;
			strTemp = tempnum.substring(tempnum.indexOf(pontoDecimal), tempnum.length);
		}else{
			wd="w";
			posDecimal = tempnum.length - 1;
		}			
			
		// Coloca os pontos dividindo milhares
		if (!temMilhar){
			for (i=posDecimal;i>=0;i--){
				cont++;
					
				if (((cont % 3) == 0) && (tempnum.charAt(i-1) != ".") && (i != 0)){
					strTemp = pontoMilhar + tempnum.charAt(i) + strTemp;
				}else{
					strTemp = tempnum.charAt(i) + strTemp;
				}
			}
			
			// Verifica se só foram digitados as casas decimais
			if (cont == 0){
				strTemp = "0" + strTemp;
			}		
			tempnum = strTemp;
		}
			
		// Coloca as casas decimais
		if (wd=="w") {
			strDecimais = "";
			for (k=0; k<casasDec; k++) {
				strDecimais = strDecimais + "0";
			}
			tempnum=tempnum+pontoDecimal+strDecimais;
		}else{
			strDecimais = "";
			strTempDec = tempnum.substring(tempnum.indexOf(pontoDecimal)+1, tempnum.length);
			if (strTempDec.length < casasDec){
				for (k=0; k<(casasDec - strTempDec.length); k++) {
					strDecimais = strDecimais + "0";
				}
				tempnum=tempnum+strDecimais;
			}

			// Verifica se foi digitada a parte inteira
			if (tempnum.indexOf(pontoDecimal) == 0){
				tempnum = "0" + tempnum;
			}		
			
		}
		
		if (locale == 'en_US')
		{
			while (tempnum.indexOf(",") != -1)
			{
				tempnum = tempnum.replace(",", "x");
			}
			while (tempnum.indexOf(".") != -1)
			{
				tempnum = tempnum.replace(".", ",");
			}
			while (tempnum.indexOf("x") != -1)
			{
				tempnum = tempnum.replace("x", ".");
			}
		}
		tempnum = moeda + tempnum;
		return tempnum;
	}		

	// Funções Agendamento Web
	
	function paginaSevisFaq()
	{
	    pagina = "/agendamento-web/estudarSemSEVIS.do";
		window.location.href=pagina;
	}

		function paginaPassports()
	{
	    pagina = "/agendamento-web/passaportesEstrangeiros.do";
		window.location.href=pagina;
	}

	function paginaEmbaixadas()
	{
	    pagina = "/agendamento-web/embaixadas.do";
		window.location.href=pagina;
	}
	
	function opcoesAvancadas(nomDiv, nomFlg, objArray)
	{
		var frm = document.forms[0];

		if (frm[nomFlg].checked){
			document.getElementById(nomDiv).style.display = '';
		}
		else{
			limparCampos(objArray);
			document.getElementById(nomDiv).style.display = 'none';
		}
	
		parent.PreparePage(document.body.scrollHeight, '');
	}
	
	function limparCampos(objArray){
		for (i=0;i<objArray.length;i++){
			form[objArray[i].name].value="";
		}
	}

	function mostraEscondeDiv( div ){ 
		var elem, vis;  
	 	if( document.getElementById ) 
			elem = document.getElementById( div );
		else if( document.all ) 
		  elem = document.all[div];  
		else if( document.layers ) 
			elem = document.layers[div];  vis = elem.style;  
		if(vis.display==''&&elem.offsetWidth!=undefined&&elem.offsetHeight!=undefined)    
		  vis.display = (elem.offsetWidth!=0&&elem.offsetHeight!=0)?'block':'none';  
		vis.display = (vis.display==''||vis.display=='block')?'none':'block';
	
		atualizaTamanhoPagina();
	}
	
	function selectAll(f) {
  		f.select();
  		//f.focus();
	}
	
	function acaoEnter(frm, listaCamposRequeridos, acao, evento)
	{
		var tecla;
		if (window.event) 
			tecla = window.event.keyCode;
		else if (evento) 
			tecla = evento.which;

		if (tecla == 13)
		{
			var ok = true;
			for(i = 0; i < listaCamposRequeridos.length; i++)
			{
				if(frm[listaCamposRequeridos[i]] && trim(frm[listaCamposRequeridos[i]].value) == "")
	   				ok = false;
   			} 

			if(ok)
				eval(acao);
   		}
	}

	