/*****************************************************************************************************
 *              Biblioteca de Funções Genéricas                                                      *
 *                                                                                                   *
 * Funções neste arquivo:                                                                            *
 *                                                                                                   *
 * FUNÇÂO                                RETORNO   DESCRIÇÂO                                         *
 * ------                                -------   ---------                                         *
 * ToMoney(valor)			 Float	   recebe string e converte no formato monetário     *
 * testaString(str, descricao)           Boolean   checa string nula ou com brancos                  *
 * testaCombo(combo, descricao)          Boolean   checa se existe opção selecinada                  *
 * testaComboValor(combo, descricao)     Boolean   checa se existe opção selecinada testando valor   *
 *                                                 diferente -1                                      *
 * testaCep(campoCep)                    Boolean   Testa se o Cep é valido                           *
 * testaCgc(campoCgc)                    Boolean   Testa se o CGC é valido                           *
 * checa_cpf (numcpf)                    Boolean   Testa se o Cpf é valido                           *
 * mod(ini,fim)                          Number    Calcula o resto de ini/fim                        *
 * emailCheck(emailStr)                  Boolean   Testa se o E-mail é valido                        *
 * trim(str)                             String    comprime espaços da string                        *
 * testaData(dateStr)                    Boolean   Testa se a data é valida                          *
 * formatCurrency(num)                   String    Formata número separando por (.) e (,)            *
 *                                                 Ex: formatCurrency(1000.5) = "1.000,50"           *
 * testaValor(str, descricao)            Boolean   checa se o valor numérico e valido e não nulo     *
 * testaRadioGroup(radioObj, descricao)  Boolean   checa se existeb alguma opção selecionada         *
 * testaAno(str, descricao)              Boolean   Testa ano com 4 algarismo                         *
 * isDigit(c)                            Boolean   Testa se o caracter c é numero (0 a 9)            *
 * isInteger (s)                         Boolean   Testa se a string só contem numeros               *
 * isFloat (s)                           Boolean   Testa se a string só contem float (0 a 9 e .)     *
 * testaFloat(numero, descricao)         Boolean   Testa se a string só contem float (0 a 9 e .)     *
 * testaTelefone(numero, descricao)      Boolean   Testa se a string só contem numeros(0 a 9 e -)    *
 * data(strData)                         Number    Valor Numerico da Data, permitindo comparar datas *
 * dataAtual()                           String    data atual formato dd/mm/yyyy                     *
 * strZero(numero, tam)                  String    numero com zeros a esquerda até preencher o tam   *
 *****************************************************************************************************/


/*
Projeto:
 - Verdi - Portal Vei
Analista:
 - Renato Barufi(rbarufi@gverdi.com.br)
Data última alteração:
 - 01/08/2001
Objetivo:
 - Permitir o cadastro de caminhoes usados por parceiros com 10 anos de uso.
 - Com a alteração fica caminhoes usados com ate 10 anos de uso e carros usados com ate 8 anos de uso.
 - A opcao nao impede o retorno da antiga função do site , podendo ser retornada rapidamente.
*/



var hoje = new Date();
var AnoCorrente = parseInt(hoje.getFullYear());

function ToMoney(valor) {

var str, virg;
  virg = /,/i;
  str = parseFloat(valor.replace(virg, "."));
  return str;
}


/* function keyPressQty()
{		
	switch (event.keyCode)
	{
		case 48 ://0
		case 49 ://1		
		case 50 ://2
		case 51 ://3
		case 52 ://4
		case 53 ://5
		case 54 ://6
		case 55 ://7
		case 56 ://8
		case 57 ://9
			break;
		default :
			event.keyCode = 0		
	}
} */ 

function keyPressPrice()
{		
	switch (event.keyCode)
	{
		case 48 ://0
		case 49 ://1		
		case 50 ://2
		case 51 ://3
		case 52 ://4
		case 53 ://5
		case 54 ://6
		case 55 ://7
		case 56 ://8
		case 57 ://9
		case 44 ://.				    
			break;
		case 46 ://,
			event.keyCode = 44;
			break;
		
		default :
			event.keyCode = 0;		
	}
	//alert(event.keyCode)
	//alert(event.srcElement.name)
}


function data(strData)
{
  //formato esperado: dd/mm/yyyy
  var ano = strData.substring(6,10);
  var mes = strData.substring(3,5);
  var dia = strData.substring(0,2);
  var dtData = Date.parse(mes + "/" + dia + "/" + ano);

  return dtData;
}

