/**************************************
			
		INICIO DOS CÓDIGOS DE TERCEIROS

**************************************/



//+ Jonas Raoni Soares Silva
//@ http://jsfromhell.com/geral/is-date [v1.0]
/*
Códigos de retorno

    * 0 = Data válida
    * 1 = Formato de data inválido (regular expression falhou ou quantidade de argumentos != 3)
    * 2 = Dia não está entre 1 e 31
    * 3 = Mês não está entre 1 e 12
    * 4 = Nos meses de abril, junho, setembro e novembro não existe o dia 31
    * 5 = O mês de fevereiro só tem 28 dias
    * 6 = Anos bissexto, o mês de fevereiro só tem 29 dias


*/


isDate = function(y, m, d){
        if(typeof y == "string" && m instanceof RegExp && d){
            if(!m.test(y)) return 1;
            y = RegExp["$" + d.y], m = RegExp["$" + d.m], d = RegExp["$" + d.d];
        }
        d = Math.abs(d) || 0, m = Math.abs(m) || 0, y = Math.abs(y) || 0;
        return arguments.length != 3 ? 1 : d < 1 || d > 31 ? 2 : m < 1 || m > 12 ? 3 : /4|6|9|11/.test(m) && d == 31 ? 4
        : m == 2 && (d > ((y = !(y % 4) && (y % 1e2) || !(y % 4e2)) ? 29 : 28)) ? 5 + !!y : 0;
};


//+ Jonas Raoni Soares Silva
//@ http://jsfromhell.com/forms/masked-input [v1.0]

//========================================================
// REQUIRES http://www.jsfromhell.com/geral/event-listener
//========================================================

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();
    }
    for(var i in !/^(.)\^(.*)$/.test(m) && (f.maxLength = m.length), {keypress: 0, keyup: 1})
        addEvent(f, i, mask);
};

// JavaScript Document
//+ Jonas Raoni Soares Silva
//@ http://jsfromhell.com/dhtml/incremental-search [v1.3]

//=============================================================
// REQUIRES http://www.jsfromhell.com/geral/event-listener v1.3
//=============================================================

IncrementalSearch = function(input, callback, className){
    var i, $ = this;
    ($.input = input).autocomplete = "off", $.callback = callback || function(){},
    $.className = className || "", $.hide(), $.visible = 0;
    for(i in {keydown: 0, focus: 0, blur: 0, keyup: 0, keypress: 0})
        addEvent(input, i, $._handler, $);
};
with({p: IncrementalSearch.prototype}){
    p.show = function(){
			if(BrowserDetect.browser=="Explorer"){
				document.getElementById("id_deficiencia").style.visibility = "hidden";
				document.getElementById("id_nacionalidade").style.visibility = "hidden";
				document.getElementById("id_estadocivil").style.visibility = "hidden";
				document.getElementById("id_pais").style.visibility = "hidden";
			}
        for(var $ = this, s = $.c.style, o = $.input, x = o.offsetLeft,
            y = o.offsetTop + o.offsetHeight; o = o.offsetParent; x += o.offsetLeft, y += o.offsetTop);
        s.left = x + "px", s.top = y + "px",
        $.l.length ? (s.display = "block", !$.visible && ($._callEvent("onshow"), ++$.visible), $.highlite(0)) : s.display = "none";
    };
    p.hide = function(){
			if(BrowserDetect.browser=="Explorer"){
				document.getElementById("id_deficiencia").style.visibility = "visible";
				document.getElementById("id_nacionalidade").style.visibility = "visible";
				document.getElementById("id_estadocivil").style.visibility = "visible";
				document.getElementById("id_pais").style.visibility = "visible";
			}
        var $ = this, d = document, s = ($.c && $.c.parentNode.removeChild($.c),
        $.c = d.body.appendChild(d.createElement("div"))).style;
        $.l = [], $.i = -1, $.c.className = $.className, s.position = "absolute", s.display = "none";
        $._old = null, $.visible && ($._callEvent("onhide"), --$.visible);
    };
    p.add = function(s, x, data){
        var $ = this, l = 0, d = document, i = $.l.length, v = $.input.value.length,
            o = ($.l[i] = [s, data, $.c.appendChild(d.createElement("div"))])[2];
        if(x instanceof Array || (x = [x]), o.i = i, o.className = "normal", !isNaN(x[0]))
            for(var j = -1, k = x.length; ++j < k; o.appendChild(d.createTextNode(
                s.substring(l, x[j]))).parentNode.appendChild(d.createElement(
                "span")).appendChild(d.createTextNode(s.substring(x[j],
                l = x[j] + v))).parentNode.className = "highlited");
        for(x in o.appendChild(d.createTextNode(s.substr(l))), {click: 0, mouseover: 0})
            addEvent(o, x, $._handler, $);
    };
    p.highlite = function(i){
        var $ = this;
        $._invalid(i) || ($._invalid($.i) || ($.l[$.i][2].className = "normal"),
        $.l[$.i = i][2].className += " selected", $._callEvent("onhighlite", $.l[i][0], $.l[i][1]));
    };
    p.select = function(i){
        var $ = this;
        $._invalid(i = isNaN(i) ? $.i : i) || ($._callEvent("onselect",
            $.input.value = $.l[$.i][0], $.l[i][1]), $.hide());
    };
    p.next = function(){
        var $ = ($ = this, $.highlite(($.i + 1) % $.l.length));
    };
    p.previous = function(){
        var $ = ($ = this, $.highlite((!$.i ? $.l.length : $.i) - 1));
    };
    p._fadeOut = function(){
        var f = (f = function(){arguments.callee.x.hide();}, f.x = this, setTimeout(f, 200));
    };
    p._handler = function(e){
        var $ = this, t = e.type, k = e.key;
        t == "focus" || t == "keyup" ? k != 40 && k != 38 && k != 13 && $._old != $.input.value && ($.hide(), $.callback($, $.input.value))
        : t == "keydown" ? k == 40 ? $.next() : k == 38 ? $.previous() : $._old = $.input.value
        : t == "keypress" ? k == 13 && (e.preventDefault(), $.select())
        : t == "blur" ? $._fadeOut() : t == "click" ? $.select()
        : $.highlite((/span/i.test((e = e.target).tagName) ? e.parentNode : e).i);
    };
    p._invalid = function(i){
        return isNaN(i) || i < 0 || i >= this.l.length;
    }
    p._callEvent = function(e){
        var $ = this;
        return $[e] instanceof Function ? $[e].apply($, [].slice.call(arguments, 1)) : undefined;
    };
}

// JavaScript Document

//+ Jonas Raoni Soares Silva
//@ http://jsfromhell.com/forms/auto-tab [v1.1]

//========================================================
// REQUIRES http://www.jsfromhell.com/geral/event-listener
//========================================================

autoTab = function(){
    var c = 0, lastKey = function(e){c = e.key;}, next = function(e){
        var i, j, f = (e = e.target).form.elements, l = e.value.length, m = e.maxLength;
        if(c && m > -1 && l >= m){
            for(i = l = f.length; f[--i] != e;);
            for(j = i; (j = (j + 1) % l) != i && (!f[j].type || f[j].disabled || f[j].readOnly || f[j].type.toLowerCase() == "hidden"););
            j != i && f[j].focus();
        }
    };
    for(var f, i = (f = document.forms).length; i; addEvent(f[--i], "keyup", next), addEvent(f[i], "keypress", lastKey));
};

/*
**************************************
* Restrict Class v1.0                *
* Autor: Carlos R. L. Rodrigues      *
**************************************
*/

//========================================================
// REQUIRES http://www.jsfromhell.com/geral/event-listener
//========================================================

