Example #1
0
 /**
  * Mostrar o formulário de inclusão e edição do registro
  *
  * @param int    $pk PK do registro a ser selecionado
  * @param string $rd URL para onde será redirecionado depois do salvamento do registro
  */
 protected function mostrarForm($pk = null, $rd = 'admin/usuarios')
 {
     $inc = $this->formPadrao('usuario', 'usuarios/salvar', 'usuarios/salvar', empty($rd) ? 'admin/usuarios' : $rd, $pk);
     # Visão
     $this->carregarHTML('comum/visoes/titulo_h2');
     $this->carregarHTML('form_usuario');
     $m_gu = new AdminM\GrupoUsuario();
     $l_gu = $m_gu->carregarSelect('grupo_usuario_publicar = 1', false);
     $m_id = new DevM\Idioma();
     $l_id = $m_id->carregarSelect('idioma_publicar = 1', false);
     $m_te = new DevM\Tema();
     $l_te = $m_te->listar('tema_publicar = 1', 'tema_descr', 'tema_id AS VALOR, tema_descr AS TEXTO, tema_padrao');
     $m_fd = new DevM\FormatoData();
     $l_fd = $m_fd->carregarSelect('formato_data_publicar = 1', false);
     if (!$inc) {
         # Grupo de usuário
         $mgu = new AdminM\GrupoUsuario($this->modelo->info_grupo);
         $this->visao->adParam('grupo-descr', $mgu->getDescr());
     }
     // Fim if( !$inc )
     # Parâmetros
     $this->visao->adParam('grupos-usuarios', $l_gu);
     $this->visao->adParam('idiomas', $l_id);
     $this->visao->adParam('temas', $l_te);
     $this->visao->adParam('formatos-data', $l_fd);
     $this->visao->adParam('novo-idioma?', \DL3::$autent->verificarPerm('Desenvolvedor\\Controle\\Idioma', 'mostrarForm'));
     $this->visao->adParam('novo-tema?', \DL3::$autent->verificarPerm('Desenvolvedor\\Controle\\Tema', 'mostrarForm'));
     $this->visao->adParam('novo-grupo?', \DL3::$autent->verificarPerm('Admin\\Controle\\GrupoUsuario', 'mostrarForm'));
     $this->visao->adParam('msg-usuario-bloq?', !$inc && $this->modelo->conf_bloq);
     $this->visao->adParam('usuario-logado?', $this->modelo->id == $_SESSION['usuario_id']);
 }
 /**
  * Mostrar o formulário de inclusão e edição do registro
  *
  * @param int|null  $md  ID do módulo dessa funcionalidade
  * @param bool|null $mst Nome da página mestra a ser carregada
  * @param int|null  $pk  Valor da PK do registro a ser selecionado
  */
 protected function mostrarForm($pk = null, $md = null, $mst = null)
 {
     $inc = $this->formPadrao('func', 'modulos/funcionalidades/salvar', 'modulos/funcionalidades/salvar', null, $pk);
     # Visão
     $this->carregarHTML('comum/visoes/titulo_h2');
     $this->carregarHTML('form_funcs', $mst);
     $this->visao->setTitulo($inc ? sprintf(TXT_PAGINA_TITULO_CADASTRAR_NOVA, $this->nome) : sprintf(TXT_PAGINA_TITULO_EDITAR_ESSA, $this->nome));
     # Grupos de usuários
     $mgu = new AdminM\GrupoUsuario();
     $lgu = $mgu->carregarSelect('grupo_usuario_publicar = 1', false);
     # Parâmetros
     $this->visao->adParam('grupos', $lgu);
     $this->visao->adParam('modulo', $md);
     if ($inc) {
         # Módulos
         $mf = new DevM\Modulo($md);
         $this->modelo->setClasse($mf->nomeClasse());
         $this->visao->adParam('modulo-classe', $this->modelo->getClasse());
     }
     // Fim if
     $classe = $this->modelo->getClasse();
     /*
      * Obter a lista completa de todos os métodos existentes na classe especificada
      */
     if (class_exists($classe)) {
         $rfx = new \ReflectionClass($classe);
         $metodos = preg_grep('~^_{2}~', array_column(array_map(function ($m) use($classe) {
             if ($m->class === $classe) {
                 return (array) $m;
             }
             // Fim if
         }, (array) $rfx->getMethods(\ReflectionMethod::IS_PROTECTED)), 'name'), PREG_GREP_INVERT);
         sort($metodos);
         $this->visao->adParam('lista-metodos', $metodos);
     }
     // Fim if
 }
 /**
  * Verificar o permissionamento do usuário logado
  *
  * @param string $m Nome da classe que está sendo executada
  * @param string $a Nome da ação que será executada
  *
  * @return bool
  */
 public function verificarPerm($m, $a)
 {
     # Permitir para o Super Admin
     if ((int) $_SESSION['usuario_id'] === -1) {
         return true;
     }
     // Fim if
     $mgu = new AdminM\GrupoUsuario($_SESSION['usuario_info_grupo']);
     return (bool) $mgu->verificarPerm($m, $a);
 }