function validavirgula(field) {
	var valid = "0123456789,"
	var ok = true;
	var temp;
	var virgula = 0;
	for (var i=0; i<field.value.length; i++) {
		temp = "" + field.value.substring(i, i+1);
		if (temp == ',') virgula += 1;
		if (virgula > 1) valid = "0123456789";
		ok = (valid.indexOf(temp) == "-1");		
	}
	if (ok) {
	field.value = field.value.substring(0, field.value.length-1);
	field.focus();
   }
}
function limita(field,validos) {
	var valid = "" + validos
	final = ""
	var temp;
	for (var i=0; i<field.value.length; i++) {
		temp = "" + field.value.substring(i, i+1);
		if (valid.indexOf(temp) != "-1") final = final + temp;
	}
	field.value = final
}

function valdecimais(field) {
	var valid = "0123456789,"
	valor = field.value.replace(".", ",");
	var ok = true;
	var temp;
	var final = "";
	var virgula = 0;
	for (var i=0; i<valor.length; i++) {
		temp = "" + valor.substring(i, i+1);
		if (temp == ',') virgula += 1;
		if (virgula > 1) valid = "0123456789";
		if (valid.indexOf(temp) != "-1") final += temp;	
	}
	if (field.value != final) {
		field.value = final;
	}
}

function valformatamarcado(campo) {
	campo.style.border="#ff0000 solid 1px";
}
function valformatanormal(campo) {
	campo.style.border="1px solid #CCCCCC";
}

function valtexto(campo) {
	valformatanormal(campo);
	if (campo.value == ""){
		valformatamarcado(campo);
		campo.focus();
		return 1;
	}
}
function valselect(campo) {
	valformatanormal(campo);
	if (campo.selectedIndex == 0){
		valformatamarcado(campo);
		campo.focus();
		return 1;
	}
}
function valemail(campo) {
	valformatanormal(campo);
	var mail=campo.value;
    apos=mail.indexOf("@");
	dotpos=mail.lastIndexOf(".");
	if (apos<1||dotpos-apos<2) {
		valformatamarcado(campo);

		campo.focus();
		return 1;
	}
}
function valradio(campo) {
	for (var x=campo.length-1; x > -1; x--) {
			valformatanormal(campo[x]);
    }
    var cnt = -1;
    for (var i=campo.length-1; i > -1; i--) {
        if (campo[i].checked) {cnt = i; i = -1;}
    }
    if (cnt > -1) {
		return 0;
	}
    else {
		for (var v=campo.length-1; v > -1; v--) {
			valformatamarcado(campo[v]);
    	}
		return 1;
	}
}
function valnumero(campo) {
	valformatanormal(campo);
	var i;
	valor = 0
 for (i = 0; i < campo.value.length; i++){ 
 var c = campo.value.charAt(i);
 if (((c < "0") || (c > "9"))) valor = 1;
 }
	if (valor == 0){
		valformatamarcado(campo);
		campo.focus();
		return 1;
	}
}

function valselectmult(campo) {
	valformatanormal(campo);
	for (var i = 0; i < campo.options.length; i++) {
		if (campo.options[i].selected) {
			return 
		}
	}
		valformatamarcado(campo);
	campo.focus();
	return 1;
}

function valcheckboxmulti(campo) {
	valformatanormal(campo);
	for (var i = 0; i < campo.options.length; i++) {
		if (campo.options[i].checked) {
			return 
		}
	}
	valformatamarcado(campo);
	campo.focus();
	return 1;
}


var dtCh= "/";
var minYear=1900;
var maxYear=2100;

function isInteger(s){
	var i;
 for (i = 0; i < s.length; i++){ 
 // Check that current character is number.
 var c = s.charAt(i);
 if (((c < "0") || (c > "9"))) return false;
 }
 // All characters are numbers.
 return true;
}

function stripCharsInBag(s, bag){
	var i;
 var returnString = "";
 // Search through string's characters one by one.
 // If character is not in bag, append to returnString.
 for (i = 0; i < s.length; i++){ 
 var c = s.charAt(i);
 if (bag.indexOf(c) == -1) returnString += c;
 }
 return returnString;
}

function daysInFebruary (year){
	// February has 29 days in any year evenly divisible by four,
 // EXCEPT for centurial years which are not also divisible by 400.
 return (((year % 4 == 0) && ( (!(year % 100 == 0)) || (year % 400 == 0))) ? 29 : 28 );
}
function DaysArray(n) {
	for (var i = 1; i <= n; i++) {
		this[i] = 31
		if (i==4 || i==6 || i==9 || i==11) {this[i] = 30}
		if (i==2) {this[i] = 29}
 } 
 return this
}

