var lastCep = undefined;

function desabilitarCampos() {
    document.inscricaoCandidato.nomeLogradouro.disabledOnUpdate = true;
    document.inscricaoCandidato.nomeLogradouro.disabledOnInsert = true;    
    document.inscricaoCandidato.bairro.disabledOnUpdate = true;
    document.inscricaoCandidato.bairro.disabledOnInsert = true;    
    document.inscricaoCandidato.ufEnd.disabledOnUpdate = true;
    document.inscricaoCandidato.ufEnd.disabledOnInsert = true;    
    document.inscricaoCandidato.municipioEnd.disabledOnUpdate = true;
    document.inscricaoCandidato.municipioEnd.disabledOnInsert = true;
    
    document.inscricaoCandidato.nomeLogradouro.disabled = false;      
    document.inscricaoCandidato.bairro.disabled = false;    
    document.inscricaoCandidato.ufEnd.disabled = false;    
    document.inscricaoCandidato.municipioEnd.disabled = false;

    //    document.inscricaoCandidato.enemAno.disabledOnUpdate = true;
    //    document.inscricaoCandidato.enemAno.disabledOnInsert = true;
    //    document.inscricaoCandidato.enemNotaRedacao.disabledOnUpdate = true;
    //    document.inscricaoCandidato.enemNotaRedacao.disabledOnInsert = true;
    //    document.inscricaoCandidato.enemNotaObjetiva.disabledOnUpdate = true;
    //    document.inscricaoCandidato.enemNotaObjetiva.disabledOnInsert = true;
 
    //    document.inscricaoCandidato.enemAno.disabled = true;
    //    document.inscricaoCandidato.enemNotaRedacao.disabled = true;
    //    document.inscricaoCandidato.enemNotaObjetiva.disabled = true;
    processHelp();
}

function loadConfigInscricaoCandidato() { 
    eForm = document.inscricaoCandidato;
    tableId = '';
    controller = 'InscricaoCandidatoController';
    findId = '';
    hideFunction = undefined;
    retrieveFunction = undefined;
}

function showConteudo(url) {
    //document.getElementById('loading').style.display = '';
    //document.getElementById('loadingModalDiv').style.display = '';

    ajaxRequestInternal(url,"postValues",function(retorno,sucesso) {
        if(sucesso) {
            document.getElementById("conteudo").innerHTML = retorno;
            if( url.search(/fichaInscricao/) != -1){
                showAbaInscricaoCandidato();
                loadMasks();
                desabilitarCampos();
                utilizarENEM( false );
            }
        }
    });


}

function showAbaInscricaoCandidato() {
    loadConfigInscricaoCandidato();
    loadCombo("loadComboEstadoCivil");
    loadCombo('loadComboTipoLogradouro');
    loadCombo('loadComboUfEnd');
    loadCombo('loadComboMunicipioEnd');
    loadCombo('loadComboUfNasc');
    loadCombo('loadComboMunicipioNasc');
    loadCombo('loadComboRgUfExpeditor');
    loadCombo('loadComboProcessoSeletivoCursoFase');
    //loadCombo('loadComboSegundaOpcao');
    loadCombo('loadComboNacionalidade');
    loadCombo('loadComboTipoTelefone1');
    loadCombo('loadComboTipoTelefone2');
    loadCombo('loadComboTipoTelefone3');
    loadCombo('loadComboTipoTelefone4');
    loadCombo('loadComboProfissao');
    loadCombo('loadComboCondicaoEspecial');
    document.inscricaoCandidato.nome.focus();
}

function loadCombo(action) {
    var fElements = new Array();

    for(var i=0; i<eForm.elements.length; i++) {
        fElements.push(eForm.elements[i]);
    }
    var params = fieldsToObject(fElements);

    executeActionParams(controller, action, params, function(retorno) {
        if(retorno.sucess) {
            processAction(retorno);
        } else {
            alert(retorno.message);
        }
    });
}