function dataAtual()
{
  var d;
  var s = "";
  d = new Date();
  s += strZero(d.getDate(),2) + "/";
  s += strZero((d.getMonth() + 1),2) + "/";
  s += d.getFullYear();
  return(s);
}

function strZero(numero, tam)
{
  var numero = trim(numero);
  while(numero.length < tam) {
    numero = "0" + numero;
  }
  return numero;
}

function testaString(str, descricao)
{
  if (trim(str) == "") {
    alert(descricao + " é Campo Obrigatório !");
    return false;
  }
  return true;
}


function testaCombo(combo, descricao)
{
  if (combo.selectedIndex == -1 || combo.selectedIndex == 0) {
        if (trim(descricao) != "" && trim(descricao) != " "){
            alert(descricao + " deve ter uma Opção Selecionada");
        }
    return false;
    }
  else
    return true;
}

function testaComboValor(combo, descricao)
{
  if (combo.options[combo.selectedIndex].value == -1) {
        if (trim(descricao) != "" && trim(descricao) != " "){
            alert(descricao + " deve ter uma Opção Selecionada");
        }
    return false;
    }
  else
    return true;
}

function testaValor_(str)
{
  var inp = "";
  var decimal = -1;
  var milhar = -1;
  var chr;
  var negativo = false;
  var texto = trim(str);
  if (texto == "") return 0;
  for (i = 1; i <= texto.length; i++) {
    chr = texto.charAt(texto.length - i);
    if (negativo) return 0;
    else if (chr == '-') {
      inp = '-' + inp;
      negativo = true;
    }
    else if (",.".indexOf(chr) >= 0) {
      if (chr == decimal) return 0;
      if (i <= 3) {
        if (decimal != -1) return 0;
        decimal = chr;
        inp = '.' + inp;
      }
      else if (milhar == -1) milhar = chr;
      if (chr != milhar && chr != decimal) return 0;
    }
    else if ("0123456789".indexOf(chr) >= 0) inp = chr + inp;
    else return 0;
  }
  return parseFloat(inp);
}

function testaValor(str, descricao)
{
    if (str.length > 13) {
        alert(descricao + " deve ter no máximo 13 posições");
        return false;
    }
    if (testaValor_(str) == 0 && trim(descricao) != "" && trim(descricao) != " ") {
        alert(descricao + " Deve ser Preenchido Corretamente");
        return false;
    }
    return true;
}

function testaRadioGroup(radioObj, descricao)
{
  for(i = 0; i < radioObj.length; i++) {
    if (radioObj[i].checked)
      return true;
  }
        if (trim(descricao) != "" && trim(descricao) != " "){
                  alert("Deve ser selecionada uma opção de " + descricao);
                  return false;
        }
}

function isDigit (c)
{   return ((c >= "0") && (c <= "9"))
}

function isInteger (s)
{   var i;
    for (i = 0; i < s.length; i++)
    {
        // Check that current character is number.
        var c = s.charAt(i);

        if (!isDigit(c)) return false;
    }
    // All characters are numbers.
    return true;
}

function isFloat (s)

{   var i;
    var decimalPointDelimiter = ".";

    if (s == decimalPointDelimiter) return false;

    for (i = 0; i < s.length; i++)
    {
        // Check that current character is number.
        var c = s.charAt(i);

        if (!((c == decimalPointDelimiter) || (isDigit(c))))
          return false;
    }

    return true;
}

function testaFloat(numero, descricao)
{
  if (!isFloat(numero)) {
    alert(descricao + " Deve ser Preenchido Corretamente");
    return false;
  }
  return true;
}

function testaTelefone (numero, descricao)

{   var i;
    var traco = "-";
    var branco = " ";
    s = trim(numero);
    if (s == traco) {
      alert(descricao + " Não é um Numero de Telefone de Válido");
      return false;
    }
    for (i = 0; i < s.length; i++)
    {
        // Check that current character is number.
        var c = s.charAt(i);

        if (!((c == traco) || (c == branco) || (isDigit(c)))) {
          alert(descricao + " Não é um Numero de Telefone de Válido");
          return false;
        }
    }

    return true;
}


