var dominio;
if (dominio=='') {
	dominio = 'http://www.santosbrasil.com.br/'
	if (window.location.href.toLowerCase().indexOf('santosbrasil_site') != - 1) {
		dominio = 'http://sbnet/santosbrasil_site/'
	} else if (window.location.href.toLowerCase().indexOf('intranet') != - 1) {
		dominio = 'http://sbnet/santos_brasil_intranet/'
	} else if (window.location.href.toLowerCase().indexOf('intrateste05') != - 1) {
		dominio = 'http://sbnet/sb_intrateste05/'
	}
}

ie4 = document.all;
ns4 = document.layers;
ns6 = (document.getElementById && !document.all);
var keynum 
var cnhclick

function avisaErroJS(e, scriptName) {
	if ($$$('logoPRINT')) return false;
	if (window.location.hash.length>1) return false;
	if ( $('#JSerr').val()==e.number+scriptName ) return false;
	
	$('#JSerr').val( e.number+scriptName );
	erroInfo = (e.number & 0xFFFF)
	erroInfo +=  '<br>Browser: '+ browser()+' '+$.browser.version;
	erroInfo +=  '<br>Pagina: '+ window.location
	erroInfo +=  '<br>Script: '+ scriptName
	erroInfo +=  '<br>Erro: '+ e.description 
	//alert('Ocorreu um erro desconhecido na página cliente.\n\nPor favor tente novamente dentro de alguns minutos.\nUm e-mail de notificação foi enviada ao responsável.\n\nCaso o erro persista, por favor entre em contato.');
	$('#getinfo').html('<span class=aviso style="font-size:20px; clear:both"><h2>Ocorreu um erro desconhecido na página cliente.</h2>- Por favor tente novamente dentro de alguns minutos.<br />Um e-mail de notificação foi enviada ao responsável.<br />Caso o erro persista, por favor entre em contato.</span>');
	$('#getinfo .aviso').append('<span class=hidewrite>'+ erroInfo +'</span>')
	$('#getinfo').show();
	
	ajaxHTML(dominio+'email.asp?erro='+erroInfo, 'getcb')
}

bloq = function(msg,form) {
	frm = form;
	if (msg) alert(msg);
	if (form) { frm.value=''; setTimeout('frm.focus()',250); }
	return false;	
}

function browser() { /////////////////////////////////////// RETORNA O BROWSER
	var brws
	if (document.all) {
		if (typeof document.body.style.maxHeight != 'undefined') {
			brws = 'ie7'
		} else {
			brws = 'ie6'
		}
	} else if (document.layers) {
		brws = 'ns4'	
	} else if (document.getElementById && !document.all){
		brws = 'ns6'
	}
	return brws
}

function limpaCampos(div) {
	$('#'+div+' input').val('')
}

function moveMouse(e){
   if(document.all){
        posx = event.clientX;
        posy = event.clientY;
   } else if (document.layers){
        posx = e.x;
        posy = e.y;
   } else {
        posx = e.clientX;
        posy = e.clientY;
   }

}

function pegaTecla(e){
  if(window.event) // IE
    keynum = window.event.keyCode;
  else if(e.keyCode) // Netscape/Firefox/Opera
    keynum = e.keyCode;
}

function $$$(strId) { ////////////////////////////////////////////////	document.getElementById
	var i, arrReturn,arrStrId;
	if(arguments.length > 1)	{
		arrStrId = new Array();
		for(i=0; i<arguments.length; i++)
		arrStrId.push(arguments[i]);
	}
	if(strId instanceof Array) arrStrId = strId;	
	if(arrStrId instanceof Array) {
		arrReturn = new Array();
		for(i=0; i<arrStrId.length; i++) arrReturn[i] = document.getElementById(arrStrId[i]);
	} else { arrReturn = document.getElementById(strId); }
	return arrReturn;
}

function $$(tg) { ////////////////////////////////////////////////	document.getElementByTagName
	return document.getElementsByTagName(tg);
}

function submete(address) {
	$$$('form1').action = address;
	$$$('form1').submit();
}

function carregaScript(script) {
	scr = document.createElement('script');
	scr.src = script;
	document.body.appendChild(scr);
}