function fieldsToObject(elementos) {
    var retorno = new Object();
    for(var i=0; i < elementos.length; i++) {
        if((elementos[i].name != undefined)&&(elementos[i].name!='')&&(elementos[i].name.indexOf('$toString')<0)) {
            if(elementos[i].type != 'checkbox') {
                if(elementos[i].type == 'radio'){
                    if(elementos[i].checked){
                        retorno[elementos[i].name] = elementos[i].value;
                    }
                }else{
                    if(getStyle(elementos[i], 'text-transform')=='uppercase') {
                        retorno[elementos[i].name] = elementos[i].value.toUpperCase();
                    } else {
                        retorno[elementos[i].name] = elementos[i].value;
                    }
                }
            }else {
                retorno[elementos[i].name] = elementos[i].checked;
            }
        }
    }
    return retorno;
}

function getStyle(x,styleProp) 	{
    var y;
    if (x.currentStyle) {
        y = x.currentStyle[styleProp];
    } else if (window.getComputedStyle) {
        y = document.defaultView.getComputedStyle(x,null).getPropertyValue(styleProp);
    }
    return y;
}

function processTable(retorno) {
    if(retorno.table) {
        var aux = parseToObject(retorno.table);
        var data = new Object();
        data.columns =  aux.columns[0];
        data.rows =  aux.rows[0];

        if(aux.sum) {
            data.sum =  aux.sum;
        }

        if(aux.sumLabel) {
            data.sumLabel =  aux.sumLabel;
        }

        if(aux.links) {
            data.links = aux.links[0];
        }

        if(aux.removeLinks) {
            data.removeLinks = aux.removeLinks[0];
        }

        mountGrid( data, tableId, GRID_ROW_PER_PAGE);
    }
}

function processEntity(retorno) {
    if(retorno.entity) {
        if(eForm != undefined) {
            clear$ToString();
            objectToFields(retorno.entity, eForm.elements);
            if(postProcessEntity != undefined) {
                postProcessEntity(retorno);
            }
        } else {
            if(retrieveFunction != undefined) {
                retrieveFunction(retorno.entity);
            }
        }
    }
}

function unredfyAll() {
    var elements = document.getElementsByTagName("LABEL");
    for(var i=0; i<elements.length; i++) {
        if(elements[i].parentNode.id != 'abas') {
            elements[i].style.color = "black";
        }
    }
}

function getFormState() {
    return JSON.stringify(fieldsToObject(eForm.elements));
}

function processAction(retorno) {
    if(eForm!=undefined) if(eForm.preProcess != undefined) eForm.preProcess();
    var browserName = navigator.appName;
    if(retorno.sucess) {
        processTable(retorno);
        if ( browserName == "Microsoft Internet Explorer" ) {
            processComboIE(retorno);
        } else {
            processCombo(retorno);
        }
        processEntity(retorno);
        if(eForm != undefined) {
            unredfyAll(eForm);
            eForm.state = getFormState(eForm);
            if(eForm.elements.length > 0) {
                //ALTERADO (COMENTADO/INATIVADO) POR EDUARDO PARA RESOLVER UM PROBLEMA PONTUAL, DEPOIS VERIFICAR A
                ////MELHOR MANEIRA DE SE PROCEDER, POIS AO DAR UM LOAD NUM COMBO, O CURSOR RETORNA AO
                //PRIMEIRO CAMPO, E NO CASO ESPECIFICO DEVERIA IR PARA O COMBO SEGUINTE
                //
                eForm.elements[0].focus();
            }
        }

    } else {
    //processErrorFields(retorno)
    }

    if(eForm!=undefined) if(eForm.posProcess !=undefined) eForm.posProcess(retorno);

}

