/** * Método criado para efetuar a validação de acesso a um controle do sistema * @param string nome do controle acessado */ public static function validarAcesso($controleAcessado) { try { $definicoes = definicao::pegarDefinicao(); if (strval($definicoes->controleDeAcesso['liberado']) == 'sim') { return true; } switch (true) { case !sessaoSistema::tem('usuario'): throw new erroAcesso('Acesso não permitido, usuário não registrado!'); default: $nUsuario = sessaoSistema::pegar('usuario'); $nUsuario->carregarPerfis(); $nAcesso = new NAcesso(); $colecao = $nAcesso->lerAcessosPorUsuario($nUsuario, $controleAcessado); if (!$colecao->contarItens()) { throw new erroAcesso('Acesso Não Permitido!'); } } return true; } catch (erro $e) { throw $e; } }
/** * Método criado para efetuar a montagem do menu do site */ public function menuPrincipal() { try { $this->menuPrincipal = new colecaoPadraoMenu(); $this->menuPrincipal->passar_id('menuPrincipal'); $nmLoginLabel = sessaoSistema::tem('usuario') ? 'Sair' : 'Entrar'; $nmLoginImagem = sessaoSistema::tem('usuario') ? 'door_out.png' : 'key.png'; $this->menuPrincipal->Sistema->passar_imagem('.sistema/icones/computer.png'); $this->adicionarItem('menuPrincipal', 'Sistema/Página Principal', 'CControleAcesso_verPrincipal', '.sistema/icones/monitor.png', true); $this->adicionarItem('menuPrincipal', "Sistema/{$nmLoginLabel}", 'CControleAcesso_verLogin', ".sistema/icones/{$nmLoginImagem}", true); $this->menuPrincipal->{'Administração'}->passar_imagem('.sistema/icones/server.png'); $this->adicionarItem('menuPrincipal', 'Administração/Estados', 'CEstado_verPesquisa', '.sistema/icones/group.png'); $this->adicionarItem('menuPrincipal', 'Administração/Pessoas', 'CPessoa_verPesquisa', '.sistema/icones/vcard.png'); $this->adicionarItem('menuPrincipal', 'Administração/Perfis', 'CPerfil_verPesquisa', '.sistema/icones/medal_gold_1.png'); $this->adicionarItem('menuPrincipal', 'Administração/Usuários', 'CUsuario_verPesquisa', '.sistema/icones/user.png'); $this->adicionarItem('menuPrincipal', 'Administração/Log de Acessos', 'CLogAcesso_verPesquisa', '.sistema/icones/map_magnify.png'); $this->menuPrincipal->Apoio->passar_imagem('.sistema/icones/help.png'); $this->adicionarItem('menuPrincipal', 'Apoio/Pesquisar', 'CUtilitario_pesquisaGeral', '.sistema/icones/find.png'); $this->adicionarItem('menuPrincipal', 'Apoio/Gerador', 'CUtilitario_listarEntidade', '.sistema/icones/cog.png'); $this->adicionarItem('menuPrincipal', 'Apoio/Tabelas', 'CUtilitario_listarTabelas', '.sistema/icones/application_tile_horizontal.png'); $this->adicionarItem('menuPrincipal', 'Apoio/Recriador de Base', 'CUtilitario_atualizadorBase', '.sistema/icones/application_side_contract.png'); $this->adicionarItem('menuPrincipal', 'Apoio/Importador', 'CUtilitario_verImportador', '.sistema/icones/arrow_in.png'); $this->adicionarItem('menuPrincipal', 'Apoio/Definições do Sistema', 'CUtilitario_geradorDefinirSistema', '.sistema/icones/wrench.png'); return $this->menuPrincipal; } catch (erro $e) { return array(); } }