// Verificaca que o visitante nao entrou nada no campo Pais
// sem usar o botao 

function AjustaPaisDest (PField, Verifica, Pais) {
	var sR = "EUA";
	var sR = Pais;
	var PPais = PField.value;
	if (Verifica == "True")  
		alert ("Para escolher o país do destinatário clique no botão país");
	return sR
}

function AjustaPaisRem (PField, Verifica, Pais) {
	var sR = "Brasil";
	var sR = Pais;
	var PPais = PField.value;
	if (Verifica == "True")  
		alert ("Para escolher o país do remetente clique no botão país");
	return sR
}


function muda_e_envia(){
	//document.fTg.sku.value = document.fTg.TPais_Dest.value.charAt(0);
	document.fTg.submit();
}

function avaliaDadosPais (pPais,pCep,pUf, pForm) {
	//if (pPais != "01"){
	//	pUf.selectedIndex = 0;
	//}
	pCep.value = AjustaCEP(pCep, pForm, 'False');
}

function chamapaisesrem()
{
	var win = window.open ("shp_paisesrem.htm","teste","width=300,height=150");
}

function chamapaisesdest()
{
	var win = window.open ("shp_paisesdest_int.htm","teste","width=300,height=150");
}

//---------------------------------------------------------------------------------
// Vazio
//
// Verifica se um texto contem conteudo
//---------------------------------------------------------------------------------


function Vazio (pTxt) {
	var i = 0;
	var ch;
	var preenchido = false;
	while (i < pTxt.length) {
		ch = pTxt.charAt(i);
		if ((ch != ' ') && (ch != '\n') && (ch != '\t') && (ch != '\r')) {
			i = pTxt.length;
			preenchido = true;
		}
		else
			i++;
	}
	return (!preenchido);
}

//---------------------------------------------------------------------------------
// AjustaCEP
//
// Validacao basica do CEP
//---------------------------------------------------------------------------------

function AjustaCEP (PField, PPais, pF, Verifica) {
	var sR = "";
	var i = 0;
	var ch, erro;
	var PCEP = PField.value;
	if (Vazio (PCEP))
		return "";
	if ((PPais.value == "01") && (Verifica == "True"))  {

		if (PCEP.length < 8) {
			alert ("Digite um formato válido para o CEP: 99999-999 ou 99999999");
			PField.focus();
			return "";
		}

		while (i < 9) {
			if (i < PCEP.length)
				ch = PCEP.charAt (i);
			else
				ch = '0';
			if (ch != '-') {
				if ( (ch < '0') || (ch > '9') ) {
					alert ("Digite um formato válido para o CEP: 99999-999 ou 99999999");
					PField.focus();
					return "";
				}
				if (sR.length < 8)
					sR += ch;
			}
			i++;
		}
	}
	else {
		sR = PCEP;
    }
	return sR;
}

function dropAspas(pTexto)
{
	var i = 0;
	var sTexto = "";
	
	for (i = 0; i < pTexto.length; i++) {
		if ((pTexto.substring (i,i+1) == '\'') || (pTexto.substring (i,i+1) == '\"') )
			sTexto += '';
		else
			sTexto += pTexto.substring (i,i+1);
	}
	return sTexto;
}


var emiteMsgtxtNomeDestinatario = true;
var emiteMsgtxtEnderecoDestinatario = true;
var emiteMsgtxtNomeRemetente = true;
var emiteMsgtxtEnderecoRemetente = true;

// Inicio funcoes CTIS

function validaTexto(obj1, obj2, p_maxLinhas, p_maxCols){
    var t_numLinhas1 = contaLinhas(obj1.value, p_maxCols, false);
    var t_numLinhas2 = contaLinhas(obj2.value, p_maxCols, false);
    // se o primeiro campo estourou
    if ((t_numLinhas1+t_numLinhas2)>p_maxLinhas){
      return false;
    }
    return true;
}