function getElementsByClassName(strClass, strTag, objContElm) {
  strTag = strTag || "*";
  objContElm = objContElm || document;
  var objColl = objContElm.getElementsByTagName(strTag);
  if (!objColl.length &&  strTag == "*" &&  objContElm.all) objColl = objContElm.all;
  var arr = new Array();
  var delim = strClass.indexOf('|') != -1  ? '|' : ' ';
  var arrClass = strClass.split(delim);
  for (var i = 0, j = objColl.length; i < j; i++) {
    var arrObjClass = objColl[i].className.split(' ');
    if (delim == ' ' && arrClass.length > arrObjClass.length) continue;
    var c = 0;
    comparisonLoop:
    for (var k = 0, l = arrObjClass.length; k < l; k++) {
      for (var m = 0, n = arrClass.length; m < n; m++) {
        if (arrClass[m] == arrObjClass[k]) c++;
        if (( delim == '|' && c == 1) || (delim == ' ' && c == arrClass.length)) {
          arr.push(objColl[i]);
          break comparisonLoop;
        }
      }
    }
  }
  return arr;
}

function $parent(obj, nivel) { /////////////////////// PEGA O ELEMENTO PAI
	var robj = $(obj).parent();
	if (nivel) { for (var i=0; i< nivel - 1; i++) robj = $(robj).parent() }
	return robj; //$$$( $(robj).attr('id') )
}								/////////////////////// PEGA O ELEMENTO PAI

function checkatodas(form) { //checka todos os checkbox
	e = $$$('form1').elements;
//////////////////////////////////////////////////////////////////////////////////////// var form = document.forms[0].elements
	for(var i=1;i<e.length;i++){
		if(e[i].type=="checkbox"&&e[i].disabled==false) {
			//alert( $parent(form,4).attr('id')+' - '+$parent(e[i],4).attr('id') )
			if ( $parent(form,4).attr('id') == $parent(e[i],4).attr('id') ) {
//				(form.checked)? alert(1) : alert(2);
				(form.checked)? e[i].checked = true : e[i].checked = false;
			}
		}
	}
}

function roundNumber(rnum, rlength) { // Arguments: number to round, number of decimal places
  var newnumber = Math.round(rnum*Math.pow(10,rlength))/Math.pow(10,rlength);
  //document.roundform.numberfield.value = newnumber; // Output the result to the form field (change for your purposes)
  return newnumber;
}

function scrollPos() {
	if (browser().indexOf('ns')!=-1) {
		var scr = window.scrollY
	} else {
		var scr = window.document.documentElement.scrollTop + 10
	}
	return scr
}

function Set_Cookie(name,value,expires,path,domain,secure) { // CRIA COOKIE
	expires = expires * 60*60*24*1000;
	var today = new Date();
	var expires_date = new Date( today.getTime() + (expires) );
	var cookieString = name + "=" +escape(value) + 
	( (expires) ? ";expires=" + expires_date.toGMTString() : "") + 
	( (path) ? ";path=" + path : "") + 
	( (domain) ? ";domain=" + domain : "") + 
	( (secure) ? ";secure" : ""); 
	document.cookie = cookieString; 
}

function Get_Cookie(name) { //PEGA INFO DO COOKIE
	if (document.cookie.indexOf(name+'=') == -1) return false
	var start = document.cookie.indexOf(name+'='); 
	var len = start+name.length+1; 
	if ((!start) && (name != document.cookie.substring(0,name.length))) return false; 
	if (start == -1) return false; 
	var end = document.cookie.indexOf(';',len); 
	if (end == -1) end = document.cookie.length; 
	return unescape(document.cookie.substring(len,end)); 
} 

var a = 0;

Jalert = function(msg) {
	if ( $$$('mssg') ) {
		$('#mssgIn').html( msg );
		$('#mssg').slideDown();
		if ( msg.indexOf('class="btnFecha"')==-1 ) $('#mssg').delay(1500).slideUp();
		$('#mssgIn .btnFecha').bind('click',function(){ $('#mssg').slideUp(); })
	} else {
		alert(msg)
	}
	return false;
}

Jload = function(src,div,act) {
	$(div).html('<div id=\'carregando\'></div>');
	$('#carrega').fadeIn(2000);
	$('#form1 input[disabled],#form1 select[disabled],#form1 textarea[disabled]').addClass('JLdesabilitado').removeAttr("disabled");
	$.post( src, $('#form1').serialize(), function(resposta){
		$(div).html( resposta );//Tratamento dos dados de retorno
		if (act) eval(act);
		$('.JLdesabilitado').attr({ 'disabled':'disabled' }).removeClass('JLdesabilitado');
		$('#carrega').fadeOut();
	   }, 'html'); 
}

