public function cadastrar_autor(\Entity\Autor $autor, \Entity\Usuario $usuario, $curso_id) { $this->em->getConnection()->beginTransaction(); try { $autor_orig = $this->autor_dao->find_autor_by_cpf($usuario->getCpf()); if ($autor_orig != NULL) { $this->CI->session->set_flashdata('erro', 'Este autor já existe.'); throw new Exception("Este autor já existe", 2); } // TODO: consultar CPF aqui, mover para um método abstrato no usuario_bo $senha = $usuario->getSenha(); $usuario->setSenha(md5($senha)); $this->usuario_dao->insert($usuario); $autor->setUsuario($usuario); $this->fazerCadastroAutorAux($autor, $curso_id); $this->em->flush(); $this->em->refresh($autor); $this->usuario_bo->redefinirUserRegras($usuario->getIdUsuario()); sendEmailAfterRecordUser($usuario->getCpf(), $usuario->getNome(), $usuario->getEmail(), "autor"); return $usuario->getIdUsuario(); } catch (Exception $ex) { $this->em->getConnection()->rollBack(); $this->CI->log->write_log('error', $ex->getMessage()); } return false; }
public function jsonSerialize() { $this->__load(); return parent::jsonSerialize(); }