function processCombo(retorno) {
    if(retorno.combos && eForm!=undefined) {
        var elements = eForm.elements;
        for(var i=0 ; i< elements.length; i++) {
            if(retorno.combos[elements[i].name]) {
                var comboData = '';
                var combo = retorno.combos[elements[i].name][0];
                if(elements[i].parentNode.tagName != 'AUTOSUGEST') {

                    if(((!elements[i].req)||(combo.length != 1))&&(elements[i].noSelect!=true) || (elements[i].sel)) {
                        comboData += "<option value=''>[-Selecione-]</option>";
                    }

                    for(var j=0 ; j < combo.length ; j++) {
                        comboData += "<option value='" + combo[j].value + "'>" + combo[j].label + "</option>";
                    }

                    elements[i].innerHTML = comboData;
                    if((elements[i].lastValue != undefined)&& (elements[i].lastValue != '')) {
                        setSelectValue(elements[i], elements[i].lastValue);
                        elements[i].lastValue = undefined;
                    }

                    if((elements[i].req)&&(combo.length == 1)) {
                        if(elements[i].onchange!=undefined) {
                            elements[i].onchange();
                        }
                    }
                } else {

                    for(var j=0 ; j < combo.length ; j++) {
                        //comboData += '<asitem style="display : block;" onclick="as_selectItem(' + elements[i].name + ', ' +  combo[j].value + '); onmouseover="javascript: as_select(this);as_over(this);" onmouseout="javascript: as_unselect(this);as_out(this);">' + combo[j].label + '</asitem>';
                        comboData += '<asitem style="display : block;"  onclick="as_selectItem(\'' + elements[i].name + '\', \'' +  combo[j].value + '\', this.innerHTML);" onmouseover="javascript: as_select(this);as_over(this);" onmouseout="javascript: as_unselect(this);as_out(this);">' + combo[j].label + '</asitem>';
                    }

                    var nodes = elements[i].parentNode.childNodes;
                    for(var p=0; p<nodes.length; p++) {
                        if(nodes[p].tagName=='DIV') {
                            nodes[p].innerHTML = comboData;
                            break;
                        }
                    }

                }
            }
        }

        elements = document.getElementsByTagName("selector");
        for(var i=0; i<elements.length; i++) {
            if(retorno.combos[elements[i].id]) {
                var combo = retorno.combos[elements[i].id][0];
                elements[i].sourceList.clear();
                for(var j=0 ; j < combo.length ; j++) {
                    if (isNaN(combo[j].value)){
                        if(elements[i].selectedList.getElement(combo[j].value)==undefined) {
                            elements[i].sourceList.put(combo[j].value,combo[j].label);
                        } else {
                            elements[i].sourceList.put(combo[j].value,combo[j].label, true);
                        }
                    }else{
                        if(elements[i].selectedList.getElement(parseInt(combo[j].value))==undefined) {
                            elements[i].sourceList.put(parseInt(combo[j].value),combo[j].label);
                        } else {
                            elements[i].sourceList.put(parseInt(combo[j].value),combo[j].label, true);
                        }
                    }
                }

                elements[i].sourceList.sort();
                elements[i].renderer();
            }
        }

    }

}