function valhora(campo){
	valformatanormal(campo);	
	horario = campo.value.split(':')
	if (horario.length == 2) {
	tamanho = horario[0].length
	tamanho2 = horario[1].length
	hora = Number(horario[0])
	minuto = Number(horario[1])
	
		if (tamanho < 2 && tamanho != 0) {
			campo.value = '0' + campo.value
			horario = campo.value.split(':')
			tamanho = horario[0].length
			tamanho2 = horario[1].length
			hora = Number(horario[0])
			minuto = Number(horario[1])
		}

		if (tamanho == 2 && tamanho2 == 2) {
			if (hora >= 0 && hora <= 23 && minuto >= 0 && minuto <= 59){
				return	
			}		
		}
	}
/*	if (horario.length > 1){
		if (Number(horario[0]) >= 0 && Number(horario[0]) <= 23){
			if (Number(horario[1]) >= 0 && Number(horario[1]) <= 59) {
				return; 
			}
		}
	}
}*/
	valformatamarcado(campo);
	campo.focus();
	return 1;	
}

function valdata(campo){
	valformatanormal(campo);
	var dtStr = campo.value
	var daysInMonth = DaysArray(12)
	var pos1=dtStr.indexOf(dtCh)
	var pos2=dtStr.indexOf(dtCh,pos1+1)
	var strDay=dtStr.substring(0,pos1)
	var strMonth=dtStr.substring(pos1+1,pos2)
	var strYear=dtStr.substring(pos2+1)
	strYr=strYear
	if (strDay.charAt(0)=="0" && strDay.length>1) strDay=strDay.substring(1)
	if (strMonth.charAt(0)=="0" && strMonth.length>1) strMonth=strMonth.substring(1)
	for (var i = 1; i <= 3; i++) {
		if (strYr.charAt(0)=="0" && strYr.length>1) strYr=strYr.substring(1)
	}
	month=parseInt(strMonth)
	day=parseInt(strDay)
	year=parseInt(strYr)
	if (pos1==-1 || pos2==-1){
		valformatamarcado(campo);
		campo.focus();
		return 1;
	}
	if (strMonth.length<1 || month<1 || month>12){
		valformatamarcado(campo);
		campo.focus();
		return 1;
	}
	if (strDay.length<1 || day<1 || day>31 || (month==2 && day>daysInFebruary(year)) || day > daysInMonth[month]){
		valformatamarcado(campo);alert("Data inválida");
		campo.focus();
		return 1;
	}
	if (strYear.length != 4 || year==0 || year<minYear || year>maxYear){
		valformatamarcado(campo);alert("Data inválida");
		campo.focus();
		return 1;
	}
	if (dtStr.indexOf(dtCh,pos2+1)!=-1 || isInteger(stripCharsInBag(dtStr, dtCh))==false){
		valformatamarcado(campo);
		campo.focus();
		return 1;
	}
}


addEvent = function(o, e, f, s){
	var r = o[r = "_" + (e = "on" + e)] = o[r] || (o[e] ? [[o[e], o]] : []), a, c, d;
	r[r.length] = [f, s || o], o[e] = function(e){
		try{
			(e = e || event).preventDefault || (e.preventDefault = function(){e.returnValue = false;});
			e.stopPropagation || (e.stopPropagation = function(){e.cancelBubble = true;});
			e.target || (e.target = e.srcElement || null);
			e.key = (e.which + 1 || e.keyCode + 1) - 1 || 0;
		}catch(f){}
		for(d = 1, f = r.length; f; r[--f] && (a = r[f][0], o = r[f][1], a.call ? c = a.call(o, e) : (o._ = a, c = o._(e), o._ = null), d &= c !== false));
		return e = null, !!d;
    }
};

removeEvent = function(o, e, f, s){
	for(var i = (e = o["_on" + e] || []).length; i;)
		if(e[--i] && e[i][0] == f && (s || o) == e[i][1])
			return delete e[i];
	return false;
};