Restrict = function(form){
	this.form = form, this.field = {}, this.mask = {};
}
Restrict.field = Restrict.inst = Restrict.c = null;
Restrict.prototype.start = function(){
	var $, __ = document.forms[this.form], s, x, j, c, sp, o = this, l;
	var p = {".":/./, w:/\w/, W:/\W/, d:/\d/, D:/\D/, s:/\s/, a:/[\xc0-\xff]/, A:/[^\xc0-\xff]/};
	for(var _ in $ = this.field)
		if(/text|textarea|password/i.test(__[_].type)){
			x = $[_].split(""), c = j = 0, sp, s = [[],[]];
			for(var i = 0, l = x.length; i < l; i++)
				if(x[i] == "\\" || sp){
					if(sp = !sp) continue;
					s[j][c++] = p[x[i]] || x[i];
				}
				else if(x[i] == "^") c = (j = 1) - 1;
				else s[j][c++] = x[i];
			o.mask[__[_].name] && (__[_].maxLength = o.mask[__[_].name].length);
			__[_].pt = s, addEvent(__[_], "keydown", function(e){
				var r = Restrict.field = e.target;
				if(!o.mask[r.name]) return;
				r.l = r.value.length, Restrict.inst = o; Restrict.c = e.key;
				setTimeout(o.onchanged, r.e = 1);
			});
			addEvent(__[_], "keyup", function(e){
				(Restrict.field = e.target).e = 0;
			});
			addEvent(__[_], "keypress", function(e){
				o.restrict(e) || e.preventDefault();
				var r = Restrict.field = e.target;
				if(!o.mask[r.name]) return;
				if(!r.e){
					r.l = r.value.length, Restrict.inst = o, Restrict.c = e.key || 0;
					setTimeout(o.onchanged, 1);
				}
			});
		}
}
Restrict.prototype.restrict = function(e){
	var o, c = e.key, n = (o = e.target).name, r;
	var has = function(c, r){
		for(var i = r.length; i--;)
			if((r[i] instanceof RegExp && r[i].test(c)) || r[i] == c) return true;
		return false;
	}
	var inRange = function(c){
		return has(c, o.pt[0]) && !has(c, o.pt[1]);
	}
	return (c < 30 || inRange(String.fromCharCode(c))) ?
		(this.onKeyAccept && this.onKeyAccept(o, c), !0) :
		(this.onKeyRefuse && this.onKeyRefuse(o, c),  !1);
}
Restrict.prototype.onchanged = function(){
	var ob = Restrict, si, moz = false, o = ob.field, t, lt = (t = o.value).length, m = ob.inst.mask[o.name];
	if(o.l == o.value.length) return;
	if(si = o.selectionStart) moz = true;
	else if(o.createTextRange){
		var obj = document.selection.createRange(), r = o.createTextRange();
		if(!r.setEndPoint) return false;
		r.setEndPoint("EndToStart", obj); si = r.text.length;
	}
	else return false;
	for(var i in m = m.split(""))
		if(m[i] != "#")
			t = t.replace(m[i] == "\\" ? m[++i] : m[i], "");
	var j = 0, h = "", l = m.length, ini = si == 1, t = t.split("");
	for(i = 0; i < l; i++)
		if(m[i] != "#"){
			if(m[i] == "\\" && (h += m[++i])) continue;
			h += m[i], i + 1 == l && (t[j - 1] += h, h = "");
		}
		else{
			if(!t[j] && !(h = "")) break;
			(t[j] = h + t[j++]) && (h = "");
		}
	o.value = o.maxLength > -1 && o.maxLength < (t = t.join("")).length ? t.slice(0, o.maxLength) : t;
	if(ob.c && ob.c != 46 && ob.c != 8){
		if(si != lt){
			while(m[si] != "#" && m[si]) si++;
			ini && m[0] != "#" && si++;
		}
		else si = o.value.length;
	}
	!moz ? (obj.move("character", si), obj.select()) : o.setSelectionRange(si, si);
}
/*
**************************************
* Event Listener Function v1.4       *
* Autor: Carlos R. L. Rodrigues      *
**************************************
*/
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;
};



// LIMIDA A QUANTIDADE DE CARACTERES EM UM TEXT AREA
	function max(txarea,total,act) 
{ 
	if(act){
		var Digitado = document.getElementById("Digitado"+act);
		var Restante = document.getElementById("Restante"+act);
	}else{
		var Digitado = document.getElementById("Digitado");
		var Restante = document.getElementById("Restante");
	}
	var tam = txarea.value.length;
	var str=""; 	
	str=str+tam;	
	Digitado.innerHTML = str;	
	Restante.innerHTML = total - str;
	if (tam > total){ 	
		var aux = txarea.value;
		txarea.value = aux.substring(0,total);	
		Digitado.innerHTML = total;		
		Restante.innerHTML = 0;	
	}
}

/**************************************
			
		FIM DOS CÓDIGOS DE TERCEIROS

**************************************/



// Verifica se tem alguma vogal acentuada na string
// Tipo de retorno: BOOLEAN
// Domínio: [true | false]
function isAccentedVowel(campo){ 
	ls = campo.toLowerCase(); 
        if ((ls.indexOf("á")>=0) || (ls.indexOf("à")>=0) || (ls.indexOf("ã")>=0) || (ls.indexOf("â")>=0) || (ls.indexOf("é")>=0) || (ls.indexOf("í")>=0) || (ls.indexOf("ó")>=0) || (ls.indexOf("õ")>=0) || (ls.indexOf("ô")>=0) || (ls.indexOf("ú")>=0) || (ls.indexOf("ü")>=0))
        	return true; 
}

// Verifica se o valor passado como parâmetro é um número
// Tipo de retorno: BOOLEAN
// Domínio: [true | false]
function isNumber(number){
	answer = true;
        for (var i=0; i<number.length; i++) {
		if (!parseFloat(number.charAt(i))) {
			if(number.charAt(i) != "0") {
				answer = false;
                                break;
                        }
		}
	}
        return answer;
}

// Verifica se o CPF informado é válido
// Tipo de retorno: BOOLEAN
// Domínio: [true | false]
// VALIDA CPF
function chkCpf (campo,valor) {

 

 strcpf = valor;

 str_aux = "";

 

 for (i = 0; i <= strcpf.length - 1; i++)

   if ((strcpf.charAt(i)).match(/\d/))

     str_aux += strcpf.charAt(i);

   else if (!(strcpf.charAt(i)).match(/[\.\-]/)) {

     alert ("O campo CPF apresenta caracteres inválidos !!!");

     campo.focus();

     return false;

   }

 

 if (str_aux.length != 11) {

   alert ("O campo CPF deve conter 11 dígitos !!!");

   campo.focus();

   return false;

 }

 

 soma1 = soma2 = 0;

 for (i = 0; i <= 8; i++) {

   soma1 += str_aux.charAt(i) * (10-i);

   soma2 += str_aux.charAt(i) * (11-i);

 }

 d1 = ((soma1 * 10) % 11) % 10;

 d2 = (((soma2 + (d1 * 2)) * 10) % 11) % 10;

 if ((d1 != str_aux.charAt(9)) || (d2 != str_aux.charAt(10))) {

   alert ("O CPF digitado é inválido !!!");

   campo.focus();

   return false;

 }



 return true;

}

// Verifica se o e-mail informado é válido
// Tipo de retorno: BOOLEAN
// Domínio: [true | false]
// VALIDA EMAIL

function checa_email(campo) {
	var campo = campo;
	if (campo == "") {
			return false;
	} else {
		prim = campo.indexOf("@")
		if(prim < 2) {
			return false;
		}
		if(campo.indexOf("@",prim + 1) != -1) {
			return false;
		}
		if(campo.indexOf(".") < 1) {
			return false;
		}
		if(campo.indexOf(" ") != -1) {
			return false;
		}
		if(campo.indexOf("zipmeil.com") > 0) {
			return false;
		}
		if(campo.indexOf("hotmeil.com") > 0) {
			return false;
		}
		if(campo.indexOf(".@") > 0) {
			return false;
		}
		if(campo.indexOf("@.") > 0) {
			return false;
		}
		if(campo.indexOf(".com.br.") > 0) {
			return false;
		}
		if(campo.indexOf("/") > 0) {
			return false;
		}
		if(campo.indexOf("[") > 0) {
			return false;
		}
		if(campo.indexOf("]") > 0) {
			return false;
		}
		if(campo.indexOf("(") > 0) {
			return false;
		}
		if(campo.indexOf(")") > 0) {
			return false;
		}
		if(campo.indexOf("..") > 0) {
			return false;
		}
	}
		return true;
}

// FUNÇÃO AJAX
function createHttp()
{
	var xmlhttp;
	
	try
	{
		xmlhttp = new XMLHttpRequest();
	}
	catch(e)
	{		
		try
		{
			xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
		}
		catch(ex)
		{
			try
			{
				xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
			}
			catch(exc)
			{
				alert('este browser não suporta Ajax!');
				return false;
			}
		}
	}
	
	xmlhttp.onreadystatechange = function()
	{
		if (xmlhttp.readyState == 4)
		{
			if (document.myForm)
				document.myForm.time.value=xmlHttp.responseText;
		}
	}
	return xmlhttp;
}