function processComboIE( retorno ) {
    if(retorno.combos && eForm!=undefined) {
        var elements = eForm.elements;

        //alert(elements.length);
        for(var i=0 ; i< elements.length; i++) {

            if(retorno.combos[elements[i].name]) {
                var combo = retorno.combos[elements[i].name][0];

                if(elements[i].parentNode.tagName != 'AUTOSUGEST') {
                     var obj = elements[i];

                    if(((!elements[i].req)||(combo.length != 1))&&(elements[i].noSelect!=true) || (elements[i].sel)) {
                        obj.options[obj.length] = new Option( "[-Selecione-]","");

                    }

                    for(var j=0 ; j < combo.length ; j++) {
                        obj.options[obj.length] = new Option( combo[j].label, combo[j].value);
                    }

                    if((elements[i].lastValue != undefined)&& (elements[i].lastValue != '')) {
                        setSelectValue(elements[i], elements[i].lastValue);
                        elements[i].lastValue = undefined;
                    }

                    if((elements[i].req)&&(combo.length == 1)) {
                        if(elements[i].onchange!=undefined) {
                            elements[i].onchange();
                        }
                    }
                } else {
                    for(var j=0 ; j < combo.length ; j++) {
                        //comboData += '<asitem style="display : block;" onclick="as_selectItem(' + elements[i].name + ', ' +  combo[j].value + '); onmouseover="javascript: as_select(this);as_over(this);" onmouseout="javascript: as_unselect(this);as_out(this);">' + combo[j].label + '</asitem>';
                        comboData += '<asitem style="display : block;"  onclick="as_selectItem(\'' + elements[i].name + '\', \'' +  combo[j].value + '\', this.innerHTML);" onmouseover="javascript: as_select(this);as_over(this);" onmouseout="javascript: as_unselect(this);as_out(this);">' + combo[j].label + '</asitem>';
                    }
                    var nodes = elements[i].parentNode.childNodes;
                    for(var p=0; p<nodes.length; p++) {
                        if(nodes[p].tagName=='DIV') {
                            nodes[p].innerHTML = comboData;
                            break;
                        }
                    }

                }
            }
        }
        elements = document.getElementsByTagName("selector");
        for(var i=0; i<elements.length; i++) {
            if(retorno.combos[elements[i].id]) {
                var combo = retorno.combos[elements[i].id][0];
                elements[i].sourceList.clear();
                for(var j=0 ; j < combo.length ; j++) {
                    if (isNaN(combo[j].value)){
                        if(elements[i].selectedList.getElement(combo[j].value)==undefined) {
                            elements[i].sourceList.put(combo[j].value,combo[j].label);
                        } else {
                            elements[i].sourceList.put(combo[j].value,combo[j].label, true);
                        }
                    }else{
                        if(elements[i].selectedList.getElement(parseInt(combo[j].value))==undefined) {
                            elements[i].sourceList.put(parseInt(combo[j].value),combo[j].label);
                        } else {
                            elements[i].sourceList.put(parseInt(combo[j].value),combo[j].label, true);
                        }
                    }
                }
                elements[i].sourceList.sort();
                elements[i].renderer();
            }
        }
    }

}

function executeActionEntity(controllerVar, action, retFunction) {
    var sendObj = new Object();
    sendObj.entity = fieldsToObject(eForm.elements);
    sendObj.action = action;
    sendObj.controller = controllerVar;



    var elements = document.getElementsByTagName("selector");
    for(var i=0; i<elements.length; i++) {
        sendObj.entity[elements[i].id] = elements[i].getValue();
    }

    if(eForm!= undefined) {
        var auxp = getHiddenParams();
        if(auxp!=undefined) {
            sendObj.params =  auxp;
        }
    }

    var sendData = JSON.stringify(sendObj);
    ajaxRequest("../../RequestServletSP",sendData , retFunction, action);
}

function getHiddenParams() {
    var fElements = new Array();
    var achou = false;
    for(var i=0; i<eForm.elements.length; i++) {
        if(eForm.elements[i].type == 'hidden') {
            fElements.push(eForm.elements[i]);
            achou = true;
        }
    }
    if(achou==true) {
        return fieldsToObject(fElements);
    } else {
        return undefined;
    }
}

function executeActionParams(controllerVar, action, params, retFunction) {
    var sendObj = new Object();
    sendObj.action = action;
    sendObj.controller = controllerVar;
    sendObj.params = params;
    var sendData = JSON.stringify(sendObj);
    ajaxRequest("../../RequestServletSP", sendData , retFunction, action);
}
function executeActionBoleto(controllerVar, action, retFunction) {
    var sendObj = new Object();
    sendObj.action = action;
    sendObj.controller = controllerVar;

    if(eForm!= undefined) {
        sendObj.params = getHiddenParams();
    }
    var sendData = JSON.stringify(sendObj);
    ajaxRequest("../../RequestServletSP", sendData , retFunction);
}
               