MaskInput = function(f, m){
    function mask(e){
        var patterns = {"1": /[A-Z]/i, "2": /[0-9]/, "4": /[\xC0-\xFF]/i, "8": /./ },
            rules = { "a": 3, "A": 7, "9": 2, "C":5, "c": 1, "*": 8};
        function accept(c, rule){
            for(var i = 1, r = rules[rule] || 0; i <= r; i<<=1)
                if(r & i && patterns[i].test(c))
                    break;
                return i <= r || c == rule;
        }
        var k, mC, r, c = String.fromCharCode(k = e.key), l = f.value.length;
        (!k || k == 8 ? 1 : (r = /^(.)\^(.*)$/.exec(m)) && (r[0] = r[2].indexOf(c) + 1) + 1 ?
            r[1] == "O" ? r[0] : r[1] == "E" ? !r[0] : accept(c, r[1]) || r[0]
            : (l = (f.value += m.substr(l, (r = /[A|9|C|\*]/i.exec(m.substr(l))) ?
            r.index : l)).length) < m.length && accept(c, m.charAt(l))) || e.preventDefault();
    }
	//alert(f)
    for(var i in !/^(.)\^(.*)$/.test(m) && (f.maxLength = m.length), {keypress: 0, keyup: 1})
        addEvent(f, i, mask);

};

function valdatapassada(campo) {
	valformatanormal(campo);
	data = campo.value
	datavalores = data.split("/")
	ano = parseFloat(datavalores[2])
	mes = parseFloat(datavalores[1]) - 1
	dia = parseFloat(datavalores[0])
	
	var myDate=new Date();
	myDate.setFullYear(ano,mes,dia);
	var today = new Date();
	
	//alert(data)
	if (myDate<today) {
		valformatamarcado(campo);
		alert("A data da 1ª parcela não pode ser anterior a hoje.");
		campo.focus();
		return 1;
	}

}
function createXMLHTTP() {
	var ajax;
	try {
		ajax = new ActiveXObject("Microsoft.XMLHTTP");
	} 
	catch(e) {
		try {
			ajax = new ActiveXObject("Msxml2.XMLHTTP");
			alert(ajax);
		}
		catch(ex) {
			try {
				ajax = new XMLHttpRequest();
			}
			catch(exc) {
				 alert("Esse browser não tem recursos para uso do Ajax");
				 ajax = null;
			}
		}
		return ajax;
	}
	
	var arrSignatures = ["MSXML2.XMLHTTP.5.0", "MSXML2.XMLHTTP.4.0", "MSXML2.XMLHTTP.3.0", "MSXML2.XMLHTTP", "Microsoft.XMLHTTP"];
	for (var i=0; i < arrSignatures.length; i++) {
		try {
			var oRequest = new ActiveXObject(arrSignatures[i]);
			return oRequest;
		} 
		catch (oError) {}
	}
	throw new Error("MSXML is not installed on your system.");
}
function createXMLHTTP() {
	var ajax;
	try {
		ajax = new ActiveXObject("Microsoft.XMLHTTP");
	} 
	catch(e) {
		try {
			ajax = new ActiveXObject("Msxml2.XMLHTTP");
			alert(ajax);
		}
		catch(ex) {
			try {
				ajax = new XMLHttpRequest();
			}
			catch(exc) {
				 alert("Esse browser não tem recursos para uso do Ajax");
				 ajax = null;
			}
		}
		return ajax;
	}
	
	var arrSignatures = ["MSXML2.XMLHTTP.5.0", "MSXML2.XMLHTTP.4.0", "MSXML2.XMLHTTP.3.0", "MSXML2.XMLHTTP", "Microsoft.XMLHTTP"];
	for (var i=0; i < arrSignatures.length; i++) {
		try {
			var oRequest = new ActiveXObject(arrSignatures[i]);
			return oRequest;
		} 
		catch (oError) {}
	}
	throw new Error("MSXML is not installed on your system.");
}