function testaAno(ano, descricao, tipoVeiculo)
{
  var tam = ano.length;
  var maxAnos = ((arguments.length < 3) ? 10 : ((tipoVeiculo == 'CA') ? 10 : 10)) - 1;

  if (tam < 4) {
    alert(descricao + " Deve ter 4 (quatro) posições");
    return false;
  }
  if (!isInteger(ano)) {
    alert(descricao + " Deve ser Numero Inteiro");
        return false;
  }
  if (parseInt(ano) < parseInt(AnoCorrente - maxAnos)) {
    alert(descricao + " deve ser maior ou igual a " + parseInt(AnoCorrente - maxAnos));
    return false;
  }
  return true;
}

function testaInteiro(numero, descricao)
{
  if (trim(numero) == "") {
    alert(descricao + " é Campo Obrigatório");
    return false;
  }
  var numero = trim(numero);
  var tam = numero.length;
  if (tam > 8) {
    alert(descricao + " deve ter no máximo 8 (oito) posições");
    return false;
  }
  if (!isInteger(numero)) {
    alert(descricao + " deve ser Numero Inteiro");
        return false;
  }
  return true;
}

function testaCep(campoCep)
{
        /* Critica de CEP - função principal */
        var dblNum;
        var num1 = new initArrayCep(8);
        if((campoCep == null) || (campoCep == "00000000")) {
              alert("CEP nulo");
            return false; }
        if(campoCep.length != 8) {
            alert("CEP diferente de 8 posições");
            return false; }
        if((campoCep.substr(5,1) < "0") || (campoCep.substr(5,1) > "9")
                 || (campoCep.substr(6,1) < "0") || (campoCep.substr(6,1) > "9")
                 || (campoCep.substr(7,1) < "0") || (campoCep.substr(7,1) > "9"))
         {
            alert("CEP não deve conter caracteres diferentes de números");
            return false;
         }

        dblNum = 0.1;
        if(!isNaN(campoCep))
        {
                dblNum = campoCep;
                return true;
        }
        else
        {
                alert("CEP tem que ser numérico");
                return false;
        }
}

function testaCepPontoEntrega(campoCep)
{
        /* Critica de CEP - função principal */
        var dblNum;
        var num1 = new initArrayCep(8);
        if((campoCep == null) || (campoCep == "00000000")) {
              //alert("CEP nulo");
            return false; }
        if(campoCep.length != 8) {
            //alert("CEP diferente de 8 posições");
            return false; }
        if((campoCep.substr(5,1) < "0") || (campoCep.substr(5,1) > "9")
                 || (campoCep.substr(6,1) < "0") || (campoCep.substr(6,1) > "9")
                 || (campoCep.substr(7,1) < "0") || (campoCep.substr(7,1) > "9"))
         {
            //alert("CEP não deve conter caracteres diferentes de números");
            return false;
         }

        dblNum = 0.1;
        if(!isNaN(campoCep))
        {
                dblNum = campoCep;
                return true;
        }
        else
        {
                //alert("CEP tem que ser numérico");
                return false;
        }
}

function initArrayCep()
{
        /* Critica de Cep - Sub-funcao */
        this.length = initArrayCep.arguments.length;
      for (var i = 0 ; i < 8 ; i++)
        {
        this[i] = " ";
      }
}

function testaCgc(campoCgc)
{
      var num1 = new initArray(14);
      if(campoCgc == null)
        {     alert("CNPJ nulo");
            return false;
        }
        if(campoCgc.length != 14)
        {
            alert("CNPJ diferente de 14 posições");
            return false;
        }
            for (var i = 0 ; i < 14 ; i++)
                {
               num1[i] = campoCgc.substring(i, i+1);
                }

        digito13 = calculaDigito(13, num1);
        digito14 = calculaDigito(14, num1);
        if (num1[12]==(digito13) && num1[13]==(digito14)){
            return true;  }
      else {
            alert("CNPJ incorreto");
            return false;  }

}

function testaCgc2(campoCgc)
{
      var num1 = new initArray(14);
      if(campoCgc == null)
        {     //alert("CNPJ nulo");
            return false;
        }
        if(campoCgc.length != 14)
        {
            //alert("CNPJ diferente de 14 posições");
            return false;
        }
            for (var i = 0 ; i < 14 ; i++)
                {
               num1[i] = campoCgc.substring(i, i+1);
                }

        digito13 = calculaDigito(13, num1);
        digito14 = calculaDigito(14, num1);
        if (num1[12]==(digito13) && num1[13]==(digito14)){
            return true;  }
      else {
            //alert("CNPJ incorreto");
            return false;  }

}

function initArray()
{
        this.length = initArray.arguments.length;
      for (var i = 0 ; i < 14 ; i++)
        {
        this[i] = " ";
      }
}