removeHTMLTags = function ( strInputCode ){
 	strInputCode = strInputCode.replace(/&(lt|gt);/g, function (strMatch, p1){
	 	return (p1 == "lt")? "<" : ">";
	});
	var strTagStrippedText = strInputCode.replace(/<\/?[^>]+(>|$)/g, "");
	return strTagStrippedText;
}

validar = function( selector ) {
	form = $( '.required' )
	if ( selector ) form = $( selector+' .required')
		
	verify=0;
	form.each( function() { 
		v = $(this).val();
		if ( v=='DD/MM/AAAA' ) v='';
		if ( v==$(this).attr('title') ) v='';
		fld = $(this).attr('name');
		//if ( $('#emailB').val()=='Seu e-mail' ) alert(  $(this).prev().get(0).tagName );
		if ( $(this).prev().get(0)&&$(this).prev().get(0).tagName.toUpperCase()=='LABEL' )
			fld = removeHTMLTags( $(this).prev().html() );

		if ( $(this).attr('title')&&$(this).attr('title')!='' ) fld = $(this).attr('title');

		if ( $(this).attr('type')=='radio' ) {
			chk=0;
			$('input[name='+$(this).attr('name')+']').each(function(){ 
				if ( $(this).attr('checked')==true )  chk=1;
			});
			if(chk==0) {
				bloq( 'Por favor selecione uma alternativa para: '+fld )
				verify=1;
				return false;
			};
		} else {
			if ( (v==''||v==null)&&$(this).parent().css('display')!='none' ) { 
				//$(this).parent().css('display')=='block'	//alert( $(this).parent().css('display') );
				bloq( 'Por favor preencha o campo: '+fld )
				verify=1;
				return false;
			}
		}
	})
	
	if ( verify==1 ) return false;
	return true 	
}

function validarequired (form) { //////////VALIDA SE OS CAMPOS REQUERIDOS ESTÃO PREENCHIDOS
	var r;
	var chk = 0;
	var chkname;
	var goVal = 1;
	if (!form) form = $$$('form1');
	for (i=0;i<form.elements.length;i++) {
		goVal = 1;
		if (form.elements[i].value == 'DD/MM/AAAA') form.elements[i].value = '';
		if (form.elements[i].value == 'HH:MM') form.elements[i].value = '';
		if ( $(form.elements[i]).css('display')=='none' ) goVal = 0;
		try { if ( $parent(form.elements[i]).css('display')=='none' ) goVal = 0; } catch(e) {}
		try { if ( $parent(form.elements[i],2).css('display')=='none' ) goVal = 0; } catch(e) {}
		try { if ( $parent(form.elements[i],3).css('display')=='none' ) goVal = 0; } catch(e) {}
		try { if ( $parent(form.elements[i],4).css('display')=='none' ) goVal = 0; } catch(e) {}
//		alert( $parent(form.elements[i]).selector+'4' )
		if ( !$( form.elements[i] ).attr('required') ) goVal = 0;
		if ( goVal==1 ) {
//			alert( $( form.elements[i] ).attr('required') )
			if (form.elements[i].type == 'radio' && form.elements[i].required) {
				if (chkname != form.elements[i].name) chk = 1;
				if (form.elements[i].checked == true) chk = 2;
				chkname = form.elements[i].name
			} // if (form1.elements[i].type == 'radio' && form.elements[i].required) {
			
			if (form.elements[i].value == 'DD/MM/AAAA') form.elements[i].value = '';
			//form.elements[i].required != ''
			if (form.elements[i].value == '' && form.elements[i].disabled == false) {
		
				alert('Por favor Preencha o campo: '+ form.elements[i].name.toUpperCase() +'.')
			
				try { form.elements[i].focus() } catch(e) {};
				return false
		
			} // if (form.elements[i].required == 1 && form.elements[i].value == '')
			//if ( $('#numeroDTA').val()!=''&&goVal==1 ) { alert( form.elements[i].name );  }
			if (!isNaN(form.elements[i].required)) {
				if (form.elements[i].value.length < form.elements[i].required) {
					alert('O campo '+ form.elements[i].name.toUpperCase() +' deve ter no mínimo '+ form.elements[i].required +' caracteres.')
					try { form.elements[i].focus() } catch(e) {};
					return false
				} //if (form.elements[i].length < form.elements[i].required + 1) 
			} //if (!isNaN(form.elements[i].required))
			
		} // if (form.elements[i]. SE O PAI ESTIVER VISIVEL
		//if ( $('#numeroDTA').val()!=''&&i>68 ) { alert( form.elements[i].name+ - +i+' - '+form.elements[i].id );  }
	} // for (i=0;i<form.elements.length;i++)
	if (chk == 1) { alert('Por favor cheque uma opção para '+ chkname.toUpperCase() +'.'); return false; };
	return true
} //XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX function validarequired