function getNomeCampo(p_component){
   var t_nomeCampo = "";
   if (p_component.name == "txtNomeDestinatario") t_nomeCampo = "Nome do Destinatario";
   else if (p_component.name == "txtEnderecoDestinatario") t_nomeCampo = "Endereço do Destinatario";
   else if (p_component.name == "txtNomeRemetente") t_nomeCampo = "Nome do Remetente";
   else if (p_component.name == "txtEnderecoRemetente") t_nomeCampo = "Endereço do Remetente";
   return t_nomeCampo;
}

function trimEnd(p_txt) {
    var sR = "";

    sR = p_txt;
    var i = 0;
    if (sR.length>0){
                // ***************************************************
                // Trim no meio
                var kFim = -1;
                var kIni = -1;
                i = 0;
                while (i<sR.length){
                  if (sR.charCodeAt(i)==32){ //se encontrou caractere em branco
                     if (kIni == -1)  // se ainda nao marcou o inicio
                        kIni = i;     // marca o inicio
                  }
                  else if ((sR.charCodeAt(i)==13) || (sR.charCodeAt(i)==10)){ //se encontrou ENTER
                     if (kIni != -1)  // se marcou o inicio
                        kFim = i;     // marca o fim
                  }
                  else{ // se encontrou caractere comum, desmarca configuracoes anteriores
                        kFim = -1;
                        kIni = -1;
                  }
                  if ((kIni != -1) && (kFim != -1)){
                     //se encontrou ENTER antes do inicio
                     // deve sobrepor este ENTER
                     if ((sR.charCodeAt(kIni-1)==13) || (sR.charCodeAt(kIni-1)==10)){
                        kIni--;
                     }
                     sR = sR.substring(0, kIni) + sR.substring(kFim, sR.length);
                     i = kIni;
                     kFim = -1;
                     kIni = -1;
                  }
                  i++;
                }

                // ***************************************************
                // Trim no inicio
                i = 0;
                while ((i < sR.length) &&
                       ((sR.charCodeAt(i)==13) || (sR.charCodeAt(i)==10) || (sR.charCodeAt(i)==32)))
                        i++;
                if (i<sR.length){
                 sR = sR.substring(i, sR.length);
		}

                // ***************************************************
                // Trim no fim
                i = sR.length-1;
                while ((i > 0 ) &&
                       ((sR.charCodeAt(i)==13) || (sR.charCodeAt(i)==10) || (sR.charCodeAt(i)==32)))
			i--;
                if (i>=0){
                 sR = sR.substring(0, i+1);
		}
    }
    return sR;
}

