[Dúvida] Autorização dos Grupos (Backend)

Forum destinado aos programadores que pretendem utilizar o framework do Joomla! 1.5 para fazer suas próprias extensões
brluno
Novato
Mensagens: 2
Registrado em: 11 Out 2010, 09:16

[Dúvida] Autorização dos Grupos (Backend)

Mensagem por brluno »

Estou fazendo um módulo para alterar as permissões dos grupos no Joomla 1.5.
Mas estou tendo um dificuldade que preciso pra fazer esse módulo.

As permissões estão no código e não no banco.
Quero localizar onde as permissões são atribuídas para cada usuário do Backend.

Aguardo Resposta.

Grato.
ricardo.haas
Usuário
Mensagens: 78
Registrado em: 17 Ago 2009, 10:39
Contato:

Re: [Dúvida] Autorização dos Grupos (Backend)

Mensagem por ricardo.haas »

A permissões são atribuídas aos grupos e não diretamente aos usuários,
já fiz algo semelhante, eu precisava de um grupo que poderia acessar o backend
mas mexer somente em um componente específico, vou pegar o caso do componente
de boletos, com_mamboleto, cujo esse grupo novo nao poderia ter acesso,

Criei um novo grupo para o backend - usando componente noixacl

Dai em cada componente que precisava validação, inseri a validação necessária no principal arquivo, restringindo o acesso,
no caso do componente mamboleto
no arquivo /administrator/components/com_mamboleto/admin.mamboleto.php não havia uma validação então eu inserir o código abaixo

Código: Selecionar todos

//restringir acesso ao componente
$user = & JFactory::getUser();
if (!$user->authorize( 'com_mamboleto', 'manage' )) {
	$mainframe->redirect( 'index.php', JText::_('ALERTNOTAUTH') );
}
Após isso la no arquivo /libraries/joomla/user/authorization.php, coloquei permissão somente para alguns usuários(super administrator,administrator,manager)

Código: Selecionar todos

//mamboleto
$this->addACL( 'com_mamboleto', 'manage', 'users', 'super administrator');
$this->addACL( 'com_mamboleto', 'manage', 'users', 'administrator');		
$this->addACL( 'com_mamboleto', 'manage', 'users', 'manager');	
//se eu quizesse que meu novo grupo tivesse acesso ao componente mamboleto seria só descomentar a linha abaixo
//$this->addACL( 'com_mamboleto', 'manage', 'users', 'nome_do_grupo');	
Ricardo Haas
Desenvolvimento Interno
Host | Domínios | E-mail Marketing | Loja Virtual | Sites Prontos
lojavirtual.ugabuga.com.br
Responder