Esempio n. 1
0
 /**
  * Remove variáveis de sessão do usuário, e redireciona
  * para tela de login.
  */
 public function logout()
 {
     $result = $_SESSION;
     $result['status'] = 'Login/efetuarLogout';
     Logs::gravar($result, $result['id']);
     unset($_SESSION['id']);
     unset($_SESSION['usario']);
     unset($_SESSION['name']);
     unset($_SESSION['email']);
     unset($_SESSION['perfil']);
     unset($_SESSION['nivel']);
     redirect('login/index');
 }
Esempio n. 2
0
 /**
  * Excluir tipo de feedbacks
  */
 public function excluir()
 {
     $permissao = "feedback/index";
     $perfil = $_SESSION['perfil'];
     if (Menu::possue_permissao($perfil, $permissao)) {
         $id = filter_input(INPUT_POST, 'id', FILTER_SANITIZE_NUMBER_INT);
         if ($this->model->excluir($id)) {
             $dados = array('status' => true, 'msg' => $this->translate['response_success_remove_feedback']);
         } else {
             $dados = array('status' => false, 'msg' => $this->translate['response_error_remove_feedback']);
         }
         $log = array('dados' => $this->model->get_feedback($id), 'aplicacao' => $permissao, 'msg' => $dados['msg']);
         Logs::gravar($log, $_SESSION['id']);
         $this->response($dados);
     }
 }
Esempio n. 3
0
 /**
  * Realiza a exclusão do projeto tipo de problema selecionado
  */
 public function excluir()
 {
     $permissao = "projetos_problemas/index";
     if (Menu::possue_permissao($_SESSION['perfil'], $permissao)) {
         $id_projeto = filter_input(INPUT_POST, 'projeto', FILTER_SANITIZE_NUMBER_INT);
         $id_projeto_problema = filter_input(INPUT_POST, 'projeto_problema', FILTER_SANITIZE_NUMBER_INT);
         if ($this->model->excluir_projeto_problemas($id_projeto, $id_projeto_problema)) {
             $dados = array('status' => true, 'msg' => $this->translate['response_success_remove_project_problem']);
         } else {
             $dados = array('status' => false, 'msg' => $this->translate['response_error_remove_project_problem']);
         }
         $log = array('dados' => array('id_projeto' => $id_projeto, 'id_projeto_problema' => $id_projeto_problema), 'aplicacao' => $permissao, 'msg' => $dados['msg']);
         Logs::gravar($log, $_SESSION['id']);
         $this->response($dados);
     }
 }
Esempio n. 4
0
 /**
  * Finaliza um solicitação que esta em atendimento.
  */
 public function encerrar()
 {
     $perfil = $_SESSION['perfil'];
     $usuario = $_SESSION['id'];
     $id_solicitacao = filter_input(INPUT_POST, 'solicitacao', FILTER_SANITIZE_NUMBER_INT);
     $resolucao = filter_input(INPUT_POST, 'resolucao_solicitacao', FILTER_DEFAULT, FILTER_FLAG_EMPTY_STRING_NULL);
     $parametros = Parametros_solicitacoes::get_parametros();
     $solicitacao = $this->model->get_dados_solicitacao($id_solicitacao, $perfil, $usuario);
     /*
      * Verifica se usuário tem permissão para encerra solicitação e
      * se o usuário é o técnico responsavel pelo projeto e se a solicitação não esta encerrada.
      */
     if (array_search($perfil, $parametros['ENCERRAR_SOLICITACAO']) !== FALSE && $solicitacao['id_tecnico'] == $usuario && !empty($solicitacao['atendimento']) && empty($solicitacao['encerramento'])) {
         $hoje = new DateTime();
         $hoje = $hoje->format('Y-m-d H:i:s');
         /*
          * Passa os dados referente ao encerramento da solicitação
          */
         $dados = array('encerramento' => $hoje, 'resolucao' => $resolucao);
         /*
          * Realização o encerramento da solicitação e informa o resultado da execução
          */
         if ($this->model->encerrar($id_solicitacao, $dados)) {
             $_SESSION['msg_sucesso'] = $this->translate['info_success_terminate_request'];
         } else {
             $_SESSION['msg_erro'] = $this->translate['info_error_terminate_request'];
         }
         /*
          * Gera dados para gravação de log.
          */
         $log = array('dados' => $dados, 'aplicacao' => "solicitacao/encerrar", 'msg' => empty($_SESSION['msg_sucesso']) ? $_SESSION['msg_erro'] : $_SESSION['msg_sucesso']);
         /*
          * Grava dados da operação realizada
          */
         Logs::gravar($log, $_SESSION['id']);
         redirect("solicitacao/visualizar/{$id_solicitacao}");
     } else {
         $_SESSION['msg_erro'] = $this->translate['info_error_user_not_terminate_request'];
         redirect("solicitacao/visualizar/{$id_solicitacao}");
     }
 }