function verificacheck(tacao, div_id, _checkbox, confirma){ //SE FOI SELECIONADO AO MENOS UM CHECKBOX
	if(!_checkbox) _checkbox = 'checkbox'
	if ( !div_id ) {
		div_id='form1';
	} else {
		$('#tabelaTMP th input[type=checkbox]').not('#'+div_id+' input[type=checkbox]').each(function(){ 
			$(this).removeAttr('checked') })	
	}
	
	var c=0;
	$('#'+div_id+' input[type=checkbox]').each(function(){ if ( $(this).attr('checked') ) c=1; })
	
	if (c == 0) {
		alert('Favor selecionar ao menos um registro.');
		return false;
	};

	if(!tacao) return true;

	if ( confirma ) {	if (!window.confirm( confirma )) return false;	}
	(div_id!='form1')? ajaxHTML(tacao,div_id) : submete(tacao);

	return true;
}	//xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx			SE FOI SELECIONADO AO MENOS UM CHECKBOX

maxlen = function(theForm) { //////////////FOCUS NO PRÓXIMO CAMPO, QUANDO ATINGE O MAXLENGTH
	if (theForm.value.length == theForm.getAttribute('maxlength')) $(theForm).next().focus();
}

function MM_goToURL() { //v3.0//redireciona a página
  var i, args=MM_goToURL.arguments; document.MM_returnValue = false;
  for (i=0; i<(args.length-1); i+=2) eval(args[i]+".location='"+args[i+1]+"'");
}

/////////////////////////////// Direciona a option para a melhor posição em relação a String
function selectfilter(theForm,string) {
	filtro = string.toUpperCase() //+ String.fromCharCode(event.keyCode)
	var c = 0;
	var d = 0;
	for (i=0;i<theForm.length;i++) {
		var nomeopcao = theForm.options[i].text;
		nomeopcao = nomeopcao.slice(0,filtro.length)
		if (nomeopcao.indexOf(filtro) != -1) {
			if (d == 0) theForm.selectedIndex = i;
			d = d + 1
		}
	}
} //XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX function selectfilter(theForm,string)

function abrir(url,nome,atributos){ ///////////////////////Verifica se consegue abrir popups
	janela = window.open(url,nome,atributos);
//interceptacao de erro na abertura da janela
	text = "Esta página está tentando abrir um pop-up da SANTOS BRASIL S/A sem sucesso em seu browser.\nInformações importantes podem não estar sendo disponibilizadas e/ou o sistema não pode dar prosseguimento.\nÉ possível que você tenha um programa bloqueador de pop-ups.\n\nObservação: O windows XP service pack 2 bloqueia pop-ups!";
	if(janela == null) { alert(text); return; }
} //////////////////////////////////////////////////////////////function abrir

function ehCNTR (cntr) { ////////////////////////////VERIFICA SE O NÚMERO DE CNTR EH VALIDO
	if (!cntr) return false;
	cntr = cntr.toUpperCase()
	try {
		var intT = 0
		var intY = 0
		var strC = cntr.substr(0, 10)
		for (var intX = 0; intX < 4; intX++) {
			var strAA = strC.substring(intX, intX + 1)
			var intB = strAA.charCodeAt(0)
			intY = intB - 64
			var intG = Math.pow(2,intX)//(intX - 1) * (intX - 1)
			if (intY == 1) {
				intT = ((intY + 9) * intG) + intT
			} else if (intY <= 11) {
				intT = ((intY + 10) * intG) + intT
			} else if (intY <= 21) {
				intT = ((intY + 11) * intG) + intT
			} else if (intY > 21) {
				intT = ((intY + 12) * intG) + intT
			}
			intY = 0
		}
	
		for (var intX = 0; intX < 11; intX++) {
			var intG = Math.pow(2,intX)
			if (!isNaN(strC.substring(intX,intX+1))) intT=(strC.substring(intX,intX+1)*intG)+intT
		}
		var sigDP = intT / 11
		var intI  = parseInt(sigDP)
		var intQ = intI * 11
		var intRP = intT - intQ
		if (intRP > 9) intRP = 0
		if (cntr.substr(cntr.length - 1,cntr.length) != intRP) {
			if(!window.confirm('Dígito verificador de container não confere.\ndeseja continuar?')) return false;
		}
	} catch(e) {
		
	}
	return true
}////////////////XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXx function ehCNTR

