public function reprocessar($id = null) { $ldap = new LDAP(3); $Usuario = TableRegistry::get("usuario"); $usuarios = $Usuario->find()->where(['usuario.idUsuario' => $id]); $user = $usuarios->first(); $obj = $ldap->monta_objeto($user, true); $ldap->addUser($user->login, $obj); $this->set(compact('obj', 'user')); }
/** * Add method * * @return void Redirects on successful add, renders view otherwise. */ public function add() { $professores = $this->Usuario->find('list')->where(['idTipoUsuario' => 2, 'historico' => 0]); $usuario = $this->Usuario->newEntity(); if ($this->request->is('post')) { $obj = $this->request->data; $usuario = $this->Usuario->patchEntity($usuario, $this->request->data); $usuario->cadastro = new DateTime(); $usuario->ativo = true; $usuario->senha = 'q1w2e3r4'; $foto = $obj['foto_l']; $comp_rg = $obj['comp_rg_l']; $comp_cpf = $obj['comp_cpf_l']; $digitosCpf = array('-', '.'); $pasta = str_replace($digitosCpf, '', $usuario->cpf); $path = "//usr//share//documentosIntranet//{$pasta}//"; if (!is_dir($path)) { mkdir($path, 0777); } $usuario->foto = $path . $foto['name']; $usuario->comp_rg = $path . $comp_rg['name']; $usuario->comp_cpf = $path . $comp_cpf['name']; $dataFormatada = explode("/", $obj['exp']); $usuario->data_exp = new \DateTime($dataFormatada[2] . '-' . $dataFormatada[1] . '-' . $dataFormatada[0]); if ($this->Usuario->save($usuario)) { move_uploaded_file($foto['tmp_name'], $usuario->foto); move_uploaded_file($comp_rg['tmp_name'], $usuario->comp_rg); move_uploaded_file($comp_cpf['tmp_name'], $usuario->comp_cpf); $brisa = new Google(); $brisa->chamaGoogle()->adicionaUsuario($usuario->get('nomeUsuario'), $usuario->get('login'), 'q1w2e3r4'); $ldap = new LDAP(3); $obj = $ldap->monta_objeto($usuario, true); $retorno = $ldap->addUser($usuario->login, $obj); $email = new Email('gmail'); $email->from(['*****@*****.**' => 'Sistema Intranet SMT'])->emailFormat('html')->to($usuario->email)->subject('Dados de Acesso ao sistema')->send("<p>Seu usuário foi cadastrado. Segue os dados de acesso: </p><p>Sistema</p><table><tr><th>Usuario</th><th>Senha</th></tr><tr><td>{$usuario->login}</td><td>q1w2e3r4</td></table><p>Email SMT</p><table><tr><th>Email</th><th>Senha</th></tr><tr><td>{$usuario->login}@smt.ufrj.br</td><td>q1w2e3r4</td></table><p>Favor mudar a senha no primeiro acesso</p>"); $this->Flash->success(__('Usuário salvo com sucesso.')); //$this->Flash->success(__($ldap->adicionaUsuario($usuario->get('nomeUsuario'),$usuario->get('login')))); //return $this->redirect(['action' => 'index']); } else { $this->Flash->error(__('Problema ao salvar o usuário.')); } } $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', 'obj', 'retorno', 'professores')); $this->set('_serialize', ['usuario']); }
public function aprovacaoSU() { $usuario = TableRegistry::get("usuario"); $id = $this->request->data['idSolicitacao']; $alteracao = ''; $solicitacao = $this->Solicitacao->get($id, ['contain' => []]); $user = $usuario->get($solicitacao->idUsuario); $user->login = $this->request->data['login']; $user->data_exp = new \DateTime(); $user->ativo = false; $user->senha = 'q1w2e3r4'; if ($usuario->save($user)) { //$this->Flash->success(__('Usuario Aprovado.')); $brisa = new Google(); $brisa->chamaGoogle()->adicionaUsuario($user->get('nomeUsuario'), $user->get('login'), 'q1w2e3r4'); $ldap = new LDAP(3); $obj = $ldap->monta_objeto($user, true); $retorno = $ldap->addUser($user->login, $obj); $solicitacao->executor = $this->request->session()->read('usuario')->idUsuario; $solicitacao->executado = true; $this->Solicitacao->save($solicitacao); $professor = $this->Solicitacao->newEntity(); $professor->solicitante = $user->idUsuario; $professor->idUsuario = $user->idUsuario; $professor->tipoSolicitacao = 8; $professor->justificativa = 'Aprovação Aluno no Projeto'; $professor->professor = $user->profResponsavel; $this->Solicitacao->save($professor); $email = new Email('gmail'); $email->from(['*****@*****.**' => 'Sistema Intranet SMT'])->to($usuario->get($professor->professor)->login . '@smt.ufrj.br')->subject('Aguardando Aprovação')->send('Novo Aluno vinculado a seu projeto'); $email = new Email('gmail'); $email->from(['*****@*****.**' => 'Sistema Intranet SMT'])->emailFormat('html')->to($user->email)->subject('Dados de Acesso ao sistema')->send("<p>Seu cadastro foi aprovado pelo Administrador. Segue os dados de acesso: </p><p>Sistema</p>\n\t\t\t\t<table><tr><th>Usuario</th><th>Senha</th></tr><tr><td>{$user->login}</td><td>q1w2e3r4</td></table>\n\t\t\t\t<p>Email SMT</p><table><tr><th>Email</th><th>Senha</th></tr><tr><td>{$user->login}@smt.ufrj.br</td><td>q1w2e3r4</td></table>\n\t\t\t\t<p>Favor mudar a senha no primeiro acesso</p>"); $texto = '<p>- O usuário terá acesso a diferentes sistemas operacionais através do mesmo username (login) e a diversos equipamentos computacionais e eletrônicos. As contas são individuais e de inteira responsabilidade do usuário. É proibido empréstimo do acesso à conta do usuário, wi-fi e códigos do porteiro eletrônico a terceiros. Qualquer dano causado à rede e equipamentos SMT ou a outras redes a partir de uma conta da rede SMT será de inteira responsabilidade do proprietário da conta. </p>'; $texto .= '<p>- Os laboratórios são de uso exclusivo dos alunos, funcionários e professores do SMT ou profissionais envolvidos em projetos coordenados pelo Laboratório.</p>'; $texto .= '<p>- Não é permitido: </p>'; $texto .= '<p>a) O uso de jogos e similares;</p>'; $texto .= '<p>b) O acesso a páginas com conteúdo pornográfico;</p>'; $texto .= '<p>c) Fumar no interior do Laboratório;</p>'; $texto .= '<p>d) A instalação de programas, bem como, a alteração da configuração dos computadores sem a autorização de algum membro da administração da rede SMT;</p>'; $texto .= '<p>- Cada usuário possui um espaço limitado para armazenar dados e e-mails no domínio SMT. Ao ultrapassar o limite definido o usuário não conseguirá enviar ou receber novos e-mails, adicionar novos documentos ao drive e poderá ter problemas gerais com sua conta. Os limites para armazenamento de dados e e-mails serão de 15GB.</p>'; $texto .= '<p>- Apesar de existir um sistema de Backup, a administração da rede do SMT não pode garantir a integridade dos dados armazenados no servidor, isto é, não pode realizar cópias de segurança dos dados. Cada usuário deve manter suas cópias de segurança por conta própria em meios removíveis (HDs, CDs, etc).</p>'; $texto .= '<p>- Dicas de utilização dos recursos da rede SMT (impressoras, envio / recepção de mensagens eletrônicas, etc) podem ser encontradas na Home Page do Laboratório. (http://www.smt.ufrj.br) </p>'; $texto .= '<p>- Para acessar o seu e-mail, utilize a página de logon do SMT no endereço https://mail.google.com. </p>'; $texto .= '<p>- Dúvidas, críticas e sugestões devem ser enviadas para o endereço netnetadmin@smt.ufrj.br .</p>'; $email = new Email('gmail'); $email->from(['*****@*****.**' => 'Sistema Intranet SMT'])->emailFormat('html')->to($user->email)->subject('Termo de Utilização do Sistema')->send($texto); $auditoriaTable = TableRegistry::get("Auditoria"); $auditoria = $auditoriaTable->newEntity(); $auditoria->idObjeto = $solicitacao->idUsuario; $auditoria->objeto = 'Solicitação'; $auditoria->acao = 'Aprovação de Aluno pelo SU'; //$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']); }