function direcionaPorBrowsertxtNomeDestinatario(e){
  var ret = false;
  if (navigator.appName == "Netscape")
    ret = podeDigitar(document.fTg.txtNomeDestinatario, document.fTg.txtEnderecoDestinatario, e.which, 4, 43);
  else
    ret = podeDigitar(document.fTg.txtNomeDestinatario, document.fTg.txtEnderecoDestinatario, event.keyCode, 4, 43);
  return ret;
}
function direcionaPorBrowsertxtEnderecoDestinatario(e){
  var ret = false;
  if (navigator.appName == "Netscape")
    ret = podeDigitar(document.fTg.txtEnderecoDestinatario, document.fTg.txtNomeDestinatario, e.which, 4, 43);
  else
    ret = podeDigitar(document.fTg.txtEnderecoDestinatario, document.fTg.txtNomeDestinatario, event.keyCode, 4, 43);
  return ret;
}
function direcionaPorBrowsertxtNomeRemetente(e){
  var ret = false;
  if (navigator.appName == "Netscape")
    ret = podeDigitar(document.fTg.txtNomeRemetente, document.fTg.txtEnderecoRemetente, e.which, 3, 43);
  else
    ret = podeDigitar(document.fTg.txtNomeRemetente, document.fTg.txtEnderecoRemetente, event.keyCode, 3, 43);
  return ret;
}
function direcionaPorBrowsertxtEnderecoRemetente(e){
  var ret = false;
  if (navigator.appName == "Netscape")
    ret = podeDigitar(document.fTg.txtEnderecoRemetente, document.fTg.txtNomeRemetente, e.which, 3, 43);
  else
    ret = podeDigitar(document.fTg.txtEnderecoRemetente, document.fTg.txtNomeRemetente, event.keyCode, 3, 43);
  return ret;
}
function validandotxtNomeDestinatario(pF){
   pF.txtNomeDestinatario.value = trimEnd(pF.txtNomeDestinatario.value);
   if (emiteMsgtxtNomeDestinatario)
     emiteMsgtxtEnderecoDestinatario = validando(pF.txtNomeDestinatario, pF.txtEnderecoDestinatario, 4, 43, "Destinatário");
}
function validandotxtEnderecoDestinatario(pF){
   pF.txtEnderecoDestinatario.value = trimEnd(pF.txtEnderecoDestinatario.value);
   if (emiteMsgtxtEnderecoDestinatario)
     emiteMsgtxtNomeDestinatario = validando(pF.txtEnderecoDestinatario, pF.txtNomeDestinatario, 4, 43, "Destinatário");
}
function validandotxtNomeRemetente(pF){
   pF.txtNomeRemetente.value = trimEnd(pF.txtNomeRemetente.value);
   if (emiteMsgtxtNomeRemetente)
     emiteMsgtxtEnderecoRemetente = validando(pF.txtNomeRemetente, pF.txtEnderecoRemetente, 3, 43, "Remetente");
}
function validandotxtEnderecoRemetente(pF){
   pF.txtEnderecoRemetente.value = trimEnd(pF.txtEnderecoRemetente.value);
   if (emiteMsgtxtEnderecoRemetente)
     emiteMsgtxtNomeRemetente = validando(pF.txtEnderecoRemetente, pF.txtNomeRemetente, 3, 43, "Remetente");
}
function validando(obj1, obj2, p_maxLinhas, p_maxCols, p_txt){
     var ret = validaTexto(obj1, obj2, p_maxLinhas, p_maxCols);
     if (!ret){
        alert("Nome e Endereço do " + p_txt + " devem ter, no total, um máximo de " + p_maxLinhas + " linhas !");
        obj1.focus();
     }
     return ret;
}
function podeDigitar(obj1, obj2, p_pressed, p_maxLinhas, p_maxCols){
   var t_numLinhas1 = contaLinhas(obj1.value+String.fromCharCode(p_pressed), p_maxCols, false);
   var t_numLinhas2 = contaLinhas(obj2.value, p_maxCols, false);
   var s = "";
   // se esta pressionando 13 e eh ultima linha
   var ret = true;
   //alert(t_numLinhas1 + "/" + t_numLinhas2);
   ret = ((t_numLinhas1+t_numLinhas2)<=p_maxLinhas)
   if ((p_pressed == 13) && ((t_numLinhas1+t_numLinhas2) == p_maxLinhas))
	   ret = false;
   return ret;
}

function quebraLinhas(obj, p_maxCols){
  var t_txtFinal = contaLinhas(obj.value, p_maxCols, true);
  return t_txtFinal;
}

function adicionaTexto(p_txt, p_indexIni, p_indexFim){
  var sR = "";
  sR = p_txt.substring(p_indexIni, p_indexFim);
  return sR;
}