function ehdata(theForm,maxDifDias, maxDifDias_){ /////////////////////Verifica se o campo é data
	if (theForm.value.length == '') return false;
	if (theForm.value == 'DD/MM/AAAA') return false;
	
	data = theForm.value
	data = data.replace(',','');
	data = data.replace(';','');
	data = data.replace(':','');
	data = data.replace('/','');
	data = data.replace('/','');
	data = data.replace('.','');
	data = data.replace('.','');
	
	if (isNaN(data)) {
		alert('Data inválida');
		theForm.value = '';
		theForm.focus();
		return false;
	}
	
	d = theForm.value.split('/')
	
	if (d.length == 3) {
		if (d[0].length == 1) d[0] = '0'+ d[0]
		if (d[1].length == 1) d[1] = '0'+ d[1]
		if (d[2].length == 2) d[2] = '20'+ d[2]
		
		data = d[0] + d[1] + d[2]
	}
	
	data = data.replace('.','');
	data = data.replace('.','');
		
	if (data.length != 8) {
		alert ('Por favor preencha conforme solicitado: DD/MM/AAAA')
		theForm.value = '';
		theForm.focus();
		return false;
	}
	
	if (data.substring(0,2) > 31 || data.substring(0,2) == '00') {
		alert ('O valor para dia não é válido.')
		theForm.value = '';
		theForm.focus();
		return false;
	}
	
	if (data.substring(2,4) > 12 || data.substring(2,4) == '00') {
		alert ('O valor para mês não é válido.')
		theForm.value = '';
		theForm.focus();
		return false;
	}
	
	if (data.substring(2,4) == 04 || data.substring(2,4) == 06 || data.substring(2,4) == 09 || data.substring(2,4) == 11) {
	
	if (data.substring(0,2) > 30) {
		alert ('O valor para dia não é válido.\nÚltimo dia para o mês requerido é 30.')
		theForm.value = '';
		theForm.focus();
		return false;
	}
	
	}
	
	if (data.substring(2,4) == 02) {
		var bissexto = 28;
		if (data.substring(4,8) % 4 == 0) bissexto = 29;
		
		if (data.substring(0,2) > bissexto) {
			alert ('O valor para dia não é válido.\nÚltimo dia para o mês requerido é '+ bissexto +'.')
			theForm.value = '';
			theForm.focus();
			return false;
		}
	}
	
	if (data.substring(4,8) < 1000)  {
		alert ('O valor para ano não é válido.')
		theForm.value = '';
		theForm.focus();
		return false;
	}
	if ( maxDifDias || maxDifDias_)  {
		try {
			hoje=new Date((parseInt($$$('diaServidor').value)+1)+' '+namemes[$$$('mesServidor').value-1]+' '+$$$('anoServidor').value);
		} catch(e) { hoje = new Date(); }
		
		data_ref = new Date(data.substring(4,8), data.substring(2,4) - 1, data.substring(0,2), 23, 59);
//		
		segundos = Math.round((data_ref - hoje) / 1000);
		mins  = Math.round(segundos        / 60)  ;
		hors    = Math.round(mins         / 60)  ;
		dias     = Math.round(hors           / 24)  ;
		//Math.abs(dias)
		if ( ( Math.abs(dias)>maxDifDias ) ) {
			if (dias > maxDifDias) {
				var msg = 'A data não é válida; a data deve ser menor que a digitada. Intervalo Máximo de ('+ maxDifDias +') dias'
				if (maxDifDias==0) msg='Data deve ser menor que a atual.';		
			} else {
				var msg = 'A data não é válida; a data deve ser maior que a digitada. Intervalo Máximo de ('+ maxDifDias +') dias'
				if (maxDifDias==0) msg='Data deve ser maior que a atual.';
			}
			alert (msg)
			theForm.value = '';
			theForm.focus();
			return false;
		}
	}
	data = data.substring(0,2) + '/' + data.substring(2,4) + '/' + data.substring(4,8)
	theForm.value = data;
	return true;
}//XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX	Verifica se o campo é data