/* FUNÇÃO PARA MUDAR DE REGIÃO - utilizando AJAX */
function cidade(n)
{
var conteudo;		// ID da DIV do qual o AJAX irá retornar o conteúdo
var carregando; // ID da DIV onde será escrito a msg de CARREGANDO

	/*
id_regiao		descricao
1						São Paulo
2						Campinas
3						Manaus
	
	*/
	
	// Bloqueia duplo clique
	
	var xmlHttp = createHttp();
	
	conteudo = document.getElementById("conteudo");
	carregando = document.getElementById("carregando");
	
	// exibe mensagem de carregando
	carregando.style.visibility = 'visible';
	
	// Exibe texto "carregando..." na tela do usuário enquanto AJAX não retornar resposta
//	conteudo.innerHTML = '<div class="carregando">carregando...</div>';
		xmlHttp.open("post","sec/cidades.asp?cidade="+n, true);
		xmlHttp.send(null);
	xmlHttp.onreadystatechange = function()
	{
		if(xmlHttp.readyState == 4)
		{
			conteudo.innerHTML = xmlHttp.responseText;
	carregando.style.visibility = 'hidden';
		}
	}
	// exibe mensagem de carregando
}

/* FUNÇÃO QUE EXIBE OS DETALHES DA VAGA - utilizando AJAX */
function candidatar(n,m)
{
var conteudo;		// ID da DIV do qual o AJAX irá retornar o conteúdo
var carregando; // ID da DIV onde será escrito a msg de CARREGANDO

	/*
id_regiao		descricao
1						São Paulo
2						Campinas
3						Manaus
	
	*/
	
	// Bloqueia duplo clique
	
	var xmlHttp = createHttp();
	
	if (!m) 
		m = 1
	conteudo = document.getElementById("conteudo");
	carregando = document.getElementById("carregando");
	
	if(!confirm("Fique atento ao perfil solicitado ! \n\n Somente serão aceitos currículos dentro do perfil da vaga.\nOs currículos que não atenderem a este pré-requisito serão automaticamente descartados.\n\n Deseja continuar?"))
		return;
	
	// exibe mensagem de carregando
	carregando.style.visibility = 'visible';
	
	// Exibe texto "carregando..." na tela do usuário enquanto AJAX não retornar resposta
//	conteudo.innerHTML = '<div class="carregando">carregando...</div>';

	xmlHttp.open("post","sec/cidades.asp?cidade="+m+"&acao=candidatar&id_vaga="+n, true);
	xmlHttp.send(null);

	xmlHttp.onreadystatechange = function()
	{
		if(xmlHttp.readyState == 4)
		{
			conteudo.innerHTML = xmlHttp.responseText;
			carregando.style.visibility = 'hidden';
			menu_cadastro(n,m);
		
			var	cpf2 = document.getElementById("cpf2");
			MaskInput(cpf2, "99999999999");
		}
	}
	// exibe mensagem de carregando
}

/* FUNÇÃO QUE EXIBE OS DETALHES DA VAGA - utilizando AJAX */
function detalhes(n,m)
{
var conteudo;		// ID da DIV do qual o AJAX irá retornar o conteúdo
var carregando; // ID da DIV onde será escrito a msg de CARREGANDO

	/*
id_regiao		descricao
1						São Paulo
2						Campinas
3						Manaus
	
	*/
	
	// Bloqueia duplo clique
	
	var xmlHttp = createHttp();
	
	if (!m) 
		m = 1
	conteudo = document.getElementById("conteudo");
	carregando = document.getElementById("carregando");
	
	// exibe mensagem de carregando
	carregando.style.visibility = 'visible';
	
	// Exibe texto "carregando..." na tela do usuário enquanto AJAX não retornar resposta
//	conteudo.innerHTML = '<div class="carregando">carregando...</div>';

	xmlHttp.open("post","sec/detalhes.asp?id_cidade="+m+"&id_vaga="+n, true);
	xmlHttp.send(null);

	xmlHttp.onreadystatechange = function()
	{
		if(xmlHttp.readyState == 4)
		{
			conteudo.innerHTML = xmlHttp.responseText;
			carregando.style.visibility = 'hidden';
			menu_cadastro(n,m);
		}
	}
	// exibe mensagem de carregando
}

/* FUNÇÃO QUE EXIBE OS DETALHES DA VAGA - utilizando AJAX */
function info(n,m)
{
var conteudo;		// ID da DIV do qual o AJAX irá retornar o conteúdo
var carregando; // ID da DIV onde será escrito a msg de CARREGANDO

	/*
id_regiao		descricao
1						São Paulo
2						Campinas
3						Manaus
	
	*/
	
	// Bloqueia duplo clique
	
	var xmlHttp = createHttp();
	
	if (!m) 
		m = 1
	conteudo = document.getElementById("conteudo");
	carregando = document.getElementById("carregando");
	
	// exibe mensagem de carregando
	carregando.style.visibility = 'visible';
	
	// Exibe texto "carregando..." na tela do usuário enquanto AJAX não retornar resposta
//	conteudo.innerHTML = '<div class="carregando">carregando...</div>';

	xmlHttp.open("post","sec/detalhes.asp?acao=detalhes&id_vaga="+n, true);
	xmlHttp.send(null);

	xmlHttp.onreadystatechange = function()
	{
		if(xmlHttp.readyState == 4)
		{
			conteudo.innerHTML = xmlHttp.responseText;
			carregando.style.visibility = 'hidden';
			menu_cadastro(n,m);
		
			var	cpf2 = document.getElementById("cpf2");
			MaskInput(cpf2, "99999999999");
		}
	}
	// exibe mensagem de carregando
}


/* FUNÇÃO QUE EXIBE AS VAGAS QUE ESTA CONCORRENDO - utilizando AJAX */
function minhasvagas()
{
var conteudo;		// ID da DIV do qual o AJAX irá retornar o conteúdo
var carregando; // ID da DIV onde será escrito a msg de CARREGANDO

	/*
id_regiao		descricao
1						São Paulo
2						Campinas
3						Manaus
	
	*/
	
	// Bloqueia duplo clique
	
	var xmlHttp = createHttp();
	
	conteudo = document.getElementById("conteudo");
	carregando = document.getElementById("carregando");
	
	// exibe mensagem de carregando
	carregando.style.visibility = 'visible';
	
	// Exibe texto "carregando..." na tela do usuário enquanto AJAX não retornar resposta
//	conteudo.innerHTML = '<div class="carregando">carregando...</div>';

	xmlHttp.open("post","sec/detalhes.asp?acao=minhasvagas", true);
	xmlHttp.send(null);

	xmlHttp.onreadystatechange = function()
	{
		if(xmlHttp.readyState == 4)
		{
			conteudo.innerHTML = xmlHttp.responseText;
			carregando.style.visibility = 'hidden';
		}
	}
	// exibe mensagem de carregando
}