function calculaDigito( cgc_limite,  num)
{
     cgc_soma = 0;
     cgc_ind = 1;
     cgc_peso = cgc_limite - 7 - cgc_ind;
     while(cgc_ind < cgc_limite)
     {
         cgc_soma += num[cgc_ind - 1] * cgc_peso;
         cgc_ind++;
         if(cgc_peso == 2)
              cgc_peso = 9;
         else
              cgc_peso--;
     }
     cgc_resto = mod(cgc_soma, 11);
     if(cgc_resto == 0 || cgc_resto == 1)
           {cgc_digito = 0;}
     else
           {cgc_digito = 11 - cgc_resto;}
     return cgc_digito;
}

function mod(ini, fim)
{
     t = ini % fim;
     return t;
}

function checa_cpf (numcpf)
{
        x = 0;
        soma = 0;
        dig1 = 0;
        dig2 = 0;
        texto = "";
        numcpf1="";
        len = numcpf.length; x = len -1;
        // var numcpf = "12345678909";
        for (var i=0; i <= len - 3; i++) {
                y = numcpf.substring(i,i+1);
                soma = soma + ( y * x);
                x = x - 1;
                texto = texto + y;
        }
        dig1 = 11 - (soma % 11);
        if (dig1 == 10) dig1=0 ;
        if (dig1 == 11) dig1=0 ;
        numcpf1 = numcpf.substring(0,len - 2) + dig1 ;
        x = 11; soma=0;
        for (var i=0; i <= len - 2; i++) {
                soma = soma + (numcpf1.substring(i,i+1) * x);
                x = x - 1;
        }
        dig2= 11 - (soma % 11);
        if (dig2 == 10) dig2=0;
        if (dig2 == 11) dig2=0;
        //alert ("Digito Verificador : " + dig1 + "" + dig2);
        if ((dig1 + "" + dig2) == numcpf.substring(len,len-2)) {
                return true;
        }
        alert ("Número do CPF inválido !!!");
        falso = "F";
        return false;
}

function checa_cpf2 (numcpf)
{
        x = 0;
        soma = 0;
        dig1 = 0;
        dig2 = 0;
        texto = "";
        numcpf1="";
        len = numcpf.length; x = len -1;
        // var numcpf = "12345678909";
        for (var i=0; i <= len - 3; i++) {
                y = numcpf.substring(i,i+1);
                soma = soma + ( y * x);
                x = x - 1;
                texto = texto + y;
        }
        dig1 = 11 - (soma % 11);
        if (dig1 == 10) dig1=0 ;
        if (dig1 == 11) dig1=0 ;
        numcpf1 = numcpf.substring(0,len - 2) + dig1 ;
        x = 11; soma=0;
        for (var i=0; i <= len - 2; i++) {
                soma = soma + (numcpf1.substring(i,i+1) * x);
                x = x - 1;
        }
        dig2= 11 - (soma % 11);
        if (dig2 == 10) dig2=0;
        if (dig2 == 11) dig2=0;
        //alert ("Digito Verificador : " + dig1 + "" + dig2);
        if ((dig1 + "" + dig2) == numcpf.substring(len,len-2)) {
                return true;
        }
        //alert ("Número do CPF inválido !!!");
        falso = "F";
        return false;
}

function testa_CPF(numcpf)
{
        if(checa_cpf(numcpf)) {
                return true;
        }
        else {
                return false;
        }
}

function emailCheck (emailStr) {
        //remove espaços antes da verificação
        var emailStr = trim(emailStr)
        /* Critica de e-mail */
        var emailPat=/^(.+)@(.+)$/
        var specialChars="\\(\\)<>@,;:\\\\\\\"\\.\\[\\]"
        var validChars="\[^\\s" + specialChars + "\]"
        var quotedUser="(\"[^\"]*\")"
        var ipDomainPat=/^\[(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})\]$/
        var atom=validChars + '+'
        var word="(" + atom + "|" + quotedUser + ")"
        var userPat=new RegExp("^" + word + "(\\." + word + ")*$")
        var domainPat=new RegExp("^" + atom + "(\\." + atom +")*$")


        var matchArray=emailStr.match(emailPat)
        if (matchArray==null) {
                alert("O endereço de e-mail parece incorreto (verifique @ e .'s)")
                return false
        }
        var user=matchArray[1]
        var domain=matchArray[2]

        if (user.match(userPat)==null) {
            alert("O nome de usuário do e-mail não parece ser válido.")
            return false
        }

        var IPArray=domain.match(ipDomainPat)
        if (IPArray!=null) {
                  for (var i=1;i<=4;i++) {
                    if (IPArray[i]>255) {
                        alert("O endereço IP de destino do e-mail é inválido!")
                        return false
                    }
            }
            return true
        }

        var domainArray=domain.match(domainPat)
        if (domainArray==null) {
                alert("O nome do domínio do e-mail não parece ser válido.")
            return false
        }

        var atomPat=new RegExp(atom,"g")
        var domArr=domain.match(atomPat)
        var len=domArr.length
        if (domArr[domArr.length-1].length<2 ||
            domArr[domArr.length-1].length>3) {
           alert("O endereço de e-mail deve terminar com um domínio de 3 letras ou um país com 2 letras.")
           return false
        }

        if (len<2) {
           var errStr="Este endereço de e-mail não possui um nome de Host!"
           alert(errStr)
           return false
        }

        return true;
}