// Conta a quantidade de linhas do texto.
// para isso faz uso do caracter especial 13
// e do numero total de colunas para uma determinada linha
// @param p_txt Texto a ser analisado
// @param p_maxLinhas quantidade maxima de colunas em uma linha
function contaLinhas(p_txt, p_maxCols, forcaQuebra){
   var i = 0;
   var t_charcode = 0;
   var t_numLinhas = 1;
   var t_offSetIni = 0;     // indice do primeiro caractere da linha atual
   var t_offSetFim = 0;     // indice do ultimo/atual caractere da linha atual
   var t_offSetPal = 0;     // indice do inicio da ultima palavra da linha
   var t_ultcharcode = 0;
   var quebra = false;
   var t_txtFinal = "";

   // percorre todo o texto, contando as linhas
   while (i<p_txt.length){
      t_charcode = p_txt.charCodeAt(i);
      if (t_charcode!=13){
         if (t_charcode==10){
            if (forcaQuebra)
               t_txtFinal += adicionaTexto(p_txt, t_offSetIni, i);
            t_numLinhas++;
            t_offSetIni = i+1;  // pula caractere 10
            t_offSetFim = t_offSetIni;
            t_offSetPal = t_offSetIni;
            t_ultcharcode = 0;
         }
         else{
            // considera caracteres especiais a serem convertidos
            // pela funcao TT().
            // ascii(34) = "
            // ascii(37) = %
            // ascii(170) = ª
            // ascii(186) = º

            if ((t_charcode==186) || (t_charcode==170) || (t_charcode==34)){
                t_offSetFim++;
            }
            else if (t_charcode==37){
                t_offSetFim+=3;
            }
            // se chegou no fim da linha
            if ((t_offSetFim-t_offSetIni) >= p_maxCols){
               t_numLinhas++;
               // descobre a nova posicao da linha
               // se nao tinha comecado palavra nova
               if (t_offSetPal == t_offSetIni){
                 if (forcaQuebra)
                    t_txtFinal += adicionaTexto(p_txt, t_offSetIni, i)+"\n";
                 t_offSetIni = i;
                 t_offSetFim = t_offSetIni;
                 t_offSetPal = t_offSetIni;
                 t_ultcharcode = 0;
               }
               // se tinha comecado palavra nova
               else {
                  // se caractere digitado nao eh espaco, palavra nova vai inteira para outra linha
                  if ((t_charcode != 32) && (t_ultcharcode == 32)){
                    if (forcaQuebra){
                       t_txtFinal += adicionaTexto(p_txt, t_offSetIni, i)+"\n";
                    }
                    t_offSetIni = i;
                    t_offSetFim = t_offSetIni;
                    t_offSetPal = t_offSetIni;
                    t_ultcharcode = 0;
                  }
                  else{
                     if (forcaQuebra)
                        t_txtFinal += adicionaTexto(p_txt, t_offSetIni, t_offSetPal-1)+"\n";
                     t_offSetIni = t_offSetPal;
                     t_offSetFim = i;
                     t_offSetPal = t_offSetIni;
                  }
               }
            }
            // se ainda nao chegou no fim da linha
            else{
               // guarda offSet do ultimo espaco encontrado
               if (t_charcode!=32){
                 //se o ultimo caractere digitado foi espaco, entao esta comecando palavra nova
                 if (t_ultcharcode==32){
                    t_offSetPal = i;
                 }
               }
            }
            t_offSetFim++;
            t_ultcharcode = t_charcode;
         }
      }
      i++;
   }
   if (forcaQuebra){
     t_txtFinal += adicionaTexto(p_txt, t_offSetIni, i);
     return t_txtFinal;
   }
   else{
        return t_numLinhas++;
   }
}