function ehdata2(theForm){ ////////////////////////////////////////////////////////	Verifica se o campo é data em mes e ano
	if (theForm.value.length == '') return false;
	data = theForm.value
	data = data.replace('/','')
	if (data.length != 6) {
		alert ('Por favor preencha no formato solicitado: MM/AAAA')
		theForm.value = '';
		return false;
	}

	if (isNaN(data)) {
		alert('Data inválida');
		theForm.value = '';
		return false;
	}

	if (data.substring(0,2) > 12 || data.substring(0,2) == '00') {
		alert ('O valor para mês não é válido.')
		theForm.value = '';
		return false;
	}

	if (data.substring(2,6) < 1000)  {
		alert ('O valor para ano não é válido.')
		theForm.value = '';
		return false;

	}
	data = data.substring(0,2) + '/' + data.substring(2,6)
	theForm.value = data;
	return true
}	//XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX	Verifica se o campo é data em mes e ano

function ehnumero(theForm, min_){ //////////////////////////////	Verifica se o campo é formado por apenas números absolutos
	if (theForm.value == '') return false;
	theForm.value = theForm.value.replace(/ /g,'');
	theForm.value = theForm.value.replace('.','');
	theForm.value = theForm.value.replace('.','');
	if (min_) {
		if (theForm.value < min_) {
			alert('O valor não pode ser inferior a '+ min_);
			theForm.value = '';
			theForm.focus();
			return false } 
		}
		var nonNumbers = /\D/;
		if (nonNumbers.test(theForm.value)){
		alert("Este campo suporta apenas numeros!")
		theForm.value = '';
		theForm.focus();
		return false
	}
	return true
}	//XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX	Verifica se o campo é formado por apenas números absolutos

function ehnumero2(theForm,maxlen,trocaposicao,troca, min_){ ////////////////////////////	Verifica se o campo é numérico
	if (theForm.value.length == '') return false;
	if (min_) {
		if (theForm.value < min_) {
			alert('O valor não pode ser inferior a '+ min_);
			theForm.value = '';
			theForm.focus();
			return false 
		} 
	}
	theForm.value = theForm.value.replace(':','');
	theForm.value = theForm.value.replace('.',',');
	theForm.value = theForm.value.replace('.',',');
	if (theForm.value.indexOf(",")) f=theForm.value.split(',');
	
	if (isNaN(f[0])){
		theForm.value = '';
		alert("Este campo suporta apenas numeros!")
		return false;
	}
	
	cents = ',00'
	if (f.length > 2) {
		var fm='';
		for (var i=0; i<f.length-1; i++) fm = fm+f[i];
		theForm.value = fm+','+f[f.length-1];
		f=theForm.value.split(',');
	} 
	
	if (f.length == 2) {
		if (isNaN(f[1])){
			theForm.value = '';
			alert("Este campo suporta apenas numeros!")
			return false;
		}
		if (f[1].length == 1) f[1] = f[1]+'0';
		if (f[1].length > 2) f[1] = f[1].slice(0,2);
		cents = ','+ f[1]
	}

	var campo = theForm.value

	campo = f[0]
	campo = campo.replace('.','')
	campo = campo.replace(' ','')

	if (troca == ':') {
		campo = campo.replace(troca,'')
		if (campo.length == 2) campo=campo+'00';
		if (campo.length != 4) { alert('Favor preencher: HH:MM'); theForm.value = ''; return false }
		if (eval(campo.slice(2,4))>59) {
			alert('O valor deste campo está inválido.')
			theForm.value = '';
			return false;			
		}
		if (eval(campo.slice(0,2))>23) {
			alert('O valor deste campo está inválido.')
			theForm.value = '';
			return false;			
		}
		cents = ':'+ campo.slice(2,4)
		campo = campo.slice(0,2) 
	}
	
	if (!isNaN(maxlen) && maxlen != '') {
		var c = theForm.value;
		if(c.indexOf(",") != -1) c = c.slice(0,c.indexOf(","));
		if (c.length > maxlen) {
			theForm.value = '';
			alert('O valor deste campo está acima do permitido.')
			return false;
		}
	}
	theForm.value = campo+cents;
	theForm.value = theForm.value.replace(',','.');
	return true;
}

function showElms(elms) {
	for(var i=0;i<elms.length;i++){ elms[i].style.visibility = 'visible'; }
}

function hideElms(elms) {
	for(var i=0;i<elms.length;i++){ elms[i].style.visibility = 'hidden'; }
}