function gerarInscricao() {
    executeActionEntity(controller, "save", function(retorno) {
        if(!retorno.sucess)  {
            alert(retorno.message);
        } else {
            //alert("Dados enviados com sucesso!\n\nATENÇÃO:\nPara visualização do boleto, desative o bloqueador de janelas popup do seu navegador, e pressione F5 caso não tenha aparecido o boleto automaticamente.");
            document.location.href = '../loginCandidato/index.jsp?action=boleto';
        }
    });
}

function ativaEnem(enemNumero) {
    if(enemNumero.value.length == 12){
        if(document.inscricaoCandidato.enemAno.disabledOnUpdate){
            document.inscricaoCandidato.enemAno.disabledOnUpdate = false;
            document.inscricaoCandidato.enemAno.disabledOnInsert = false;
            document.inscricaoCandidato.enemNotaRedacao.disabledOnUpdate = false;
            document.inscricaoCandidato.enemNotaRedacao.disabledOnInsert = false;
            document.inscricaoCandidato.enemNotaObjetiva.disabledOnUpdate = false;
            document.inscricaoCandidato.enemNotaObjetiva.disabledOnInsert = false;
            document.inscricaoCandidato.enemAno.disabled = false;
            document.inscricaoCandidato.enemNotaRedacao.disabled = false;
            document.inscricaoCandidato.enemNotaObjetiva.disabled = false;
        }
    }
}

function preencheEndereco(cep) {
    if(!cep.value.length >= 9){
        alert('CEP Invalido');
    }
////    if(cep.value.length >= 9){
////        if(lastCep!=cep.value) {
////            lastCep = cep.value;
////            executeActionEntity(controller, "preencheEndereco", function(retorno) {
////                if(!retorno.sucess)  {
////                    alert("CEP Inválido");
////                } else {
////                    processEntity(retorno);
////                    document.inscricaoCandidato.numeroLogradouro.focus();
////                }
////            });
////        }
////    }
}
function preencheMunicipioEnd(){
    loadCombo('loadComboMunicipioEnd');
    //document.getElementById('inscricaoCandidato:municipioEnd').focus();
    document.inscricaoCandidato.municipioEnd.focus();
}
function preencheMunicipioNasc(){
    loadCombo('loadComboMunicipioNasc');
    document.inscricaoCandidato.municipioNasc.focus();
}

function loadMasks() {
    if (  navigator.appName != "Microsoft Internet Explorer" ) {
        var decimalSeparator = ",";
        var groupSeparator = ".";
    }
   
    addMascara(document.inscricaoCandidato.cep,'#####-###')
    addMascaraData(document.inscricaoCandidato.dataNascimento)
    addMascara(document.inscricaoCandidato.responsavelCpf,'###.###.###-##')
    //addMascara(document.inscricaoCandidato.rgNumero,'###.###.###-#')
  
    //addMascaraData(document.inscricaoCandidato.rgDataExpedicao)
    addMascara(document.inscricaoCandidato.telefone1,'(##) ####-####')
    addMascara(document.inscricaoCandidato.telefone2,'(##) ####-####')
    addMascara(document.inscricaoCandidato.telefone3,'(##) ####-####')
    addMascara(document.inscricaoCandidato.telefone4,'(##) ####-####')
//      addMascara(document.inscricaoCandidato.enemNumero,'############')
//    addMascaraLong(document.inscricaoCandidato.enemAno)
//    addMascaraFloat(document.inscricaoCandidato.enemNotaRedacao,2)
//    addMascaraFloat(document.inscricaoCandidato.enemNotaObjetiva,2)
}