/*
// Conta a quantidade de linhas do texto.
// para isso faz uso do caracter especial 13
// e do numero total de colunas para uma determinada linha
// @param p_txt Texto a ser analisado
// @param p_maxLinhas quantidade maxima de colunas em uma linha
function contaLinhas(p_txt, p_maxCols, forcaQuebra){
   var i = 0;
   var t_charcode = 0;
   var t_numLinhas = 1;
   var t_offSetIni = 0;     // indice do primeiro caractere da linha atual
   var t_offSetFim = 0;     // indice do ultimo/atual caractere da linha atual
   var t_offSetPal = 0;     // indice do inicio da ultima palavra da linha
   var t_ultcharcode = 0;
   var quebra = false;
   var t_txtFinal = "";

   // percorre todo o texto, contando as linhas
   while (i<p_txt.length){
      t_charcode = p_txt.charCodeAt(i);
      if (t_charcode!=13){
         if (t_charcode==10){
            t_txtFinal += adicionaTexto(p_txt, i-t_offSetFim-1, i);
            t_numLinhas++;
            t_offSetIni = 0;
            t_offSetFim = 0;
            t_offSetPal = 0;
            t_ultcharcode = 0;
         }
         else{
            // considera caracteres especiais a serem convertidos
            // pela funcao TT().
            // ascii(34) = "
            // ascii(37) = %
            // ascii(170) = ª
            // ascii(186) = º

            if ((t_charcode==186) || (t_charcode==170) || (t_charcode==34)){
                t_offSetFim++;
            }
            else if (t_charcode==37){
                t_offSetFim+=2;
            }
            // se chegou no fim da linha
            if ((t_offSetFim-t_offSetIni) >= p_maxCols){
               t_numLinhas++;
               // descobre a nova posicao da linha
               // se nao tinha comecado palavra nova
               if (t_offSetPal == 0){
                 t_offSetFim = 0;
               }
               // se tinha comecado palavra nova
               else {
                  // se nao digitou espaco, palavra nova vai inteira para outra linha
                  if ((t_charcode != 32) && (t_ultcharcode == 32)){
                    t_offSetFim = 0;
                  }
                  else{
                     t_offSetFim = p_maxCols - t_offSetPal;
                     if (forcaQuebra){
                        t_txtFinal += "\n";
                     }
                  }
               }
               t_offSetIni = 0;
               t_offSetPal = 0;
               t_ultcharcode = 0;
            }
            // se ainda nao chegou no fim da linha
            else{
               // guarda offSet do ultimo espaco encontrado
               if (t_charcode!=32){
                 //se o ultimo caractere digitado foi espaco, entao esta comecando palavra nova
                 if (t_ultcharcode==32){
                    t_offSetPal = t_offSetFim;
                 }
               }
            }
            t_offSetFim++;
            t_ultcharcode = t_charcode;
         }
      }
      i++;
   }
   if (forcaQuebra){
     t_txtFinal += adicionaTexto(p_txt, i-t_offSetFim-1, i);
     return t_txtFinal;
   }
   else{
        return t_numLinhas++;
   }
}
*/


// Fim CTIS

function LinkCep () {
	
	//Wesley em 26/10/2009
	//Mudança dos links para as consultas de CEP
	//var URLCEP = "http://www.correios.com.br/servicos/cep/cep_default.cfm";
	var URLCEP = "http://www.buscacep.correios.com.br/servicos/dnec/menuAction.do?Metodo=menuEndereco";
	
	var winoptions = "copyhistory=0,directories=0,height=500,location=0,menubar=1,resizeable=1,scrollbars=1,status=1,toolbar=0,width=600";
	window.open (URLCEP, "cepwin", winoptions);
}

// MODIFICA O VALOR MÁXIMO DE LINHAS DA CARTA

  function MaxLinha(iEspaco)
  {

    if (iEspaco==6)
	 {
      iMaxLinha = 57;
	 }
    else if (iEspaco==4)
	 {
      iMaxLinha = 38;
	 }
	else if (iEspaco==3)
	 {
      iMaxLinha = 28;
     }
    return iMaxLinha;

  }

//-----------------------------------------------


// MODIFICA O VALOR MÁXIMO DE COLUNAS DA CARTA

  function MaxColuna(iSize)
  {
    if (iSize==9)
	 {
      iMaxColuna = 85;
	 }
	else if (iSize==10)
	 {
      iMaxColuna = 75;
	 }
	else if (iSize==12)
	 {
      iMaxColuna = 65;
	 }
    return iMaxColuna;
  }

//-----------------------------------------------


