public function aprovacaoProf() { $usuario = TableRegistry::get("usuario"); $id = $this->request->data['idSolicitacao']; $alteracao = ''; $solicitacao = $this->Solicitacao->get($id, ['contain' => []]); $user = $usuario->get($solicitacao->idUsuario); $user->data_exp = $this->request->data['expiracao']; $data = trim(str_replace('00:00', '', explode('T', $user->data_exp)[0])); $ano = explode('/', $data)[2]; $dataPronta = $ano . explode('/', $data)[1] . explode('/', $data)[0]; $user->data_exp = $dataPronta; $user->ativo = true; $user->pendente = false; if ($usuario->save($user)) { $ldap = new LDAP(3); $obj['smtDataExpiracao'] = $dataPronta; $obj['smtBool'] = 'TRUE'; $retorno = $ldap->modifyUser($user->login, $obj); $solicitacao->executor = $this->request->session()->read('usuario')->idUsuario; $solicitacao->executado = true; $this->Solicitacao->save($solicitacao); } $auditoriaTable = TableRegistry::get("Auditoria"); $auditoria = $auditoriaTable->newEntity(); $auditoria->idObjeto = $solicitacao->idUsuario; $auditoria->objeto = 'Solicitação'; $auditoria->acao = 'Aprovação de Aluno pelo Professor'; //$auditoria->dataAcao = (new \DateTime())->format('Y-m-d H:i:s'); $auditoria->idUsuario = $session = $this->request->session()->read('usuario')->idUsuario; $auditoriaTable->save($auditoria); $this->Flash->success(__('Usuário Aprovado.')); $this->set(compact('user', 'obj', 'data', 'ano', 'dataPronta')); return $this->redirect(['action' => 'index']); }
public function edicao() { $id = $this->request->session()->read('usuario')->idUsuario; $usuario = $this->Usuario->get($id, ['contain' => []]); $professores = $this->Usuario->find('list')->where(['idTipoUsuario' => 2, 'historico' => 0]); $antigo = $this->Usuario->get($id, ['contain' => []]); if ($this->request->is(['patch', 'post', 'put'])) { $usuario = $this->Usuario->patchEntity($usuario, $this->request->data); if ($this->Usuario->save($usuario)) { $obj = $this->implementaAuditoriaUsuario($antigo, $usuario); $ldap = new LDAP(3); //$obj = $ldap->monta_objeto($usuario,false); $retorno = $ldap->modifyUser($antigo->login, $obj); $this->Flash->success(__('Usuario Alterado.')); if (isset($this->request->data['self'])) { return $this->redirect(['action' => 'meuperfil']); } } else { $this->Flash->error(__('Problema ao alterar usuario.')); } } $categoria = $this->Usuario->Categoria->find('list', ['limit' => 200])->where(['Categoria.historico' => 0]); $projeto = $this->Usuario->Projeto->find('list', ['limit' => 200])->where(['Projeto.historico' => 0]); $tipoUsuarios = $this->Usuario->TipoUsuarios->find('list', ['limit' => 200]); $this->set(compact('usuario', 'categoria', 'projeto', 'tipoUsuarios', 'antigo', 'obj', 'retorno', 'professores')); $this->set('_serialize', ['usuario']); }
public function redefinir() { $ldap = new LDAP(3); $this->layout = false; $token = TableRegistry::get("token"); $mensagem = ''; if ($this->request->is('post')) { $senha = $this->request->data['senha']; $senha_conf = $this->request->data['confirmar']; $id = $this->request->data['token']; if ($id != '') { if ($senha == $senha_conf) { $obj = $token->get($id); $email = $obj->email; //$login = $ldap->getUsers("(uid=$email)")[0]['uid'][0]; $data['userPassword'] = '******' . $this->criptografia($senha); $ldap->modifyUser(str_replace('@smt.ufrj.br', '', $email), $data); $token->delete($obj); $mensagem = 9; } else { $mensagem = 10; $obj->id = $id; } return $this->redirect(['controller' => 'login', 'action' => 'index', $mensagem]); } } else { if (isset($this->request->query['token'])) { $hash = $this->request->query['token']; $query = $token->find('all', ['conditions' => ['token.hash' => $hash]]); $number = $query->count(); if ($number > 0) { $obj = $query->first(); } else { $mensagem = 3; return $this->redirect(['controller' => 'login', 'action' => 'index', $mensagem]); } } } $this->set(compact('obj', 'mensagem')); }