/* FUNÇÃO QUE EXIBE OS DETALHES DA VAGA - utilizando AJAX */
function cadastro(n,m)
{
var conteudo;		// ID da DIV do qual o AJAX irá retornar o conteúdo
var carregando; // ID da DIV onde será escrito a msg de CARREGANDO
var cpf;
var senha;

	/*
id_regiao		descricao
1						São Paulo
2						Campinas
3						Manaus
	
	*/
	
	// Bloqueia duplo clique
	
	var xmlHttp = createHttp();
	if (!m) 
		m = 1
	
	conteudo = document.getElementById("conteudo");
	carregando = document.getElementById("carregando");
	
	// exibe mensagem de carregando
	carregando.style.visibility = 'visible';
	
	// convere os dados antes de ir para o passo 2
	if (n == 2){
		// verifica se foi preenchido todos os campos de maneira correta
		if(document.getElementById("email")){
			if(!checa_email(document.getElementById("email").value)){
				carregando.style.visibility = 'hidden';
				alert("E-mail inválido");
				document.getElementById('email').focus;
				return;
			}
		}
		if((document.getElementById("senha") && document.getElementById("senha").value == "")&&(document.getElementById("senha_bd") && document.getElementById("senha_bd").value == "")){
			carregando.style.visibility = 'hidden';
			alert("Favor preencher sua SENHA");
			document.getElementById("senha").focus;
			return;
		}
		if(document.getElementById("dica_senha") && document.getElementById("dica_senha").value == ""){
			carregando.style.visibility = 'hidden';
			alert("Favor preencher seu LEMBRETE DE SENHA");
			document.getElementById("dica_senha").focus;
			return;
		}
		if(document.getElementById("nome") && document.getElementById("nome").value == ""){
			carregando.style.visibility = 'hidden';
			alert("Favor preencher seu NOME");
			document.getElementById("nome").focus;
			return;
		}
		if(document.getElementById("cpf_frm") && (!chkCpf(document.getElementById("cpf_frm"),document.getElementById("cpf_frm").value))){
			return;
		}
		if(document.getElementById("sexo") && document.getElementById("sexo").value == ""){
			carregando.style.visibility = 'hidden';
			alert("Favor selecionar um SEXO");
			document.getElementById("sexo").focus;
			return;
		}
		if(document.getElementById("dt_nascimento") && document.getElementById("dt_nascimento").value == ""){
			carregando.style.visibility = 'hidden';
			alert("Favor preencher sua DATA DE NASCIMENTO");
			document.getElementById("dt_nascimento").focus;
			return;
		}else if(document.getElementById("dt_nascimento")){
			// VALIDA A DATA
			var ver_dia = document.getElementById("dt_nascimento").value.substr(0,2);
			var ver_mes = document.getElementById("dt_nascimento").value.substr(3,2);
			var ver_ano = document.getElementById("dt_nascimento").value.substr(6,4);
			var r_isDate = isDate(ver_ano,ver_mes,ver_dia);
			if(r_isDate == 1 || ver_ano.length < 4){
				carregando.style.visibility = 'hidden';
				alert("Data Inválida. Por favor digite a data no formato DD/MM/AAAA");
				document.getElementById("dt_nascimento").focus;
				return;
			}else if(r_isDate == 2){
				carregando.style.visibility = 'hidden';
				alert("Data Inválida. Dia maior que 31");
				document.getElementById("dt_nascimento").focus;
				return;
			}else if(r_isDate == 3){
				carregando.style.visibility = 'hidden';
				alert("Data Inválida. Mês Maior que 12");
				document.getElementById("dt_nascimento").focus;
				return;
			}else if(r_isDate == 4){
				carregando.style.visibility = 'hidden';
				alert("Data Inválida. Este mês não tem 31 dias");
				document.getElementById("dt_nascimento").focus;
				return;
			}else if(r_isDate == 5){
				carregando.style.visibility = 'hidden';
				alert("Data Inválida. Fevereiro só tem 28 dias");
				document.getElementById("dt_nascimento").focus;
				return;
			}else if(r_isDate == 6){
				carregando.style.visibility = 'hidden';
				alert("Data Inválida. ANO BISSEXTO, Fevereiro só tem 29 dias");
				document.getElementById("dt_nascimento").focus;
				return;
			}	
		}
		if(document.getElementById("endereco") && document.getElementById("endereco").value == ""){
			carregando.style.visibility = 'hidden';
			alert("Favor preencher seu ENDEREÇO");
			document.getElementById("endereco").focus;
			return;
		}
		if(document.getElementById("bairro") && document.getElementById("bairro").value == ""){
			carregando.style.visibility = 'hidden';
			alert("Favor preencher seu BAIRRO");
			document.getElementById("bairro").focus;
			return;
		}
		if(document.getElementById("cep") && document.getElementById("cep").value == ""){
			carregando.style.visibility = 'hidden';
			alert("Favor preencher seu CEP");
			document.getElementById("cep").focus;
			return;
		}
		if(document.getElementById("id_uf") && document.getElementById("id_uf").value == ""){
			carregando.style.visibility = 'hidden';
			alert("Favor selecionar seu ESTADO");
			document.getElementById("id_uf").focus;
			return;
		}
		if(document.getElementById("id_cidade") && document.getElementById("id_cidade").value == ""){
			carregando.style.visibility = 'hidden';
			alert("Favor selecionar sua CIDADE");
			document.getElementById("id_cidade").focus;
			return;
		}
		if(document.getElementById("id_pais") && document.getElementById("id_pais").value == ""){
			carregando.style.visibility = 'hidden';
			alert("Favor selecionar seu PAÍS");
			document.getElementById("id_pais").focus;
			return;
		}
		if(document.getElementById("tel_residencial") && document.getElementById("tel_residencial").value == ""){
			carregando.style.visibility = 'hidden';
			alert("Favor preencher seu TELEFONE RESIDENCIAL");
			document.getElementById("tel_residencial").focus;
			return;
		}
		if(document.getElementById("tel_celular") && document.getElementById("tel_celular").value == ""){
			carregando.style.visibility = 'hidden';
			alert("Favor preencher seu TELEFONE CELULAR");
			document.getElementById("tel_celular").focus;
			return;
		}
	}
	
	// Exibe texto "carregando..." na tela do usuário enquanto AJAX não retornar resposta
//	conteudo.innerHTML = '<div class="carregando">carregando...</div>';
	if (!document.getElementById("cpf"))
		cpf = document.getElementById("cpf2");
	else
		cpf = document.getElementById("cpf");
	
	if (!document.getElementById("senha"))
		senha = document.getElementById("senha2");
	else
		senha = document.getElementById("senha");
	if ((n == 1) && (senha != null && cpf != null)){
		xmlHttp.open("post","sec/cadastro.asp?passo="+n+"&cpf="+cpf.value+"&senha="+senha.value, true);
	}else{
		xmlHttp.open("post","sec/cadastro.asp?passo="+n, true);
	}
		xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
	// verifica se esta indo pro passo 2 para enviar os parametros por POST
	if(n == 2){
		if(!document.getElementById("passo_ant") || document.getElementById("passo_ant").value == 1){
			poststr = "passo_ant=1";
			poststr += "&email=" + encodePOST(document.getElementById("email").value);
			poststr += "&senha=" + encodePOST(document.getElementById("senha").value);
			poststr += "&dica_senha=" + encodePOST(document.getElementById("dica_senha").value);
			poststr += "&nome=" + encodePOST(document.getElementById("nome").value);
			poststr += "&cpf=" + document.getElementById("cpf_frm").value;
			poststr += "&sexo=" + document.getElementById("sexo").value;
			poststr += "&dt_nascimento=" + document.getElementById("dt_nascimento").value;
			poststr += "&endereco=" + encodePOST(document.getElementById("endereco").value);
			poststr += "&bairro=" + encodePOST(document.getElementById("bairro").value);
			poststr += "&cep=" + encodePOST(document.getElementById("cep").value);
			poststr += "&id_uf=" + document.getElementById("id_uf").value;
			poststr += "&id_cidade=" + encodePOST(document.getElementById("id_cidade").value);
			poststr += "&id_pais=" + document.getElementById("id_pais").value;
			poststr += "&tel_residencial=" + document.getElementById("tel_residencial").value;
			poststr += "&tel_comercial=" + document.getElementById("tel_comercial").value;
			poststr += "&tel_celular=" + document.getElementById("tel_celular").value;
			poststr += "&id_deficiencia=" + document.getElementById("id_deficiencia").value;
			poststr += "&id_nacionalidade=" + document.getElementById("id_nacionalidade").value;
			poststr += "&id_estadocivil=" + document.getElementById("id_estadocivil").value;
		}else
			poststr = "passo_ant=" + document.getElementById("passo_ant").value;
	}
	else
		poststr = null;
	xmlHttp.send(poststr);

	xmlHttp.onreadystatechange = function()
	{
		if(xmlHttp.readyState == 4)
		{
			conteudo.innerHTML = xmlHttp.responseText;
			carregando.style.visibility = 'hidden';
			menu_cadastro(n,m);
			
			// PREENCHE UFS (COMBO) - se for passo = 1
			if (n == 1){
				if(document.getElementById("id_uf")){
					if(document.getElementById("id_uf").value != ""){
						setRegion();
					}
				}
				// --- monta mascaras de entrada
				var dt_nasc = document.getElementById("dt_nascimento");
				if (dt_nasc) 
					MaskInput(dt_nasc, "99/99/9999");	
					
				var cpf_frm = document.getElementById("cpf_frm");
				if (cpf_frm) 
					MaskInput(cpf_frm,"99999999999")
					
				var cep = document.getElementById("cep");
				if (cep) 
					MaskInput(cep,"99999999")
					
				var tel1 = document.getElementById("tel_residencial");
				if (tel1) 
					MaskInput(tel1,"9999999999")
					
				var tel2 = document.getElementById("tel_celular");
				if (tel2) 
					MaskInput(tel2,"9999999999")
					
				var tel3 = document.getElementById("tel_comercial");
				if (tel3) 
					MaskInput(tel3,"9999999999")
				// ---
				//-- Busca múltiplas ocorrências / Searches for multiple matches ----
				function getNames(o, search){
					if(search = search.toLowerCase())
						for(var i = -1, l = list.length; ++i < l;){
							/*procura todas as ocorrências de "search" e adiciona os índices em um array
							searches all the matches of "search" and adds the indexes in an array */
							for(var j = 0, indices = []; j = list[i].toLowerCase().indexOf(search, j) + 1;
								indices[indices.length] = j - 1);
							/*se alguma ocorrência foi encontrada, adiciona o item e passa a posição das ocorrências
							if any ocurrence was found, adds the item and pass the position of the matches*/
							if(indices.length)
								o.add(list[i], indices);
						}
					o.show();
				}
	
	
				//document.all.combcity.innerHTML = xmlHttp.responseText;
				var lista = document.getElementById("list_uf");
				if (lista){
					lista = lista.value;
					var a_list = lista.split(",");
						var list = new Array;
						for(var i = 0, l = a_list.length; i < l;){
							list[i] = a_list[i];
							i++;
						}
					list.sort();
						new IncrementalSearch(document.getElementById("id_uf"), getNames, "autocomplete");
				}
				// auto TAB
				autoTab();
			}else if(n == 2){
				var dt_inicio = document.getElementById("dt_inicio");
				if (dt_inicio) 
					MaskInput(dt_inicio, "99/99/9999");	
				var dt_fim = document.getElementById("dt_fim");
				if (dt_fim) 
					MaskInput(dt_fim, "99/99/9999");
			}else if(n == 4){
				var dt_conclusao = document.getElementById("dt_conclusao");
				if (dt_conclusao) 
					MaskInput(dt_conclusao, "99/9999");
			}else if(n == 6){
				var dt_entrada = document.getElementById("dt_entrada");
				if (dt_entrada) 
					MaskInput(dt_entrada, "99/9999");
				var dt_saida = document.getElementById("dt_saida");
				if (dt_saida) 
					MaskInput(dt_saida, "99/9999");
			}
		}
	}
	// exibe mensagem de carregando
}