// MODIFICA VALOR DO TAMANHO MÁXIMO DO TEXTO
  
  function TamanhoCarta(iSize, iEspaco)
  {
    // iFonte não utilizado

    if (iSize==1)
	 {
      iMaxColuna = 85;
	 }
	else if (iSize==2)
	 {
      iMaxColuna = 75;
	 }
	else if (iSize==3)
	 {
      iMaxColuna = 65;
	 }

    if (iEspaco==6)
	 {
      iMaxLinha = 57;
	 }
    else if (iEspaco==4)
	 {
      iMaxLinha = 38;
	 }
	else if (iEspaco==3)
	 {
      iMaxLinha = 28;
     }

	alert("TamanhoCarta");
  }

//-----------------------------------------------


// VERIFICA TEXTO DA CARTA 
  
  function ChkCarta(sCarta)
  {
    if (ValidaTexto(sCarta) == 'true')
     {
      document.fTg.txtUsuario.focus();
	 }
	else
	 {
      alert('O texto da sua carta ultrapassou o limite máximo permitido.');
	  document.fTg.txtCarta.focus();
	 }
  }

//-----------------------------------------------


// VERIFICA SE PAIS DItxtEnderecoRemetenteENTE DE BRASIL PARA ANULAR UF

  function ChkUf()
   {
    if (document.fTg.cboPaisDestinatario.value != 1)
	 {
      document.fTg.cboUFDestinatario.value = "";
     }
   }

//-----------------------------------------------


// CALCULA SE O TEXTO ULTRAPASSA UMA PÁGINA

  function ValidaTexto(sTextIn)
  {
    var iLinha;
    var iLength;

    var sAuxChar;
    var sAuxPalavra;
    var sAuxLinha;

    sAuxPalavra = new String("");
    sAuxLinha = new String("");

    iLinha = 1;
    iLength = sTextIn.length-1;

    for(i=0;i<=iLength;i++)
	 {
  	  sAuxChar = sTextIn.charAt(i);
    
      //verifica se é quebra de linha
	  if (sAuxChar == "\n")
	   {
        sAuxPalavra = sAuxPalavra + sAuxChar;
	    sAuxLinha = sAuxLinha + sAuxPalavra;
	    iLinha++;
	    sAuxPalavra = "";
	    sAuxLinha = "";
	   }
    
	  //verifica se é fim de palavra
	  else if (sAuxChar == " " || sAuxChar == "," || sAuxChar == "." || sAuxChar == ";" ||
		       sAuxChar == "!" || sAuxChar == "?" || sAuxChar == "(" || sAuxChar == ")" ||
			   sAuxChar == "[" || sAuxChar == "]" || sAuxChar == "{" || sAuxChar == "}" ||
			   sAuxChar == ":" || sAuxChar == "-") 
	   {
        sAuxPalavra = sAuxPalavra + sAuxChar;
	    sAuxLinha   = sAuxLinha + sAuxPalavra;
	    sAuxPalavra = "";
	   }

      //adiciona caracter lido na palavra sendo montada
      else 
	   {
	    sAuxPalavra = sAuxPalavra + sAuxChar;
	   }

	  //verifica tamanho da coluna
	  if (iMaxColuna <= (sAuxLinha.length + sAuxPalavra.length))
	   {

        //verifica tamanho da palavra
        if (sAuxPalavra>30)
		 {
          sAuxLinha = sAuxLinha + sAuxPalavra + "  ";
          sAuxPalavra = "";
	     } 
        iLinha++;
	    sAuxLinha = ""; 
	   }
     }

    //document.fTg.txtnlinhas.value = intLinha;
  
    //retorno
    if (iLinha > iMaxLinha)
	 {
      return "false";
     }
    else
	 {
      return "true";
     }
  }

// ----------------------------------------------


// DEFINE OBJETO PARA COMPOR ARRAY DE DESTINATÁRIOS

  function destinatarios (nome, ender, cidade, cep, caixa,uf)
  {
    this.nome=nome;
    this.ender=ender;
    this.cidade=cidade;
    this.cep=cep;
    this.caixa=caixa;
    this.uf=uf;
  }