function checamail(form) { /////////////////////////////////////Verifica se é e-mail válido
	if (!form.value) return false;
	
	form.value = form.value.replace(/'/g,"");
	var  erro = 0;
	prim = form.value.indexOf("@")
	
	if(prim < 2) erro = 1
	
	if(form.value.indexOf("@",prim + 1) != -1) erro = 1
	
	if(form.value.indexOf(".") < 1) erro = 1
	
	if(form.value.indexOf(".", form.value.indexOf("@")) < 1) erro = 1
	
	if(form.value.indexOf(" ") != -1) erro = 1
	
	if(form.value.indexOf("zipmeil.com") > 0) erro = 1
	
	if(form.value.indexOf("hotmeil.com") > 0) erro = 1
	
	if(form.value.indexOf("htmail.com") > 0) erro = 1
	
	if(form.value.indexOf("hotmal.com") > 0) erro = 1
	
	if(form.value.lastIndexOf('.') == form.value.length - 1) erro = 1
	
	if(form.value.indexOf(".@") > 0) erro = 1
	
	if(form.value.indexOf("@.") > 0) erro = 1
	
	if(form.value.indexOf(".com.br.") > 0) erro = 1
	
	if(form.value.indexOf("/") > 0) erro = 1
	
	if(form.value.indexOf("[") > 0) erro = 1
	
	if(form.value.indexOf("]") > 0) erro = 1
	
	if(form.value.indexOf("(") > 0) erro = 1
	
	if(form.value.indexOf(")") > 0) erro = 1
	
	if(form.value.indexOf("..") > 0) erro = 1
	
	if(form.value.indexOf("ç") > 0) erro = 1
	
	if(form.value.indexOf("Ç") > 0) erro = 1
	
	if (erro != 0) {
		bloq("O e-mail informado parece não estar correto.", form);
		return false;
	}
	return true;
}

function ehcnpj(theForm,modo){ ///////////////////////////////////Verifica se é cnpj válido
	if (!validacnpj(theForm.value)) {
		theForm.value = '';
		return false
	} else {
		if (modo == 1) theForm.value = formatacnpj(theForm.value);
	}
	return true
}

function validacnpj(CNPJ,avisa) { ///////////////////substituir os caracteres que nao sao numeros
	CNPJ = CNPJ.replace(".","");
	CNPJ = CNPJ.replace(".","");
	CNPJ = CNPJ.replace("-","");
	CNPJ = CNPJ.replace("/","");
	CNPJ = CNPJ.replace(/ /g,"");
	CNPJ = CNPJ.replace(/'/g,"");
	
	if(CNPJ == '') return false;
	
	if(isNaN(CNPJ)) {
		if (avisa!=1) alert('Este campo suporta apenas números!');
		return false;
	}
	
	if (CNPJ.length != 14) {
		if (avisa!=1) alert('O CNPJ deve ter 14 caracteres numéricos.');
		return false; 
	}
	
	if (CNPJ == 0) {
		if (avisa!=1) alert('O CNPJ não é válido.');
		return false; 
	}
	
	var a = [];
	var b = new Number;
	var c = [6,5,4,3,2,9,8,7,6,5,4,3,2];
	
	for(i=0; i<12; i++) {
		a[i] = CNPJ.charAt(i);
		b += a[i] * c[i+1];
	}
	
	((x = b % 11) < 2)? a[12]=0 : a[12]=11-x;
	
	b = 0;
	for(y=0; y<13; y++) b += (a[y] * c[y]);
	
	((x = b % 11) < 2)? a[13]=0 : a[13]=11-x;
	
	if ((CNPJ.charAt(12) != a[12]) || (CNPJ.charAt(13) != a[13])) {
		if (avisa!=1) alert('Digito verificador com problema!'); 
		return false;
	}
	
	return true;
}

function formatacnpj(CNPJ){
	CNPJ = CNPJ.replace(".","");
	CNPJ = CNPJ.replace(".","");
	CNPJ = CNPJ.replace("-","");
	CNPJ = CNPJ.replace("/","");
	CNPJ = CNPJ.replace(" ","");
	CNPJ = CNPJ.replace(" ","");
	
	a = CNPJ;
	//alert (a)
	if ((a != '') && (a.length >=14)) {
		if ((a.slice(2,3) != '.') && (a.slice(6,7) != '.') && (a.slice(10,11) != '/') && (a.slice(15,16) != '-')) {
			b = a.slice(0,2) + '.' + a.slice(2,5) + '.' + a.slice(5,8) + '/' + a.slice(8,12) + '-' + a.slice(12,14); }
			
		if ((a.slice(2,3) == '.') && (a.slice(6,7) != '.') && (a.slice(10,11) != '/') && (a.slice(15,16) != '-')) {
			b = a.slice(0,3) + a.slice(3,6) + '.' + a.slice(6,9) + '/' + a.slice(9,13) + '-' + a.slice(13,15);	}

		if ((a.slice(2,3) == '.') && (a.slice(6,7) == '.') && (a.slice(10,11) != '/') && (a.slice(15,16) != '-')) {
			b = a.slice(0,3) + a.slice(3,7) + a.slice(7,10) + '/' + a.slice(10,14) + '-' + a.slice(14,16);	}

		if ((a.slice(2,3) == '.') && (a.slice(6,7) == '.') && (a.slice(10,11) == '/') && (a.slice(15,16) != '-')) {
			b = a.slice(0,3) + a.slice(3,7) + a.slice(7,10) + a.slice(11,15) + '-' + a.slice(15,17);	}

		if ((a.slice(2,3) != '.') && (a.slice(6,7) == '.') && (a.slice(10,11) == '/') && (a.slice(15,16) == '-')) {
			b = a.slice(0,2) + '.' + a.slice(3,7) + a.slice(7,10) + a.slice(10,14) + a.slice(14,18); }

		if ((a.slice(2,3) == '.') && (a.slice(6,7) == '.') && (a.slice(10,11) == '/') && (a.slice(15,16) == '-')) {
			b = a.slice(0,3) + a.slice(3,7) + a.slice(7,10) + a.slice(10,14) + a.slice(14,18)	}
	}
	
	return b;
}

//Verifica se é CPF válido
function ehcpf(theForm,modo){
	if (!theForm.value) return false;
	if (!validacpf(theForm.value)) {
		theForm.value = '';
		return false;
	} else {
		if (modo == 1) theForm.value = formatacpf(theForm.value);
	}
	return true
}

function formatacpf(cpf) {
	cpf = cpf.replace(".","");
	cpf = cpf.replace(".","");
	cpf = cpf.replace(".","");
	cpf = cpf.replace("-","");
	cpf = cpf.replace("/","");
	cpf = cpf.replace(" ","");
	cpf = cpf.replace(" ","");
	
	cpf = cpf.slice(0,3) + '.' + cpf.slice(3,6) + '.' + cpf.slice(6,9) + '-' + cpf.slice(9,11);
	
	return cpf;
}

function validacpf(cpf,avisa) {
	cpf = cpf.replace(".","");
	cpf = cpf.replace(".","");
	cpf = cpf.replace(".","");
	cpf = cpf.replace("-","");
	cpf = cpf.replace("/","");
	cpf = cpf.replace(" ","");
	cpf = cpf.replace(" ","");
	if (cpf.length != 11) {
		if (avisa!=1) alert('Sao necessarios 11 digitos para verificacao do CPF!')
		return false;
	}
 
	if (isNaN(cpf)) {
		if (avisa!=1) alert('A verificacao de CPF suporta apenas numeros!')
		return false;
	}
	if (cpf == "00000000000" || cpf == "11111111111" || cpf == "22222222222" || cpf == "33333333333" || cpf == "44444444444" || cpf == "55555555555" || cpf == "66666666666" || cpf == "77777777777" || cpf == "88888888888" || cpf == "99999999999"){
		if (avisa!=1) alert('Numero de CPF invalido!')
		return false;
	}

	var a = [];
	var b = new Number;
	var c = 11;

	for (i=0; i<11; i++){
		a[i] = cpf.charAt(i);
		if (i < 9) b += (a[i] *  --c);
	}

	if ((x = b % 11) < 2) { a[9] = 0 } else { a[9] = 11-x };
	b = 0;
	c = 11;

	for (y=0; y<10; y++) b += (a[y] *  c--); 
	if ((x = b % 11) < 2) { a[10] = 0; } else { a[10] = 11-x; };

	if ((cpf.charAt(9) != a[9]) || (cpf.charAt(10) != a[10])){
		if (avisa!=1) alert('Digito verificador com problema!')
		return false;
	}

	return true;
}

function validalog(pagina) {
	if (!$$$('login').value || !$$$('senha').value) {
		alert('Os campos login e senha não podem estar vazios.')
		return false
	}
	submete(pagina);
}

function swapBcor(obj) {
	Ocor = obj.style.backgroundColor
	
	//$('#rodape').html( $(obj).css('background-color') )
	
	obj.style.backgroundColor = '#dee'
	
	obj.onmouseout = function() {
		obj.style.backgroundColor = Ocor
	}
}

document.onmousemove = moveMouse;
document.onkeydown   = pegaTecla;