/* FUNÇÃO QUE EXIBE FOMULÁRIO PARA ALTERAÇÃO DAS INFO DE ENSINO */
function mostra_form(aux)
{
	// pega o nome do DIV
	eval("frm_ens = document.getElementById('frm"+aux+"')");
	frm_ens.style.display = "";
	// pega os campos de data pra criar mascara de entrada
	eval("dt_inicio = document.getElementById('dt_inicio"+aux+"')");
	if (dt_inicio) 
		MaskInput(dt_inicio, "99/99/9999");
	eval("dt_fim = document.getElementById('dt_fim"+aux+"')");
	if (dt_fim) 
		MaskInput(dt_fim, "99/99/9999");
	eval("dt_conclusao = document.getElementById('dt_conclusao"+aux+"')");
	if (dt_conclusao) 
		MaskInput(dt_conclusao, "99/9999");
	eval("dt_entrada = document.getElementById('dt_entrada"+aux+"')");
	if (dt_entrada) 
		MaskInput(dt_entrada, "99/9999");
	eval("dt_saida = document.getElementById('dt_saida"+aux+"')");
	if (dt_saida) 
		MaskInput(dt_saida, "99/9999");
}

/* FUNÇÃO QUE SALVA OS INFO DE ENSINO - utilizando AJAX */
function ensino(aux)
{
	var carregando= document.getElementById("carregando"); // ID da DIV onde será escrito a msg de CARREGANDO
	carregando.style.visibility = 'visible';
	var err = 0;
	if(aux == 0){
		aux = "";
		var extra = "";
	}else
		eval("extra = document.getElementById('id_ensino"+aux+"').value;");
		
// verificação de preenchimento dos campos
	eval("campo = document.getElementById('id_tipoensino"+aux+"').value");
	if (campo == ""){
		err++;
	}
	eval("campo = document.getElementById('nome_instituicao"+aux+"').value");
	if (campo == ""){
		err++;
	}
	eval("campo = document.getElementById('nome_curso"+aux+"').value");
	if (campo == ""){
		err++;
	}
	eval("campo = document.getElementById('dt_inicio"+aux+"').value");
	if (campo == ""){
		err++;
	}else if(campo){
		// VALIDA A DATA
		var ver_dia = campo.substr(0,2);
		var ver_mes = campo.substr(3,2);
		var ver_ano = campo.substr(6,4);
		var r_isDate = isDate(ver_ano,ver_mes,ver_dia);
		if(r_isDate == 1 || ver_ano.length < 4){
			carregando.style.visibility = 'hidden';
			alert("Data Inválida. Por favor digite a data no formato DD/MM/AAAA");
			return;
		}else if(r_isDate == 2){
			carregando.style.visibility = 'hidden';
			alert("Data Inválida. Dia maior que 31");
			return;
		}else if(r_isDate == 3){
			carregando.style.visibility = 'hidden';
			alert("Data Inválida. Mês Maior que 12");
			return;
		}else if(r_isDate == 4){
			carregando.style.visibility = 'hidden';
			alert("Data Inválida. Este mês não tem 31 dias");
			return;
		}else if(r_isDate == 5){
			carregando.style.visibility = 'hidden';
			alert("Data Inválida. Fevereiro só tem 28 dias");
			return;
		}else if(r_isDate == 6){
			carregando.style.visibility = 'hidden';
			alert("Data Inválida. ANO BISSEXTO, Fevereiro só tem 29 dias");
			return;
		}	
	}
	eval("campo = document.getElementById('dt_fim"+aux+"').value");
	if (campo == ""){
		err++;
	}else if(campo){
		// VALIDA A DATA
		var ver_dia = campo.substr(0,2);
		var ver_mes = campo.substr(3,2);
		var ver_ano = campo.substr(6,4);
		var r_isDate = isDate(ver_ano,ver_mes,ver_dia);
		if(r_isDate == 1 || ver_ano.length < 4){
			carregando.style.visibility = 'hidden';
			alert("Data Inválida. Por favor digite a data no formato DD/MM/AAAA");
			return;
		}else if(r_isDate == 2){
			carregando.style.visibility = 'hidden';
			alert("Data Inválida. Dia maior que 31");
			return;
		}else if(r_isDate == 3){
			carregando.style.visibility = 'hidden';
			alert("Data Inválida. Mês Maior que 12");
			return;
		}else if(r_isDate == 4){
			carregando.style.visibility = 'hidden';
			alert("Data Inválida. Este mês não tem 31 dias");
			return;
		}else if(r_isDate == 5){
			carregando.style.visibility = 'hidden';
			alert("Data Inválida. Fevereiro só tem 28 dias");
			return;
		}else if(r_isDate == 6){
			carregando.style.visibility = 'hidden';
			alert("Data Inválida. ANO BISSEXTO, Fevereiro só tem 29 dias");
			return;
		}	
	}
	eval("campo = document.getElementById('id_estadocurso"+aux+"').value");
	if (campo == ""){
		err++;
	}
	eval("campo = document.getElementById('obs"+aux+"').value");
	if (campo == ""){
		err++;
	}
	if (err > 0) {
		carregando.style.visibility = 'hidden';
		alert("Você deve preencher todos os campos");
		return;
	}
	// --

	var xmlHttp = createHttp();
	xmlHttp.open("post","sec/ensino.asp", true);
	xmlHttp.setRequestHeader('encoding','ISO-8859-1');
	xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
	eval("send_info = 'id_ensino=' + extra + '&id_tipoensino=' + document.getElementById('id_tipoensino"+aux+"').value + '&nome_instituicao=' + encodePOST(document.getElementById('nome_instituicao"+aux+"').value) + '&nome_curso=' + encodePOST(document.getElementById('nome_curso"+aux+"').value) + '&dt_inicio=' + document.getElementById('dt_inicio"+aux+"').value + '&dt_fim=' + document.getElementById('dt_fim"+aux+"').value + '&id_estadocurso=' + document.getElementById('id_estadocurso"+aux+"').value + '&obs=' + encodePOST(document.getElementById('obs"+aux+"').value)");
	xmlHttp.send(send_info);
	xmlHttp.onreadystatechange = function()
	{
		if(xmlHttp.readyState == 4)
		{
//			document.getElementById("conteudo").innerHTML =  xmlHttp.responseText;
			cadastro(2);
		}
	}
}

/* FUNÇÃO QUE EXCLUI OS INFO DE ENSINO - utilizando AJAX */
function exclui_ensino(aux)
{
	if(confirm("Você tem certeza que deseja excluir este ítem?")){
		var xmlHttp = createHttp();
		xmlHttp.open("post","sec/ensino.asp?acao_ajax=excluir", true);
		xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
		eval("extra = document.getElementById('id_ensino"+aux+"').value;");
		xmlHttp.send("id_ensino=" + extra);
		xmlHttp.onreadystatechange = function()
		{
			if(xmlHttp.readyState == 4)
			{
				cadastro(2);
			}
		}
	}else
		return;
}

/* FUNÇÃO QUE SALVA OS INFO DE FORMAÇÂO - utilizando AJAX */
function formacao()
{
// verificação de preenchimento dos campos
	if (document.getElementById("id_formacao").value == ""){
		alert("Você deve selecionar sua FORMAÇÃO");
		return;
	}
	// --
	var xmlHttp = createHttp();
	xmlHttp.open("post","sec/formacao.asp", true);
	xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
	xmlHttp.send("id_formacao=" + document.getElementById("id_formacao").value);
	xmlHttp.onreadystatechange = function()
	{
		if(xmlHttp.readyState == 4)
		{
			cadastro(2);
		}
	}
}