function verIdioma(){
    var radio_op = "";
    var counter = 0;
    for (counter = 0; counter < document.inscricaoCandidato.linguaEstrangeira.length; counter++){
        if (document.inscricaoCandidato.linguaEstrangeira[counter].checked){
            radio_op = document.inscricaoCandidato.linguaEstrangeira[counter].value;
        }
    }
    document.inscricaoCandidato.processoSeletivoLinguaEstrangeira.value = radio_op;
}
function verEnsinoMedio(){
    var radio_op = "";
    var counter = 0;
    for (counter = 0; counter < document.inscricaoCandidato.ensinoM.length; counter++){
        if (document.inscricaoCandidato.ensinoM[counter].checked){
            radio_op = document.inscricaoCandidato.ensinoM[counter].value;
        }
    }
    document.inscricaoCandidato.ensinoMedio.value = radio_op;
}

function validacoes(){
    verIdioma();
    verEnsinoMedio();

    var cpf = document.inscricaoCandidato.responsavelCpf.value;
    var rg = document.inscricaoCandidato.rgNumero.value;
    var login = document.inscricaoCandidato.login.value;
    var nacionalidade = document.inscricaoCandidato.nacionalidade.value;
    var sexo = document.inscricaoCandidato.sexo.value;
    var nome = document.inscricaoCandidato.nome.value;
    var data = document.inscricaoCandidato.dataNascimento.value;
    var email = document.inscricaoCandidato.email.value;
    var email2 = document.inscricaoCandidato.confirmarEmail.value;
    var senha = document.inscricaoCandidato.senha.value;
    var endTipoLogradouro = document.inscricaoCandidato.tipoLogradouro.value;
    var endNomeLogradouro = document.inscricaoCandidato.nomeLogradouro.value;
    var endNumeroLogradouro = document.inscricaoCandidato.numeroLogradouro.value;
    var endComplemento = document.inscricaoCandidato.complemento.value;
    var endBairro = document.inscricaoCandidato.bairro.value;
    var endcep = document.inscricaoCandidato.cep.value;
    var endMunicipioEnd = document.inscricaoCandidato.municipioEnd.value;
    var endUfEnd = document.inscricaoCandidato.ufEnd.value;
    var nomeMae = document.inscricaoCandidato.nomeMae.value;
    var tipoTelefone = document.inscricaoCandidato.tipoTelefone1.value;
    var telefone = document.inscricaoCandidato.telefone1.value;
    var tipoTelefone2 = document.inscricaoCandidato.tipoTelefone2.value;
    var telefone2 = document.inscricaoCandidato.telefone2.value;
    var estadoCivil = document.inscricaoCandidato.estadoCivil.value;
    var cursoFase = document.inscricaoCandidato.processoSeletivoCursoFase.value;
    
    var rgUfExpeditor = document.inscricaoCandidato.rgUfExpeditor.value;
    if( document.getElementById('inscricaoCandidato:ensinoMedioSim').checked == true )
        var ensinoM = true;
    else
        ensinoM = false;
    
    var nomeEscola = document.inscricaoCandidato.nomeEscola.value;
    var anoConclusao = document.inscricaoCandidato.anoConclusao.value;

    if(cursoFase == ""){
        document.inscricaoCandidato.processoSeletivoCursoFase.focus();
        alert('Nenhuma das opções de cursos foi selecionada.');
        return false;
    }

    if(nome.length < 5 || nome == "" ){
        document.inscricaoCandidato.nome.focus();
        alert('Nome vazio ou tamanhao inferior a 5(cinco) caracteres.');
        return false;
    }
    if(data == ""){
        document.inscricaoCandidato.dataNascimento.focus();
        alert('Data de nascimento em branco.');
        return false;
    }

    if(nacionalidade == ""){
        document.inscricaoCandidato.nacionalidade.focus();
        alert('Selecione o combo Nacionalidade.');
        return false;
    }

    if(sexo == ""){
        document.inscricaoCandidato.sexo.focus();
        alert('Selecione o combo Sexo.');
        return false;
    }

    if(estadoCivil == ""){
        document.inscricaoCandidato.estadoCivil.focus();
        alert('Selecione o combo Estado Civil.');
        return false;
    }

    if(nomeMae == ""){
        document.inscricaoCandidato.nomeMae.focus();
        alert('Preencha o nome da Mae.');
        return false;
    }

    if(cpf.length < 3){
        document.inscricaoCandidato.responsavelCpf.focus();
        alert('CPF Inválido, favor verificar novamente para prosseguir.');
        return false;
    }
    if(rg.length < 3){
        document.inscricaoCandidato.rgNumero.focus();
        alert('RG vazio ou tamanhao inferior a 3(três) caracteres.');
        return false;
    }

    if(rgUfExpeditor == ""){
        document.inscricaoCandidato.rgUfExpeditor.focus();
        alert('Selecione o combo Estado Expedidor do RG.');
        return false;
    }

if(login == "" || login.length < 3 ){
        alert('Login vazio ou tamanhao inferior a 3(três) caracteres.');
        document.inscricaoCandidato.login.focus();
        return false;
    }
    if(senha == "" || senha.length < 3){
        alert('Senha vazia ou tamanhao inferior a 3(três) caracteres.');
        document.inscricaoCandidato.senha.focus();
        return false;
    }

    if(endTipoLogradouro == ""){
        document.inscricaoCandidato.tipoLogradouro.focus();
        alert('Tipo Logradouro em branco.');
        return false;
    }
    if(endNomeLogradouro.length < 3){
        document.inscricaoCandidato.nomeLogradouro.focus();
        alert('Nome logradouro vazio ou tamanhao inferior a 3(três) caracteres.');
        return false;
    }
    if(endNumeroLogradouro.length < 1){
        document.inscricaoCandidato.numeroLogradouro.focus();
        alert('Número logradouro vazio ou tamanhao inferior a 1(um) caracteres.');
        return false;
    }

    if(endBairro.length < 3){
        document.inscricaoCandidato.bairro.focus();
        alert('Bairro vazio ou tamanhao inferior a 3(três) caracteres.');
        return false;
    }
    if(endMunicipioEnd == ""){
        document.inscricaoCandidato.municipioEnd.focus();
        alert('Municipio em branco.');
        return false;
    }
    if(endUfEnd == ""){
        document.inscricaoCandidato.ufEnd.focus();
        alert('UF em branco.');
        return false;
    }
    if(endcep.length < 5){
        document.inscricaoCandidato.cep.focus();
        alert('CEP vazio ou tamanhao inferior a 5(cinco) caracteres.');
        return false;
    }

    if(email != email2 || email.length < 3){
        document.inscricaoCandidato.email.focus();
        alert('Os endereços de e-mail digitados não são iguais ou estão vazios');
        return false;
    }

    if(tipoTelefone == ""){
        alert('Tipo do telefone em branco.');
        document.inscricaoCandidato.tipoTelefone1.focus();
        return false;
    }
    if(telefone.length < 10){
        alert('Telefone vazio ou tamanhao inferior a 10(dez) caracteres.');
        document.inscricaoCandidato.telefone1.focus();
        return false;
    }

    /*if(tipoTelefone2 == ""){
        alert('Tipo do telefone 02 em branco.');
        document.inscricaoCandidato.tipoTelefone2.focus();
        return false;
    }
    if(telefone2.length < 10){
        alert('Telefone 02 vazio ou tamanhao inferior a 10(dez) caracteres.');
        document.inscricaoCandidato.telefone2.focus();
        return false;
    }*/

    if( ensinoM == true ){/*
        if( nomeEscola == "" ){
            alert('Preencha o campo Nome da Escola onde você Concluiu o Ensino Médio.');
            document.inscricaoCandidato.nomeEscola.focus();
            return false;
        }
        if( anoConclusao == "" ){
            alert('Preencha o campo Ano de Conclusão onde você Concluiu o Ensino Médio.');
            document.inscricaoCandidato.anoConclusao.focus();
            return false;
        }
    */}

    gerarInscricao()
    return true;
}

