/**
  * Constrói uma nova Entity orientador com base nos dados da view-model
  * @return \Entity\Orientador
  */
 public function load_orientador()
 {
     $orientador = new \Entity\Orientador();
     $orientador->setUsuario($this->load_user());
     $orientador->setTipoServidor($this->tipoServidor);
     return $orientador;
 }
Пример #2
0
 /**
  * adiciona o usuário já cadastrado ao papel de orientador
  * @param  int $campus_id o id do campus no banco
  * @param  int tipo_servidor 1 - Docente, 2 - Técnico administrativo
  * @return void
  */
 public function fazerCadastroIncremental($campus_id, $tipoServidor)
 {
     $this->em->beginTransaction();
     try {
         $session_user = $this->usuario_bo->getUserSession();
         $user = $this->usuario_bo->findUserById($session_user['id']);
         $orientador_orig = $this->orientador_dao->find_orientador_by_cpf($user->getCpf());
         if ($orientador_orig != NULL) {
             $this->CI->session->set_flashdata('erro', 'Este orientador já existe.');
             throw new Exception("Este orientador já existe", 2);
         }
         $orientador = new Entity\Orientador();
         $orientador->setUsuario($user);
         $orientador->setTipoServidor($tipoServidor);
         $this->fazerCadastroOrientadorAux($orientador, $campus_id);
         $this->em->flush();
         $this->em->refresh($user);
         $this->usuario_bo->redefinirUserRegras($user->getIdUsuario());
         sendEmailAfterRecordUser($user->getCpf(), $user->getNome(), $user->getEmail(), "orientador");
         return $user->getIdUsuario();
     } catch (Exception $ex) {
         $this->CI->log->write_log('error', $ex->getMessage());
         $this->em->getConnection()->rollBack();
     }
 }