function enche_subarea(opcao) {
	var ajax = createXMLHTTP();
	ajax.open("post", "ajax_subarea.asp", true);
	ajax.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
	ajax.onreadystatechange=function() {
		if (ajax.readyState<4){	   		
			document.getElementById('combo_subarea').innerHTML = "Carregando..."
		}
		if (ajax.readyState==4){	   		
			document.getElementById('combo_subarea').innerHTML = ajax.responseText
		}
	}
		ajax.send("cod=" + opcao);
	if (opcao == "") {
		enche_categoria("")	
	}
}
function enche_categoria(opcao) {
	var ajax = createXMLHTTP();
	ajax.open("post", "ajax_categoria.asp", true);
	ajax.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
	ajax.onreadystatechange=function() {
		if (ajax.readyState<4){	   		
			document.getElementById('combo_categoria').innerHTML = "Carregando..."
		}
		if (ajax.readyState==4){	   		
			document.getElementById('combo_categoria').innerHTML = ajax.responseText
		}
	}
	ajax.send("cod=" + opcao);
}
function areatitulacao(opcao) {
	var ajax2 = createXMLHTTP();
	ajax2.open("post", "ajax_areatitulacao.asp", true);
	ajax2.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
	ajax2.onreadystatechange=function() {
		if (ajax2.readyState<4){	   		
			document.getElementById('combo_areatitulacao').innerHTML = "Carregando..."
		}
		if (ajax2.readyState==4){	   		
			document.getElementById('combo_areatitulacao').innerHTML = ajax2.responseText
		}
	}
	ajax2.send("cod=" + opcao);
}
function certificacao(opcao) {
	var ajax = createXMLHTTP();
	ajax.open("post", "ajax_certificacao.asp", true);
	ajax.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
	ajax.onreadystatechange=function() {
		if (ajax.readyState<4){	   		
			document.getElementById('combo_certificacao').innerHTML = "Carregando..."
		}
		if (ajax.readyState==4){	   		
			document.getElementById('combo_certificacao').innerHTML = ajax.responseText
		}
	}
	ajax.send("cod=" + opcao);
}
function experiencia(opcao) {
	var ajax = createXMLHTTP();
	ajax.open("post", "ajax_experiencia_profissional.asp", true);
	ajax.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
	ajax.onreadystatechange=function() {
		if (ajax.readyState<4){	   		
			document.getElementById('combo_experiencia').innerHTML = "Carregando..."
		}
		if (ajax.readyState==4){	   		
			document.getElementById('combo_experiencia').innerHTML = ajax.responseText
		}
	}
	ajax.send("cod=" + opcao);
}
function Nivel(opcao) {
	var ajax = createXMLHTTP();
	ajax.open("post", "ajax_nivel.asp", true);
	ajax.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
	ajax.onreadystatechange=function() {
		if (ajax.readyState<4){	   		
			document.getElementById('combo_nivel').innerHTML = "Carregando..."
		}
		if (ajax.readyState==4){	   		
			document.getElementById('combo_nivel').innerHTML = ajax.responseText
		}
	}
	ajax.send("cod=" + opcao);
}
function estado(opcao) {
	var ajax = createXMLHTTP();
	ajax.open("post", "ajax_estado.asp", true);
	ajax.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
	ajax.onreadystatechange=function() {
		if (ajax.readyState<4){	   		
			document.getElementById('combo').innerHTML = "Carregando..."
		}
		if (ajax.readyState==4){	   		
			document.getElementById('combo').innerHTML = ajax.responseText
		}
	}
	ajax.send("cod=" + opcao);
}
function cidades(opcao) {
	var ajax = createXMLHTTP();
	ajax.open("post", "ajax_cidade.asp", true);
	ajax.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
	ajax.onreadystatechange=function() {
		if (ajax.readyState<4){	   		
			document.getElementById('combo_cid').innerHTML = "Carregando..."
		}
		if (ajax.readyState==4){	   		
			document.getElementById('combo_cid').innerHTML = ajax.responseText
		}
	}
	ajax.send("cod=" + opcao);
}

function atividade(opcao) {
	var ajax = createXMLHTTP();
	ajax.open("post", "ajax_atividade.asp", true);
	ajax.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
	ajax.onreadystatechange=function() {
		if (ajax.readyState<4){	   		
			document.getElementById('combo_ativi').innerHTML = "Carregando..."
		}
		if (ajax.readyState==4){	   		
			document.getElementById('combo_ativi').innerHTML = ajax.responseText
		}
	}
	ajax.send("cod=" + opcao);
}
function estado_mural(opcao) {
	var ajax = createXMLHTTP();
	ajax.open("post", "ajax_estado_oport.asp", true);
	ajax.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
	ajax.onreadystatechange=function() {
		if (ajax.readyState<4){	   		
			document.getElementById('combo').innerHTML = "Carregando..."
		}
		if (ajax.readyState==4){	   		
			document.getElementById('combo').innerHTML = ajax.responseText
		}
	}
	ajax.send("cod=" + opcao);
}
function alternar(economia){
        estado = document.getElementById(economia).style.display
		document.getElementById(economia).style.display = (estado == "block") ? "none" : "block";
}

function alternar_T(taxas){
        estado = document.getElementById(taxas).style.display
		document.getElementById(taxas).style.display = (estado == "none") ? "block" : "none";
}

function fecha_span(campo){
	document.getElementById(campo).style.display = 'none';
}

function abre_span(campo){
	document.getElementById(campo).style.display = 'block';
}