function trim(str) {
  str = str.toString().replace(/\$|\ /g,'');
  return str;
}

function testaData(dateStr) {

  // testa data em branco -> usa função trim
  if (trim(dateStr) == "") {
    alert("Data é Campo Obrigatório");
    return false;
  }
// Checks for the following valid date formats:
// DD/MM/YY   DD/MM/YYYY   DD-MM-YY   DD-MM-YYYY
// Also separates date into month, day, and year variables

// To require a 2 digit year entry, use this line instead:
var datePat = /^(\d{1,2})(\/|-)(\d{1,2})\2(\d{2}|\d{4})$/;

// To require a 4 digit year entry, use this line instead:
   var datePat = /^(\d{1,2})(\/|-)(\d{1,2})\2(\d{4})$/;

var matchArray = dateStr.match(datePat); // is the format ok?
if (matchArray == null) {
alert("Data deve estar no formato DD/MM/AAAA")
return false;
}

day = matchArray[1];
month = matchArray[3]; // parse date into variables
year = matchArray[4];
if (month < 1 || month > 12) { // check month range
alert("Mês deve ser entre 1 e 12.");
return false;
}
if (day < 1 || day > 31) {
alert("Dia deve ser entre 1 e 31.");
return false;
}
if ((month==4 || month==6 || month==9 || month==11) && day==31) {
alert("Mês "+month+" não tem 31 dias!")
return false
}
if (month == 2) { // check for february 29th
var isleap = (year % 4 == 0 && (year % 100 != 0 || year % 400 == 0));
if (day>29 || (day==29 && !isleap)) {
alert("Fevereiro " + year + " não tem " + day + " dias!");
return false;
   }
}
return true;  // date is valid
}

function formatCurrency(num) {
num = num.toString().replace(/\$|\./g,'');
num = num.toString().replace(/\$|\,/g,'.');
if(isNaN(num)) num = "0";
cents = Math.floor((num*100+0.5)%100);
num = Math.floor(num).toString();
if(cents < 10) cents = "0" + cents;
for (var i = 0; i < Math.floor((num.length-(1+i))/3); i++)
num = num.substring(0,num.length-(4*i+3))+'.'+num.substring(num.length-(4*i+3));
return (num + ',' + cents);
}

function valorCurrency(num)
{
  num = num.toString().replace(/\$|\./g,'');
  num = num.toString().replace(/\$|\,/g,'.');
  valor = parseFloat(num);
  return valor;
}

function roundOff(value, precision)
{
        value = "" + value //convert value to string
        precision = parseInt(precision);

        var whole = "" + Math.round(value * Math.pow(10, precision));

        var decPoint = whole.length - precision;

        if(decPoint != 0)
        {
                result = whole.substring(0, decPoint);
                result += ".";
                result += whole.substring(decPoint, whole.length);
        }
        else
        {
                result = whole;
        }
        return result;
}
///////////////
function MM_jumpMenu(selObj,restore){ //v3.0 
var url = selObj.options[selObj.selectedIndex].value; 
if (url) window.open(url); 
if (restore) selObj.selectedIndex=0; 
}
///////////////
//v1.7
// Flash Player Version Detection
// Detect Client Browser type
// Copyright 2005-2007 Adobe Systems Incorporated.  All rights reserved.
var isIE  = (navigator.appVersion.indexOf("MSIE") != -1) ? true : false;
var isWin = (navigator.appVersion.toLowerCase().indexOf("win") != -1) ? true : false;
var isOpera = (navigator.userAgent.indexOf("Opera") != -1) ? true : false;