/* FUNÇÃO QUE SALVA OS INFO DE CURSO DE INFORMATICA - utilizando AJAX */
function informatica(aux)
{
	var err = 0;
	if(aux == 0){
		aux = "";
		var extra = "";
	}else
		eval("extra = document.getElementById('id_usuario_infocurso"+aux+"').value;");
		
// verificação de preenchimento dos campos
	eval("campo = document.getElementById('id_infocurso"+aux+"').value");
	if (campo == ""){
		err++;
	}
	eval("campo = document.getElementById('nivel"+aux+"').value");
	if (campo == ""){
		err++;
	}
	eval("campo = document.getElementById('obs"+aux+"').value");
	if (campo == ""){
		err++;
	}
	if (err > 0) {
		alert("Você deve preencher todos os campos");
		return;
	}
	// --
	var xmlHttp = createHttp();
	xmlHttp.open("post","sec/informatica.asp", true);
	xmlHttp.setRequestHeader('encoding','ISO-8859-1');
	xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
	eval("send_info = 'id_usuario_infocurso=' + extra + '&id_infocurso=' + document.getElementById('id_infocurso"+aux+"').value + '&nivel=' + document.getElementById('nivel"+aux+"').value + '&obs=' + encodePOST(document.getElementById('obs"+aux+"').value)");
	xmlHttp.send(send_info);
	xmlHttp.onreadystatechange = function()
	{
		if(xmlHttp.readyState == 4)
		{
//			document.getElementById("conteudo").innerHTML =  xmlHttp.responseText;
			cadastro(3);
		}
	}
}

/* FUNÇÃO QUE EXCLUI OS INFO DE INFORMATICA - utilizando AJAX */
function exclui_informatica(aux)
{
	if(confirm("Você tem certeza que deseja excluir este ítem?")){
		var xmlHttp = createHttp();
		xmlHttp.open("post","sec/informatica.asp?acao_ajax=excluir", true);
		xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
		eval("extra = document.getElementById('id_usuario_infocurso"+aux+"').value;");
		xmlHttp.send("id_usuario_infocurso=" + extra);
		xmlHttp.onreadystatechange = function()
		{
			if(xmlHttp.readyState == 4)
			{
				cadastro(3);
			}
		}
	}else
		return;
}

/* FUNÇÃO QUE SALVA OS INFO DE EXTRA_CURSO - utilizando AJAX */
function extracurso(aux)
{
	var carregando= document.getElementById("carregando"); // ID da DIV onde será escrito a msg de CARREGANDO
	carregando.style.visibility = 'visible';
	var err = 0;
	if(aux == 0){
		aux = "";
		var extra = "";
	}else
		eval("extra = document.getElementById('id_extracurso"+aux+"').value;");
		
	// verificação de preenchimento dos campos
	eval("campo = document.getElementById('instituicao"+aux+"').value");
	if (campo == ""){
		err++;
	}
	eval("campo = document.getElementById('descricao"+aux+"').value");
	if (campo == ""){
		err++;
	}
	eval("campo = document.getElementById('dt_conclusao"+aux+"').value");
	if (campo == ""){
		err++;
	}else if(campo){
		// VALIDA A DATA
		var ver_mes = campo.substr(0,2);
		var ver_ano = campo.substr(3,4);
		// não possui dia | PREENCHEMOS COM 01 por default
		var ver_dia = "01";
		var r_isDate = isDate(ver_ano,ver_mes,ver_dia);
		if(r_isDate == 1 || ver_ano.length < 4){
			carregando.style.visibility = 'hidden';
			alert("Data Inválida. Por favor digite a data no formato DD/MM/AAAA");
			return;
		}else if(r_isDate == 2){
			carregando.style.visibility = 'hidden';
			alert("Data Inválida. Dia maior que 31");
			return;
		}else if(r_isDate == 3){
			carregando.style.visibility = 'hidden';
			alert("Data Inválida. Mês Maior que 12");
			return;
		}else if(r_isDate == 4){
			carregando.style.visibility = 'hidden';
			alert("Data Inválida. Este mês não tem 31 dias");
			return;
		}else if(r_isDate == 5){
			carregando.style.visibility = 'hidden';
			alert("Data Inválida. Fevereiro só tem 28 dias");
			return;
		}else if(r_isDate == 6){
			carregando.style.visibility = 'hidden';
			alert("Data Inválida. ANO BISSEXTO, Fevereiro só tem 29 dias");
			return;
		}	
	}
	eval("campo = document.getElementById('duracao"+aux+"').value");
	if (campo == ""){
		err++;
	}
	eval("campo = document.getElementById('obs"+aux+"').value");
	if (campo == ""){
		err++;
	}
	if (err > 0) {
		carregando.style.visibility = 'hidden';
		alert("Você deve preencher todos os campos");
		return;
	}
	// --
	
	var xmlHttp = createHttp();
	xmlHttp.open("post","sec/extracurso.asp", true);
	xmlHttp.setRequestHeader('encoding','ISO-8859-1');
	xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
	eval("send_info = 'id_extracurso=' + extra + '&instituicao=' + encodePOST(document.getElementById('instituicao"+aux+"').value) + '&descricao=' + encodePOST(document.getElementById('descricao"+aux+"').value) + '&dt_conclusao=' + document.getElementById('dt_conclusao"+aux+"').value + '&duracao=' + encodePOST(document.getElementById('duracao"+aux+"').value) + '&obs=' + encodePOST(document.getElementById('obs"+aux+"').value)");
	xmlHttp.send(send_info);
	xmlHttp.onreadystatechange = function()
	{
		if(xmlHttp.readyState == 4)
		{
//			document.getElementById("conteudo").innerHTML =  xmlHttp.responseText;
			cadastro(4,2);
		}
	}
}

/* FUNÇÃO QUE EXCLUI OS INFO DE EXTRA_CURSO - utilizando AJAX */
function exclui_extracurso(aux)
{
	if(confirm("Você tem certeza que deseja excluir este ítem?")){
		var xmlHttp = createHttp();
		xmlHttp.open("post","sec/extracurso.asp?acao_ajax=excluir", true);
		xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
		eval("extra = document.getElementById('id_extracurso"+aux+"').value;");
		xmlHttp.send("id_extracurso=" + extra);
		xmlHttp.onreadystatechange = function()
		{
			if(xmlHttp.readyState == 4)
			{
				cadastro(4,2);
			}
		}
	}else
		return;
}



/* FUNÇÃO QUE SALVA OS INFO DE CURSO DE INFORMATICA - utilizando AJAX */
function idioma(aux)
{
	var err = 0;
	if(aux == 0){
		aux = "";
		var extra = "";
	}else
		eval("extra = document.getElementById('id_usuario_idiomacurso"+aux+"').value;");
		
	// verificação de preenchimento dos campos
	eval("campo = document.getElementById('id_idiomacurso"+aux+"').value");
	if (campo == ""){
		err++;
	}
	eval("campo = document.getElementById('nivel"+aux+"').value");
	if (campo == ""){
		err++;
	}
	eval("campo = document.getElementById('obs"+aux+"').value");
	if (campo == ""){
		err++;
	}
	if (err > 0) {
		alert("Você deve preencher todos os campos");
		return;
	}
	// --
	
	var xmlHttp = createHttp();
	xmlHttp.open("post","sec/idioma.asp", true);
	xmlHttp.setRequestHeader('encoding','ISO-8859-1');
	xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
	eval("send_info = 'id_usuario_idiomacurso=' + extra + '&id_idiomacurso=' + document.getElementById('id_idiomacurso"+aux+"').value + '&nivel=' + document.getElementById('nivel"+aux+"').value + '&obs=' + encodePOST(document.getElementById('obs"+aux+"').value)");
	xmlHttp.send(send_info);
	xmlHttp.onreadystatechange = function()
	{
		if(xmlHttp.readyState == 4)
		{
//			document.getElementById("conteudo").innerHTML =  xmlHttp.responseText;
			cadastro(5,2);
		}
	}
}

/* FUNÇÃO QUE EXCLUI OS INFO DE INFORMATICA - utilizando AJAX */
function exclui_idioma(aux)
{
	if(confirm("Você tem certeza que deseja excluir este ítem?")){
		var xmlHttp = createHttp();
		xmlHttp.open("post","sec/idioma.asp?acao_ajax=excluir", true);
		xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
		eval("extra = document.getElementById('id_usuario_idiomacurso"+aux+"').value;");
		xmlHttp.send("id_usuario_idiomacurso=" + extra);
		xmlHttp.onreadystatechange = function()
		{
			if(xmlHttp.readyState == 4)
			{
				cadastro(5,2);
			}
		}
	}else
		return;
}