Esempio n. 5
0
 /**
  * Realiza a alteraçao de senha
  */
 public function nova_senha()
 {
     $nova_senha = filter_input(INPUT_POST, 'nova_senha');
     $redigite = filter_input(INPUT_POST, 'redigite');
     if (strlen($nova_senha) >= 5 && strcmp($nova_senha, $redigite) === 0) {
         $result = $_SESSION;
         $usuario = $_SESSION['id'];
         /*
          * Atualiza senha em caso de sucesso gera mensagem de sucesso
          */
         if ($this->model->atualiza_senha($usuario, $nova_senha)) {
             $result['situacao'] = 'Senha alterada com sucesso.';
             $_SESSION['msg_sucesso'] = $result['situacao'];
         } else {
             $result['situacao'] = 'Erro ao alterar senha.';
             $_SESSION['msg_erro'] = $result['situacao'];
         }
         /*
          * Gera log da operaçao realizada
          */
         $result['status'] = 'Usuarios/nova_senha';
         Logs::gravar($result, $result['id']);
     } else {
         $_SESSION['msg_erro'] = 'Erro ao alterar senha. Digite uma senha com mais de 5 caracteres' . (strcmp($nova_senha, $redigite) ? ', senhas digitadas não conferem.' : '');
     }
     redirect("usuarios/alterar_senha");
 }
Esempio n. 6
0
 /**
  * Remove empresa selecionado
  */
 public function excluir()
 {
     $permissao = 'empresas/index';
     $perfil = $_SESSION['perfil'];
     if (Menu::possue_permissao($perfil, $permissao)) {
         $id = filter_input(INPUT_POST, 'id', FILTER_SANITIZE_NUMBER_INT);
         $dados = $this->model->get_dados_empresa($id);
         if ($this->model->excluir_empresa($id)) {
             $status = array('status' => true, 'msg' => $this->translate['remove_businesses_success']);
         } else {
             $status = array('status' => false, 'msg' => $this->translate['remove_businesses_error']);
         }
         $log = array('dados' => $dados, 'aplicacao' => $permissao, 'msg' => $status['msg']);
         Logs::gravar($log, $_SESSION['id']);
         echo json_encode($status);
     }
 }
Esempio n. 7
0
 /**
  * Altera horário de entrada ou saida de determinado dia.
  */
 public function set_expediente()
 {
     $permissao = 'horarios/alterar_expediente';
     if (Menu::possue_permissao($_SESSION['perfil'], $permissao)) {
         $id = filter_input(INPUT_POST, 'id', FILTER_SANITIZE_NUMBER_INT);
         $value = filter_input(INPUT_POST, 'value', FILTER_SANITIZE_STRING);
         $coluna = filter_input(INPUT_POST, 'coluna', FILTER_SANITIZE_STRING);
         if ($this->model->set_expediente($id, $value, $coluna)) {
             $result = array("status" => "OK");
         } else {
             $result = array("status" => "NOT");
         }
         $this->response($result);
         $dados['msg'] = $result['status'];
         $dados['dados'] = array('id' => $id, 'horario' => $value, 'coluna' => $coluna);
         $dados['aplicacao'] = $permissao;
         Logs::gravar($dados, $_SESSION['id']);
     }
 }