/**
  * Realiza a inscrição
  * @return null
  */
 public function fazer_inscricao()
 {
     $data = $this->input->post();
     $this->orientador_inscricao_vm->setCpf($data['cpf']);
     $this->orientador_inscricao_vm->setNome($data['nome']);
     $this->orientador_inscricao_vm->setEmail($data['email']);
     $this->orientador_inscricao_vm->setSenha($data['senha']);
     $this->orientador_inscricao_vm->setInstituicao($data['instituicao']);
     $this->orientador_inscricao_vm->setCampus($data['campus']);
     $this->orientador_inscricao_vm->setTipoServidor($data['tipo_servidor']);
     // TODO: refatorar!! Validações sempre no ViewModel
     if (comparar_email_confirmacao($data)) {
         $this->session->set_flashdata('aviso', 'Os e-mails não conferem');
         $this->inscricao_falha();
         return;
     }
     if (comparar_senha_confirmacao($data)) {
         $this->session->set_flashdata('aviso', 'As senhas não conferem');
         $this->inscricao_falha();
         return;
     }
     $orientador = $this->orientador_inscricao_vm->load_orientador();
     $usuario = $this->orientador_inscricao_vm->load_user();
     if (array_key_exists('senha', $data)) {
         $id_orientador = $this->orientador_bo->cadastrar_orientador($orientador, $usuario, $this->orientador_inscricao_vm->getCampus());
         if ($id_orientador) {
             $this->usuario_bo->setUserSession($id_orientador);
             $this->session->set_flashdata('sucesso', 'Dados cadastrados com sucesso!');
             redirect(base_url() . './usuario/orientador_ctr');
         } else {
             $this->session->set_flashdata('erro', 'Aconteceu algum erro. O usuário não foi cadastrado!');
         }
     }
     redirect('../usuario/orientador_ctr/inscricao/' . $data['cpf']);
 }
 public function fazer_inscricao()
 {
     $data = $this->input->post();
     $this->avaliador_vm->populate();
     if (comparar_email_confirmacao($data)) {
         $this->session->set_flashdata('aviso', 'Os e-mails não conferem');
         $this->inscricao_falha();
         return;
     }
     if (comparar_senha_confirmacao($data)) {
         $this->session->set_flashdata('aviso', 'As senhas não conferem');
         $this->inscricao_falha();
         return;
     }
     if (!$this->avaliador_vm->validate()) {
         $this->session->set_flashdata('erro', 'Os dados não foram preenchidos corretamente');
         $this->inscricao_falha();
         return;
     }
     $avaliador = $this->avaliador_vm->loadAvaliador();
     $usuario = $this->avaliador_vm->loadUsuario();
     $campus_id = $this->avaliador_vm->get_campus();
     $area_id = $this->avaliador_vm->get_areaTematica();
     $id_avaliador = $this->avaliador_bo->cadastrar_avaliador($avaliador, $usuario, $campus_id, $area_id);
     if ($id_avaliador) {
         $this->usuario_bo->setUserSession($id_avaliador);
         $this->session->set_flashdata('sucesso', 'Dados cadastrados com sucesso!');
         redirect(base_url() . './usuario/avaliador_ctr');
     } else {
         $this->session->set_flashdata('erro', 'Aconteceu algum erro. O usuário não foi cadastrado!');
     }
 }
 public function fazer_inscricao()
 {
     $this->voluntario_inscricao_vm->populate();
     try {
         $this->voluntario_inscricao_vm->validate();
         $voluntario = $this->voluntario_inscricao_vm->loadVoluntario();
         $usuario = $this->voluntario_inscricao_vm->loadUsuario();
         $curso_id = $this->voluntario_inscricao_vm->getCurso();
         $voluntario_id = $this->voluntario_bo->cadastrarVoluntario($voluntario, $usuario, $curso_id);
     } catch (Exception $ex) {
         $this->session->set_flashdata('erro', $ex->getMessage());
         $this->inscricao_falha();
     }
     if ($voluntario_id) {
         $this->usuario_bo->setUserSession($voluntario_id);
         $this->session->set_flashdata('sucesso', 'Dados cadastrados com sucesso!');
         redirect(base_url() . './usuario/voluntario_ctr');
     } else {
         $this->session->set_flashdata('erro', 'Aconteceu algum erro. O usuário não foi cadastrado!');
     }
 }
 public function fazer_inscricao()
 {
     $this->ouvinte_inscricao_vm->populate();
     try {
         $this->ouvinte_inscricao_vm->validate();
         $ouvinte = $this->ouvinte_inscricao_vm->loadOuvinte();
         $usuario = $this->ouvinte_inscricao_vm->loadUsuario();
         $instituicao_id = $this->ouvinte_inscricao_vm->getInstituicao();
         $campus_id = $this->ouvinte_inscricao_vm->getCampus();
         $curso_id = $this->ouvinte_inscricao_vm->getCurso();
         $id_ouvinte = $this->ouvinte_bo->cadastrarOuvinte($ouvinte, $usuario, $instituicao_id, $campus_id, $curso_id);
     } catch (Exception $ex) {
         $this->session->set_flashdata('erro', $ex->getMessage());
         $this->inscricao_falha();
     }
     if ($id_ouvinte) {
         $this->usuario_bo->setUserSession($id_ouvinte);
         $this->session->set_flashdata('sucesso', 'Dados cadastrados com sucesso!');
         redirect(base_url() . './usuario/ouvinte_ctr');
     } else {
         $this->session->set_flashdata('erro', 'Aconteceu algum erro. O usuário não foi cadastrado!');
     }
 }