function ControlVersion()
{
	var version;
	var axo;
	var e;

	// NOTE : new ActiveXObject(strFoo) throws an exception if strFoo isn't in the registry

	try {
		// version will be set for 7.X or greater players
		axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.7");
		version = axo.GetVariable("$version");
	} catch (e) {
	}

	if (!version)
	{
		try {
			// version will be set for 6.X players only
			axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.6");
			
			// installed player is some revision of 6.0
			// GetVariable("$version") crashes for versions 6.0.22 through 6.0.29,
			// so we have to be careful. 
			
			// default to the first public version
			version = "WIN 6,0,21,0";

			// throws if AllowScripAccess does not exist (introduced in 6.0r47)		
			axo.AllowScriptAccess = "always";

			// safe to call for 6.0r47 or greater
			version = axo.GetVariable("$version");

		} catch (e) {
		}
	}

	if (!version)
	{
		try {
			// version will be set for 4.X or 5.X player
			axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.3");
			version = axo.GetVariable("$version");
		} catch (e) {
		}
	}

	if (!version)
	{
		try {
			// version will be set for 3.X player
			axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.3");
			version = "WIN 3,0,18,0";
		} catch (e) {
		}
	}

	if (!version)
	{
		try {
			// version will be set for 2.X player
			axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash");
			version = "WIN 2,0,0,11";
		} catch (e) {
			version = -1;
		}
	}
	
	return version;
}

// JavaScript helper required to detect Flash Player PlugIn version information
function GetSwfVer(){
	// NS/Opera version >= 3 check for Flash plugin in plugin array
	var flashVer = -1;
	
	if (navigator.plugins != null && navigator.plugins.length > 0) {
		if (navigator.plugins["Shockwave Flash 2.0"] || navigator.plugins["Shockwave Flash"]) {
			var swVer2 = navigator.plugins["Shockwave Flash 2.0"] ? " 2.0" : "";
			var flashDescription = navigator.plugins["Shockwave Flash" + swVer2].description;
			var descArray = flashDescription.split(" ");
			var tempArrayMajor = descArray[2].split(".");			
			var versionMajor = tempArrayMajor[0];
			var versionMinor = tempArrayMajor[1];
			var versionRevision = descArray[3];
			if (versionRevision == "") {
				versionRevision = descArray[4];
			}
			if (versionRevision[0] == "d") {
				versionRevision = versionRevision.substring(1);
			} else if (versionRevision[0] == "r") {
				versionRevision = versionRevision.substring(1);
				if (versionRevision.indexOf("d") > 0) {
					versionRevision = versionRevision.substring(0, versionRevision.indexOf("d"));
				}
			}
			var flashVer = versionMajor + "." + versionMinor + "." + versionRevision;
		}
	}
	// MSN/WebTV 2.6 supports Flash 4
	else if (navigator.userAgent.toLowerCase().indexOf("webtv/2.6") != -1) flashVer = 4;
	// WebTV 2.5 supports Flash 3
	else if (navigator.userAgent.toLowerCase().indexOf("webtv/2.5") != -1) flashVer = 3;
	// older WebTV supports Flash 2
	else if (navigator.userAgent.toLowerCase().indexOf("webtv") != -1) flashVer = 2;
	else if ( isIE && isWin && !isOpera ) {
		flashVer = ControlVersion();
	}	
	return flashVer;
}

// When called with reqMajorVer, reqMinorVer, reqRevision returns true if that version or greater is available
function DetectFlashVer(reqMajorVer, reqMinorVer, reqRevision)
{
	versionStr = GetSwfVer();
	if (versionStr == -1 ) {
		return false;
	} else if (versionStr != 0) {
		if(isIE && isWin && !isOpera) {
			// Given "WIN 2,0,0,11"
			tempArray         = versionStr.split(" "); 	// ["WIN", "2,0,0,11"]
			tempString        = tempArray[1];			// "2,0,0,11"
			versionArray      = tempString.split(",");	// ['2', '0', '0', '11']
		} else {
			versionArray      = versionStr.split(".");
		}
		var versionMajor      = versionArray[0];
		var versionMinor      = versionArray[1];
		var versionRevision   = versionArray[2];

        	// is the major.revision >= requested major.revision AND the minor version >= requested minor
		if (versionMajor > parseFloat(reqMajorVer)) {
			return true;
		} else if (versionMajor == parseFloat(reqMajorVer)) {
			if (versionMinor > parseFloat(reqMinorVer))
				return true;
			else if (versionMinor == parseFloat(reqMinorVer)) {
				if (versionRevision >= parseFloat(reqRevision))
					return true;
			}
		}
		return false;
	}
}