// ----------------------------------------------


// LIMPA ENDEREÇO DE DESTINO

  function LimpaEndereco()
  {
	document.fTg.txtEnderecoDestinatario.value = "";
	document.fTg.txtCidadeDestinatario.value = "";
	document.fTg.txtCEPDestinatario.value = "";
  } 

// ----------------------------------------------


// LIMPA CAIXA POSTAL QUANDO ENDEREÇO DE DESTINO PREENCHIDO

  function LimpaCaixaPostal()
  {
    document.fTg.txtCaixaPostalDestinatario.value = "";
  }

// ----------------------------------------------


// VALIDA CAMPOS

  function ValidaCampos()
  {
    var iValida    = 0;
    var sMsgErro = "Os seguintes erros ocorreram:\n";
    var Errors  = new Array('no error.',                                       //0
 						    'Nome do rementente deve ser preenchido.\n',       //1
							'Endereço do remetente deve ser preenchido .\n',   //2
							'Cep do remetente deve ser preenchido .\n',        //3
							'Cidade do remetente deve ser preenchido.\n',      //4
							'Deve existir conteúdo para carta.\n',             //5
							'Usuário deve ser preenchido.\n',                  //6   
							'Senha deve ser preenchida.\n',                    //7
							'Cep de destinatário deve ser preenchido.\n',      //8
							'Endereço de destinatário deve ser preenchido.\n', //9
							'Cidade do destinatario deve ser preenchido.\n',   //10
							'Nome do destinatário deve ser preenchido.\n',     //11
							'O texto da sua carta ultrapassou o limite máximo permitido.\n', //12
							'UF do Remetente deve ser preenchido. \n', //13
							'UF do Destinatario deve ser preenchido.  \n' //14
						   );

 
    // CARTA
	Aux = document.fTg.txtCarta.value;
    if (Aux.length == 0)
	 {
      iValida = 5;
	  sMsgErro = sMsgErro + Errors[iValida];
     }
    else
	 {
      if (ValidaTexto(document.fTg.txtCarta.value) == 'false')
	   {
	    iValida = 12;
		sMsgErro = sMsgErro + Errors[iValida];
	   }  
	 }

    // CIDADE DO REMETENTE
    Aux = document.fTg.txtCidadeRemetente.value;
    if (Aux.length == 0)
	 {
      iValida = 4;
	  sMsgErro = sMsgErro + Errors[iValida];
     }

    // CEP DO REMETENTE
    Aux = document.fTg.txtCEPRemetente.value;
    if (Aux.length == 0)
	 {
	 if (document.fTg.TPaisRem.value == 1){
	      iValida = 3;
	      sMsgErro = sMsgErro + Errors[iValida];
	 }
     }

    // ENDEREÇO DO REMETENTE
    Aux = document.fTg.txtEnderecoRemetente.value;
    if (Aux.length == 0)
	 {
      iValida = 2;
	  sMsgErro = sMsgErro + Errors[iValida];
     }

    // UF DO REMETENTE
    Aux = document.fTg.cboUfRemetente.options[document.fTg.cboUfRemetente.selectedIndex].value;
    if (Aux == "XX"){
	 if (document.fTg.TPaisRem.value == "01"){
	      iValida = 13;
	      sMsgErro = sMsgErro + Errors[iValida];
	 }
     }

    // NOME DO REMETENTE
    Aux = document.fTg.txtNomeRemetente.value;
    if (Aux.length == 0)
	 {
      iValida = 1;
	  sMsgErro = sMsgErro + Errors[iValida];
     }
  
    // CAIXA POSTAL DESTINATÁRIO
    Aux = document.fTg.txtCaixaPostalDestinatario.value;
    if (Aux.length == 0)
	 {
      
	  // Enderço, cidade, UF e CEP do destinatário são criticados somente se caixa postal<>""
	  
      // CEP DO DESTINATÁRIO
      Aux = document.fTg.txtCEPDestinatario.value;
      if (Aux.length == 0)
	   {
	   if (document.fTg.TPaisDest.value==1){
              iValida = 8;
	      sMsgErro = sMsgErro + Errors[iValida];
           }
      }

    // UF DO DESTINATARIO
    //Aux = document.fTg.cboUFDestinatario.options[document.fTg.cboUFDestinatario.selectedIndex].value;
    //if (Aux == "XX"){
	// if (document.fTg.TPais_Dest.value == "01"){
	//      iValida = 14;
	//      sMsgErro = sMsgErro + Errors[iValida];
	// }
    // }


      // ENDEREÇO DO DESTINATÁRIO
      Aux = document.fTg.txtEnderecoDestinatario.value;
      if (Aux.length == 0)
	   {
        iValida = 9;
	    sMsgErro = sMsgErro + Errors[iValida];
       }

      // CIDADE DO DESTINATÁRIO
      Aux = document.fTg.txtCidadeDestinatario.value;
      if (Aux.length == 0)
	   {
        iValida = 10;
	    sMsgErro = sMsgErro + Errors[iValida];
       }

      // NOME DO DESTINATÁRIO
      Aux = document.fTg.txtNomeDestinatario.value;
      if (Aux.length == 0)
	   {
        iValida = 11;
	    sMsgErro = sMsgErro + Errors[iValida];
       }
     }
   
    if (iValida == 0)
	 {
      return true;
     }
    else
	 {
      alert(sMsgErro);
      if (iValida == 6)  document.fTg.txtUsuario.focus();
      if (iValida == 7)  document.fTg.txtSenha.focus();
      if (iValida == 1)  document.fTg.txtNomeRemetente.focus();
      if (iValida == 2)  document.fTg.txtEnderecoRemetente.focus();
      if (iValida == 3)  document.fTg.txtCEPRemetente.focus();
      if (iValida == 4)  document.fTg.txtCidadeRemetente.focus();
      if (iValida == 5)  document.fTg.txtCarta.focus();
	  if (iValida == 12) document.fTg.txtCarta.focus();
      if (iValida == 8)  document.fTg.txtCEPDestinatario.focus();
      if (iValida == 9)  document.fTg.txtEnderecoDestinatario.focus();
      if (iValida == 10) document.fTg.txtCidadeDestinatario.focus();
      if (iValida == 11) document.fTg.txtNomeDestinatario.focus();
      return false;
     }
  }