/* FUNÇÃO QUE SALVA OS INFO DE PROFISSIONAL - utilizando AJAX */
function profissional(aux)
{
	var carregando= document.getElementById("carregando"); // ID da DIV onde será escrito a msg de CARREGANDO
	carregando.style.visibility = 'visible';
	var err = 0;
	if(aux == 0){
		aux = "";
		var extra = "";
	}else
		eval("extra = document.getElementById('id_profissional"+aux+"').value;");
		
	// verificação de preenchimento dos campos
	eval("campo = document.getElementById('nome_empresa"+aux+"').value");
	if (campo == ""){
		err = "Nome da Empresa,"
	}
	eval("campo = document.getElementById('dt_entrada"+aux+"').value");
	if (campo == ""){
		err+=" Data de Entrada,"
	}else if(campo){
		// VALIDA A DATA
		var ver_mes = campo.substr(0,2);
		var ver_mes = ver_mes.replace("/","");
		var ver_ano = campo.substr(2,4);
		// não possui dia | PREENCHEMOS COM 01 por default
		var ver_dia = "01";
		var r_isDate = isDate(ver_ano,ver_mes,ver_dia);
//		alert(ver_mes);
		if(r_isDate == 1 || ver_ano.length < 4){
			carregando.style.visibility = 'hidden';
			alert("Data Inválida. Por favor digite a data no formato DD/MM/AAAA");
			return;
		}else if(r_isDate == 2){
			carregando.style.visibility = 'hidden';
			alert("Data Inválida. Dia maior que 31");
			return;
		}else if(r_isDate == 3){
			carregando.style.visibility = 'hidden';
			alert("Data Inválida. Mês Maior que 12");
			return;
		}else if(r_isDate == 4){
			carregando.style.visibility = 'hidden';
			alert("Data Inválida. Este mês não tem 31 dias");
			return;
		}else if(r_isDate == 5){
			carregando.style.visibility = 'hidden';
			alert("Data Inválida. Fevereiro só tem 28 dias");
			return;
		}else if(r_isDate == 6){
			carregando.style.visibility = 'hidden';
			alert("Data Inválida. ANO BISSEXTO, Fevereiro só tem 29 dias");
			return;
		}	
	}
	eval("campo = document.getElementById('cargo"+aux+"').value");
	if (campo == ""){
		err+=" Cargo,"
	}
	eval("campo = document.getElementById('atividade"+aux+"').value");
	if (campo == ""){
		err+=" Atividade,"
	}else{
		if(campo.length > 254){
			carregando.style.visibility = 'hidden';
			alert("O campo não pode ter mais de 255 caracteres");
			return;
		}
	}
	
	eval("campo = document.getElementById('motivo_saida"+aux+"').value");
	if (campo != ""){
		if(campo.length > 254){
			carregando.style.visibility = 'hidden';
			alert("O campo não pode ter mais de 255 caracteres");
			return;
		}
	}
	if (err != 0) {
		carregando.style.visibility = 'hidden';
		alert("Você deve preencher os campos: "+err);
		return;
	}
	// --
		eval("campo = document.getElementById('dt_saida"+aux+"').value");
	if (campo != ""){
		if(campo){
			// VALIDA A DATA
			var ver_mes = campo.substr(0,2);
			var ver_ano = campo.substr(3,4);
			// não possui dia | PREENCHEMOS COM 01 por default
			var ver_dia = "01";
			var r_isDate = isDate(ver_ano,ver_mes,ver_dia);
			if(r_isDate == 1 || ver_ano.length < 4){
				carregando.style.visibility = 'hidden';
				alert("Data Inválida. Por favor digite a data no formato DD/MM/AAAA");
				return;
			}else if(r_isDate == 2){
				carregando.style.visibility = 'hidden';
				alert("Data Inválida. Dia maior que 31");
				return;
			}else if(r_isDate == 3){
				carregando.style.visibility = 'hidden';
				alert("Data Inválida. Mês Maior que 12");
				return;
			}else if(r_isDate == 4){
				carregando.style.visibility = 'hidden';
				alert("Data Inválida. Este mês não tem 31 dias");
				return;
			}else if(r_isDate == 5){
				carregando.style.visibility = 'hidden';
				alert("Data Inválida. Fevereiro só tem 28 dias");
				return;
			}else if(r_isDate == 6){
				carregando.style.visibility = 'hidden';
				alert("Data Inválida. ANO BISSEXTO, Fevereiro só tem 29 dias");
				return;
			}	
		}
		var saida = '01/' + campo;
	}else{
		saida = '';	
	}
	var xmlHttp = createHttp();
	xmlHttp.open("post","sec/profissional.asp", true);
	xmlHttp.setRequestHeader('encoding','ISO-8859-1');
	xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
	eval("send_info = 'id_profissional=' + extra + '&nome_empresa=' + encodePOST(document.getElementById('nome_empresa"+aux+"').value) + '&cargo=' + encodePOST(document.getElementById('cargo"+aux+"').value) + '&dt_entrada=01/' + document.getElementById('dt_entrada"+aux+"').value + '&dt_saida='+ saida + '&atividade=' + encodePOST(document.getElementById('atividade"+aux+"').value) + '&motivo_saida=' + encodePOST(document.getElementById('motivo_saida"+aux+"').value)");
	eval("campo = document.getElementById('atual"+aux+"')");
	if (campo.checked == true)
		send_info += '&atual=1';
	else
		send_info += '&atual=0';
		
	xmlHttp.send(send_info);
	xmlHttp.onreadystatechange = function()
	{
		if(xmlHttp.readyState == 4)
		{
//					document.getElementById("conteudo").innerHTML =  xmlHttp.responseText;
				cadastro(6,2);
		}
	}
}

/* FUNÇÃO QUE EXCLUI OS INFO DE INFORMATICA - utilizando AJAX */
function exclui_profissional(aux)
{
	if(confirm("Você tem certeza que deseja excluir este ítem?")){
		var xmlHttp = createHttp();
		xmlHttp.open("post","sec/profissional.asp?acao_ajax=excluir", true);
		xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
		eval("extra = document.getElementById('id_profissional"+aux+"').value;");
		xmlHttp.send("id_profissional=" + extra);
		xmlHttp.onreadystatechange = function()
		{
			if(xmlHttp.readyState == 4)
			{
				cadastro(6,2);
			}
		}
	}else
		return;
}



/* FUNÇÃO QUE SALVA OS INFO DE PROFISSIONAL - utilizando AJAX */
function adicional()
{
	var count = 0;
	var id_regiao = "",id_areainteresse = "",id_nivelcargo = "";
	// pega valores selecionados da regiao
	var regiao = document.getElementById('id_regiao');
	for ( i=0; i<regiao.length; i++ ) {
	//if ( Lista.options[i].value == "Outros" )	outros = i;
		if (regiao.options[i].selected) {
			count = count + 1;
			if (count > 1)
				id_regiao += "^";
			id_regiao += regiao.options[i].value;
		}
	}
	
	var count = 0;
	// pega valores selecionados da area interesse
	var areainteresse = document.getElementById('id_areainteresse');
	for ( i=0; i<areainteresse.length; i++ ) {
	//if ( Lista.options[i].value == "Outros" )	outros = i;
		if (areainteresse.options[i].selected) {
			count = count + 1;
			if (count > 1)
				id_areainteresse += "^";
			id_areainteresse += areainteresse.options[i].value;
		}
	}
	
	var count = 0;
		// pega valores selecionados da area interesse
	var nivelcargo = document.getElementById('id_nivelcargo');
	for ( i=0; i<nivelcargo.length; i++ ) {
	//if ( Lista.options[i].value == "Outros" )	outros = i;
		if (nivelcargo.options[i].selected) {
			count = count + 1;
			if (count > 1)
				id_nivelcargo += "^";
			id_nivelcargo += nivelcargo.options[i].value;
		}
	}
	
	// --
	
	var xmlHttp = createHttp();
	xmlHttp.open("post","sec/adicional.asp", true);
	xmlHttp.setRequestHeader('encoding','ISO-8859-1');
	xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
	send_info = "id_regiao = "+ id_regiao +"&id_areainteresse = "+ id_areainteresse +"&id_nivelcargo = "+ id_nivelcargo
	xmlHttp.send(send_info);
	xmlHttp.onreadystatechange = function()
	{
		if(xmlHttp.readyState == 4)
		{
//					document.getElementById("conteudo").innerHTML =  xmlHttp.responseText;
				cadastro(7,2);
		}
	}
}