function AC_AddExtension(src, ext)
{
  if (src.indexOf('?') != -1)
    return src.replace(/\?/, ext+'?'); 
  else
    return src + ext;
}

function AC_Generateobj(objAttrs, params, embedAttrs) 
{ 
  var str = '';
  if (isIE && isWin && !isOpera)
  {
    str += '<object ';
    for (var i in objAttrs)
    {
      str += i + '="' + objAttrs[i] + '" ';
    }
    str += '>';
    for (var i in params)
    {
      str += '<param name="' + i + '" value="' + params[i] + '" /> ';
    }
    str += '</object>';
  }
  else
  {
    str += '<embed ';
    for (var i in embedAttrs)
    {
      str += i + '="' + embedAttrs[i] + '" ';
    }
    str += '> </embed>';
  }

  document.write(str);
}

function AC_FL_RunContent(){
  var ret = 
    AC_GetArgs
    (  arguments, ".swf", "movie", "clsid:d27cdb6e-ae6d-11cf-96b8-444553540000"
     , "application/x-shockwave-flash"
    );
  AC_Generateobj(ret.objAttrs, ret.params, ret.embedAttrs);
}

function AC_SW_RunContent(){
  var ret = 
    AC_GetArgs
    (  arguments, ".dcr", "src", "clsid:166B1BCA-3F9C-11CF-8075-444553540000"
     , null
    );
  AC_Generateobj(ret.objAttrs, ret.params, ret.embedAttrs);
}

function AC_GetArgs(args, ext, srcParamName, classid, mimeType){
  var ret = new Object();
  ret.embedAttrs = new Object();
  ret.params = new Object();
  ret.objAttrs = new Object();
  for (var i=0; i < args.length; i=i+2){
    var currArg = args[i].toLowerCase();    

    switch (currArg){	
      case "classid":
        break;
      case "pluginspage":
        ret.embedAttrs[args[i]] = args[i+1];
        break;
      case "src":
      case "movie":	
        args[i+1] = AC_AddExtension(args[i+1], ext);
        ret.embedAttrs["src"] = args[i+1];
        ret.params[srcParamName] = args[i+1];
        break;
      case "onafterupdate":
      case "onbeforeupdate":
      case "onblur":
      case "oncellchange":
      case "onclick":
      case "ondblClick":
      case "ondrag":
      case "ondragend":
      case "ondragenter":
      case "ondragleave":
      case "ondragover":
      case "ondrop":
      case "onfinish":
      case "onfocus":
      case "onhelp":
      case "onmousedown":
      case "onmouseup":
      case "onmouseover":
      case "onmousemove":
      case "onmouseout":
      case "onkeypress":
      case "onkeydown":
      case "onkeyup":
      case "onload":
      case "onlosecapture":
      case "onpropertychange":
      case "onreadystatechange":
      case "onrowsdelete":
      case "onrowenter":
      case "onrowexit":
      case "onrowsinserted":
      case "onstart":
      case "onscroll":
      case "onbeforeeditfocus":
      case "onactivate":
      case "onbeforedeactivate":
      case "ondeactivate":
      case "type":
      case "codebase":
      case "id":
        ret.objAttrs[args[i]] = args[i+1];
        break;
      case "width":
      case "height":
      case "align":
      case "vspace": 
      case "hspace":
      case "class":
      case "title":
      case "accesskey":
      case "name":
      case "tabindex":
        ret.embedAttrs[args[i]] = ret.objAttrs[args[i]] = args[i+1];
        break;
      default:
        ret.embedAttrs[args[i]] = ret.params[args[i]] = args[i+1];
    }
  }
  ret.objAttrs["classid"] = classid;
  if (mimeType) ret.embedAttrs["type"] = mimeType;
  return ret;
}
////////////////////////////////////////////////
////////////////////////////////////////////////
function validacampos() {
 if (document.forms.formcontato_recorrer.nome.value == '') {
	alert('Por favor informe seu nome');
	document.forms.formcontato_recorrer.nome.focus();
	return false;
 }
   if (document.forms.formcontato_recorrer.email.value == '' || document.forms.formcontato_recorrer.email.value.indexOf("@") == -1 || document.forms.formcontato_recorrer.email.value.indexOf(".") == -1) {
	alert('Por favor informe um e-mail válido');
	document.forms.formcontato_recorrer.email.focus();
	return false;
 }
 if (document.forms.formcontato_recorrer.grupo.value == '') {
	alert('Por favor informe o grupo');
	document.forms.formcontato_recorrer.grupo.focus();
	return false;
 }
 if (document.forms.formcontato_recorrer.cota.value == '') {
	alert('Por favor informe sua cota');
	document.forms.formcontato_recorrer.cota.focus();
	return false;
 }



 if (document.forms.formcontato_recorrer.cidade.value == '') {
	alert('Por favor informe sua cidade');
	document.forms.formcontato_recorrer.cidade.focus();
	return false;
 }
 if (document.forms.formcontato_recorrer.estado.value == '') {
	alert('Por favor informe seu estado');
	document.forms.formcontato_recorrer.estado.focus();
	return false;
 }
 if (document.forms.formcontato_recorrer.assunto.value == '') {
	alert('Por favor informe o assunto');
	document.forms.formcontato_recorrer.assunto.focus();
	return false;
 }
 if (document.forms.formcontato_recorrer.mensagem.value == '') {
	alert('Por favor digite uma mensagem');
	document.forms.formcontato_recorrer.mensagem.focus();
	return false;
 }

}