function validacaoDataProcessoSeletivo(){
    document.getElementById('divProtected').style.display = '';
    document.body.style.overflow = 'hidden';
}


















function ajaxRequest(link,valores,funcao) {
    ajaxRequestInternal(link,valores,function(retorno,sucesso) {
        var retObj;
	if(sucesso) {
            try {
                retObj = parseToObject(retorno) ;
            } catch (e) {
                retObj = {sucess : false , message : 'ERRO: Problemas ao executar a operacao!'};
            }
	}
	if(!retObj) retObj = {sucess : false , message : 'ERRO: Problemas ao executar a operacao!'};
        funcao(retObj);

    });
}


function ajaxRequestInternal(url,postValues,returnFunction) {
    this.url = url;
    this.postValues = postValues;
    this.xmlhttp = false;

    this.create = function() {
        try {
            this.xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
        } catch (e) {
            try {
                this.xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
            } catch (E) {
                this.xmlhttp = false;
            }
        }
        if (!this.xmlhttp && typeof XMLHttpRequest!='undefined') {
            try {
                this.xmlhttp = new XMLHttpRequest();
            } catch (e) {
                this.xmlhttp = false;
            }
        }
        if (!this.xmlhttp && window.createRequest) {
            try {
                this.xmlhttp = window.createRequest();
            } catch (e) {
                this.xmlhttp=false;
            }
        }
    }

    this.send = function() {
        var sendData = '';
        sendData += this.postValues;
        var xh = this.xmlhttp;
        xh.open("POST",this.url,true);
        xh.onreadystatechange = function() {
            if (xh.readyState == 4) {
                if (true || xh.status == 200 || xh.status == 304)	{
                    returnFunction(xh.responseText, true);
                } else {
                    returnFunction(undefined, false);
                }
            }
        };
        xh.setRequestHeader("Content-Type", "text/html; charset=UTF-8");
        xh.setRequestHeader("encoding","UTF-8");
        xh.setRequestHeader("Content-length", sendData.length );
        xh.send(sendData);
    }

    this.create();

    if (this.xmlhttp) {
        this.send();
    } else {
        alert('Este browser não suporta requisições por AJAX');
    }
}