// ----------------------------------------------


// LIMPA CAMPOS TODOS OS CAMPOS DA TELA

  function Limpa()
  {
    document.fTg.txtnomedest.value = "";
    document.fTg.txtnomerem.value = "";
    document.fTg.txtenddest.value = "";
    document.fTg.txtendrem.value = "";
    document.fTg.txtciddest.value = "";
    document.fTg.txtcidrem.value = "";
    document.fTg.cmbufdest.selectedIndex = 0;
    document.fTg.cmbufrem.selectedIndex = 0;
    document.fTg.txtcepdest.value = "";
    document.fTg.txtceprem.value = "";
    document.fTg.txtcxpostal.value = "";
    document.fTg.txtemail.value = "";
    document.fTg.txtcarta.value = "";
    document.fTg.txtusuario.value = "";
    document.fTg.txtsenha.value = "";
  }

// ----------------------------------------------


// MAIN

  // VARIÁVEIS 

  var iMaxLinha;
  var iMaxColuna;

  // IMPLEMTAÇÃO

  iMaxLinha   = 63;
  iMaxColuna  = 75;

  //document.fTg.txtNomeDestinatario.focus();

// ----------------------------------------------

	function PodeTerAvisoRecebimento(){
		if(document.fTg.txtCaixaPostalDestinatario.value.length > 0 && document.fTg.checkPC.checked){
			alert("O serviço Aviso de Recebimento não está disponível para endereço com Caixa Postal.");
			document.fTg.checkPC.checked = false;
			return false;
		}
		return true;
	}