////
function retornaValorRadioSelecionado()//verifica os objetos radio selecionados
{
  achou = false;
  inputs = document.getElementsByTagName('input');
  for (i=0;i<inputs.length && !achou ;i++){
      if (inputs[i].type == "radio"){
        if (inputs[i].checked){
          return inputs[i].value;
        }
      }
  } 
} 

function validaForm1CentralRelacionamento() {
   if (document.formcentralrelacionamento.nome.value.length == 0) {
      alert("Por favor, informe seu nome!");
	  formcentralrelacionamento.nome.focus();
	  return false;
   }

   if(retornaValorRadioSelecionado() == 'Sim' && document.getElementById('cpf').value == ''){
    alert('Por favor, informe o CPF/CNPJ');
    return false;
   }  
   if(retornaValorRadioSelecionado() == 'Sim' && document.getElementById('grupo').value == ''){
    alert('Por favor, informe o Grupo');
    return false;
   } 
   if(retornaValorRadioSelecionado() == 'Sim' && document.getElementById('cota').value == ''){
    alert('Por favor, informe a Cota');
    return false;
   } 


   if (document.formcentralrelacionamento.cidade.value.length == 0) {
      alert("Por favor, informe sua cidade!");
	  formcentralrelacionamento.cidade.focus();
	  return false;
   }
   if (document.formcentralrelacionamento.email.value.length == 0) {
      alert("Por favor, informe seu e-mail!");
	  formcentralrelacionamento.email.focus();
	  return false;
   }
   if (document.formcentralrelacionamento.email.value.length != 0) {
      var retorno = emailCheck(document.formcentralrelacionamento.email.value);
	  if (retorno == false) {
	     formcentralrelacionamento.email.focus();
		 return false;
	  }
   }
   if (document.formcentralrelacionamento.mensagem.value.length == 0) {
      alert("Por favor, informe a mensagem!");
	  formcentralrelacionamento.mensagem.focus();
	  return false;
   }
   
   return true;
}

function F_submit () {
	var strEmail;


	if (document.formcentralrelacionamento.txtEmail.value.length == 0) {
		alert ("Campo de email não deve ser deixado em branco");
		return;
	}



	if (document.formcentralrelacionamento.txtNome.value.length == 0) {
		alert ("Campo de nome não deve ser deixado em branco");
		return;
	}



	strEmail = new String (document.formcentralrelacionamento.txtEmail.value);

	if (document.formcentralrelacionamento.txtMsg.value.length == 0) {
		alert ("Campo de mensagem não deve ser deixado em branco");
		return;
	}


	document.formcentralrelacionamento.submit ();
}
       function jaSouCliente()
       {
        var idTrCnpj = document.getElementById('idTrCnpj');
        idTrCnpj.style.display = 'block';
		idTrGrupo.style.display = 'block';
		idTrCota.style.display = 'block';
		document.getElementById('assuntocliente').value="Cliente";
       }
       function aindaNaoSouCliente()
       {
        var idTrCnpj = document.getElementById('idTrCnpj');
        idTrCnpj.style.display = 'none';
		idTrGrupo.style.display = 'none';
		idTrCota.style.display = 'none'
		document.getElementById('assuntocliente').value="Prospect";
       }        
///