/* FUNÇÃO QUE EXIBE AS CIDADES - utilizando AJAX */
function setRegion()
{
	var xmlHttp = createHttp();
	xmlHttp.open("post","sec/cidade.asp", true);
	xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
	xmlHttp.onreadystatechange = function()
	{
		if(xmlHttp.readyState == 4)
		{
			
			//-- Busca múltiplas ocorrências / Searches for multiple matches ----
			function getNames(o, search){
				if(search = search.toLowerCase())
					for(var i = -1, l = list.length; ++i < l;){
						/*procura todas as ocorrências de "search" e adiciona os índices em um array
						searches all the matches of "search" and adds the indexes in an array */
						for(var j = 0, indices = []; j = list[i].toLowerCase().indexOf(search, j) + 1;
							indices[indices.length] = j - 1);
						/*se alguma ocorrência foi encontrada, adiciona o item e passa a posição das ocorrências
						if any ocurrence was found, adds the item and pass the position of the matches*/
						if(indices.length)
							o.add(list[i], indices);
					}
				o.show();
			}


			//document.all.combcity.innerHTML = xmlHttp.responseText;
			document.getElementById("combcity").innerHTML = xmlHttp.responseText;
			var lista = document.getElementById("list").value;
			var a_list = lista.split(",");
				var list = new Array;
				for(var i = 0, l = a_list.length; i < l;){
					list[i] = a_list[i];
					i++;
				}
			list.sort();
				new IncrementalSearch(document.getElementById("id_cidade"), getNames, "autocomplete");

		}
	}
	xmlHttp.send("id_uf=" + document.getElementById("id_uf").value);
}


/* FUNÇÃO QUE EXIBE OS MENUS DO CADSTRO DE USUARIOS - utilizando AJAX */
function menu_cadastro(n,m)
{
var conteudo;		// ID da DIV do qual o AJAX irá retornar o conteúdo

	/*
id_regiao		descricao
1						São Paulo
2						Campinas
3						Manaus
	
	*/
	
	// Bloqueia duplo clique
	
	var xmlHttp = createHttp();
	
	conteudo = document.getElementById("menu_cadastro");
	
	
	// Exibe texto "carregando..." na tela do usuário enquanto AJAX não retornar resposta
//	conteudo.innerHTML = '<div class="carregando">carregando...</div>';

	xmlHttp.open("post","_inc/menu_cadastro.asp?item="+n+"&menu="+m, true);
	xmlHttp.send(null);

	xmlHttp.onreadystatechange = function()
	{
		if(xmlHttp.readyState == 4)
		{
			if (conteudo)
				conteudo.innerHTML = xmlHttp.responseText;
		}
	}
}

// FUNÇÃO DE MOSTRA O CAMPO COM A LISTA DE DEFICIENCIAS
function deficiencia(){
	def = document.getElementById("deficiencia");
	chk = document.getElementById("deficiente");
	if(chk.checked)
		def.style.display = "";
	else
		def.style.display = "none";
}


// FUNÇÃO QUE ESCREVE O NOME DO USUARIO NA BARRA DE LOGON
function logon(nome,id){
	var login; // DIV onde ficará as informações de LOGIN
	login = document.getElementById("login");
	login.innerHTML = "<div id='loged'>Ola, "+nome+"&nbsp;<input type='button' id='logoff' value=' Sair ' onclick='logoff("+id+")' /><input type='button' id='alterar_cad' class='botao' value='Alterar Meus Dados' onclick='javascript: cadastro(1,1);' /></div>";
	document.getElementById("minhas_vagas").innerHTML = '<a href="javascript:minhasvagas();">Minhas Vagas</a>';
}

// FUNÇÃO QUE RETIRA O NOME DO USUARIO NA BARRA DE LOGON E MATA A SESSION(ID_USUARIO)
function logoff(nome,id){
	var login; // DIV onde ficará as informações de LOGIN
	login = document.getElementById("login");
	
	var xmlHttp = createHttp();
	xmlHttp.open("post","_inc/logoff.asp", true);
	xmlHttp.send(null);
	login.innerHTML = '<form action="javascript: cadastro(1);" target="_parent" id="cad_login">CPF<input type="text" id="cpf"  maxlength="11" />SENHA<input type="password" id="senha" /><input type="submit" id="submit" class="botao" value="Ok" /></form>';
}
/* Detecta browser */
var BrowserDetect = {
	init: function () {
		this.browser = this.searchString(this.dataBrowser) || "An unknown browser";
		this.version = this.searchVersion(navigator.userAgent)
			|| this.searchVersion(navigator.appVersion)
			|| "an unknown version";
		this.OS = this.searchString(this.dataOS) || "an unknown OS";
	},
	searchString: function (data) {
		for (var i=0;i<data.length;i++)	{
			var dataString = data[i].string;
			var dataProp = data[i].prop;
			this.versionSearchString = data[i].versionSearch || data[i].identity;
			if (dataString) {
				if (dataString.indexOf(data[i].subString) != -1)
					return data[i].identity;
			}
			else if (dataProp)
				return data[i].identity;
		}
	},
	searchVersion: function (dataString) {
		var index = dataString.indexOf(this.versionSearchString);
		if (index == -1) return;
		return parseFloat(dataString.substring(index+this.versionSearchString.length+1));
	},
	dataBrowser: [
		{ 	string: navigator.userAgent,
			subString: "OmniWeb",
			versionSearch: "OmniWeb/",
			identity: "OmniWeb"
		},
		{
			string: navigator.vendor,
			subString: "Apple",
			identity: "Safari"
		},
		{
			prop: window.opera,
			identity: "Opera"
		},
		{
			string: navigator.vendor,
			subString: "iCab",
			identity: "iCab"
		},
		{
			string: navigator.vendor,
			subString: "KDE",
			identity: "Konqueror"
		},
		{
			string: navigator.userAgent,
			subString: "Firefox",
			identity: "Firefox"
		},
		{
			string: navigator.vendor,
			subString: "Camino",
			identity: "Camino"
		},
		{		// for newer Netscapes (6+)
			string: navigator.userAgent,
			subString: "Netscape",
			identity: "Netscape"
		},
		{
			string: navigator.userAgent,
			subString: "MSIE",
			identity: "Explorer",
			versionSearch: "MSIE"
		},
		{
			string: navigator.userAgent,
			subString: "Gecko",
			identity: "Mozilla",
			versionSearch: "rv"
		},
		{ 		// for older Netscapes (4-)
			string: navigator.userAgent,
			subString: "Mozilla",
			identity: "Netscape",
			versionSearch: "Mozilla"
		}
	],
	dataOS : [
		{
			string: navigator.platform,
			subString: "Win",
			identity: "Windows"
		},
		{
			string: navigator.platform,
			subString: "Mac",
			identity: "Mac"
		},
		{
			string: navigator.platform,
			subString: "Linux",
			identity: "Linux"
		}
	]

};
BrowserDetect.init();

// funçaõ codifica o que vai por POST
function encodePOST(value) {
	var ret=new String();
	for(var i=0;i<value.length;i++) {
		if (isAlphanumeric(value.charAt(i)))	ret+=value.charAt(i);
		else									ret+="%"+Hex(value.charCodeAt(i));
	}
	return ret;
}

function isAlphanumeric(value) {
	return value.match (/^\w$/)==value;
}
function enHex(aDigit) {
    return("0123456789ABCDEF".substring(aDigit, aDigit+1))
}
function Hex(n) {
    return (enHex((0xf0 & n) >>  4)+enHex((0x0f & n) >>  0))
}

function lembrete(){
	bd = document.getElementById("email_bd");
	valida = document.getElementById("email_valida");
	if(bd && valida){
		if (bd.value == valida.value){
			document.getElementById("span_lembrete").style.display="";
			return;
		}else{
			alert("E-Mail inválido");
			return;
		}
	}else{
		alert("Favor digitar um e-mail");
		return;
	}
}

function Vermult(Lista) {
	var opcoes = '';
	var count = 0;
	var count2 = 0;

	for ( i=0; i<Lista.length; i++ ) {
		//if ( Lista.options[i].value == "Outros" )	outros = i;
		if (Lista.options[i].selected) {
			count = count + 1;
			if ( count > 3 ) {
				alert('selecione apenas 3')
				for ( j=0; j<Lista.length; j++ ) {
					Lista.options[j].selected = false;
				}
			}
		}
	}
	/*////if ( Lista.options[outros].selected )	document.getElementById('txt_regiao').style.display = '';
////	else
//	//document.getElementById('txt_regiao').style.display = 'none';*/
}