function ajaxRequestInternalSync(url,postValues,returnFunction) {
    this.url = url;
    this.postValues = postValues;
    this.xmlhttp = false;

    this.create = function() {
        try {
            this.xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
        } catch (e) {
            try {
                this.xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
            } catch (E) {
                this.xmlhttp = false;
            }
        }
        if (!this.xmlhttp && typeof XMLHttpRequest!='undefined') {
            try {
                this.xmlhttp = new XMLHttpRequest();
            } catch (e) {
                this.xmlhttp = false;
            }
        }
        if (!this.xmlhttp && window.createRequest) {
            try {
                this.xmlhttp = window.createRequest();
            } catch (e) {
                this.xmlhttp=false;
            }
        }
    }

    this.send = function() {
        var sendData = '';
        sendData += this.postValues;
        var xh = this.xmlhttp;
        xh.open("POST",this.url,false);
        xh.onreadystatechange = function() {
            if (xh.readyState == 4) {
                if (true || xh.status == 200 || xh.status == 304)	{
                    returnFunction(xh.responseText, true);
                } else {
                    returnFunction(undefined, false);
                }
            }
        };
        xh.setRequestHeader("Content-Type", "text/html; charset=UTF-8");
        xh.setRequestHeader("encoding","UTF-8");
        xh.setRequestHeader("Content-length", sendData.length );
        xh.send(sendData);
    }

    this.create();

    if (this.xmlhttp) {
        this.send();
    } else {
        alert('Este browser não suporta requisições por AJAX');
    }
}