• Cadastro
  • Fóruns
  • Manual
  • Tradução
  • Tutoriais
  • OpenAtrium
  • Eventos
  • Ofertas de Emprego
Início

Login do usuário

  • Criar uma conta
  • Recuperar senha

Pesquisa no site

Google

Assine o RSS do Drupal-BR

RSS dos itens mais ativos

RSS do conteúdo

RSS dos comentários

Lista de Discussão

Drupal-BR

Download

Últimas versões

Drupal 7.12Drupal 6.22

Contribuições

Módulos Temas Tradução

Itens ativos

  • Permissões para editar um determinado bloco
  • VAGAS: Programador PHP DRUPAL
  • Exibir os itens de menu ao passar o mouse
  • Como buscar conteúdo [View + campo de busca]
  • Correção de erros em site de vendas
  • Onde hospedar site com Drupal?
  • filtrar termos de um vocabulário que estão presentes em um post
  • Incluir no site o mesmo menu do admin
  • Mudar endereço do formulário de contato
  • Módulo dos Correios (não encontro o módulo uc_quote)
Veja mais
Início » Fórum » Suporte » Módulo Views

[RESOLVIDO] Como ocultar ABA criada por uma VIew dependendo do Papel do usuário?

Olá galera, dessa vez o problema é o seguinte:

Criei uma View do tipo Página que mostra uma ABA de MENU no perfil dos Usuários, meu problema é criar a regra que ela só apareça nos Perfis de Usuários com um Papel específico.

Tentei fazer como mostra nesse link http://drupal.org/node/483324, mas oculta qualquer aba menos as criadas por Views.
Agradeço a quem tiver uma luz pra mim.

‹ Conteudo Estatico + Noticias View com parametro ›
Enviado por pedromikosz em seg, 01/02/2012 - 20:07
  • Módulo Views
  • 6.x
  • Se logue ou se registre para poder enviar comentários
  • 394 leituras
Em ter, 01/03/2012 - 12:20 Leopoldo disse:

Restringir o acesso na própria view não resolve? Como está fazendo essa aba?

--
Leonardo Silva
Produtor Cultural
Desenvolvedor Web

  • Se logue ou se registre para poder enviar comentários
Em ter, 01/03/2012 - 13:07 pedromikosz disse:

Leopoldo, sua dica não resolve pois ao restringir o acesso a view eu bloqueio a visualização da aba para o usuário logado e não para o usuário do perfil em que a aba é exibida. Print da View:

Alguma ideia de como fazer?

  • Se logue ou se registre para poder enviar comentários
Em ter, 01/03/2012 - 14:44 mspano disse:

Hummmm, posso estar errado, mas não dá para você definir que essa página vai ser exibida apenas para um determinado "role" (papel)?

Veja a imagem que eu retirei, no item em vermelho, escolha o acesso desse display apenas para o perfil desejado, logo, ele não vai aparece para ninguém mais (acho).

Imagem

Até

Marcelo Spano
Web Designer/Developer
www.marcelospano.com.br

  • Se logue ou se registre para poder enviar comentários
Em ter, 01/03/2012 - 15:27 pedromikosz disse:

Marcelo, vlw pela observação, mas como expliquei abaixo, definir um papel nesse campo faz com que a Aba criada pela view seja vista apenas pelo usuário logado com aquele papel, como o que quero é que a Aba apareça ná página do usuário com o papel, tenho que informar essa restrição em Argumentos.

Eu consegui fazer isso, porém a view mostra o Corpo de uma Page, quando informo a regra no Argumento a Aba só aparece no perfil de quem tiver o Papel informado, porém a aba leva a uma página em branco e não carrega a página que criei, o problema deve estar nos Argumentos uma vez que quando removo eles o conteúdo da página é mostrado.

Print dos Argumentos. Usuário UID:

  • Se logue ou se registre para poder enviar comentários
Em ter, 01/03/2012 - 15:47 Leopoldo disse:

"Ação tomada quando o argumento não estiver presente" de ser:

- Exibir todos os valores (ou)
- Fornecer um argumento padrão -> ID do usuário a partir da URL

--
Leonardo Silva
Produtor Cultural
Desenvolvedor Web

  • Se logue ou se registre para poder enviar comentários
Em ter, 01/03/2012 - 17:16 pedromikosz disse:

Ai Leonardo, não havia tentado isso, mas também não retorna o conteúdo da página =(

Outra ideia?

  • Se logue ou se registre para poder enviar comentários
Em ter, 01/03/2012 - 18:33 Leopoldo disse:

Pode tentar deixar o validador como básico, combinando as opções que falei no comentário anterior. Pode (também com validador básico) "fornecer um valor padrão -> código php" e usar php para colocar uma condição (ver global $user e user_load()).

Também pode usar panels para sobescrever a página do usuário e obter mais funções via interface drupal. Pode usar context para colocar as condições.

--
Leonardo Silva
Produtor Cultural
Desenvolvedor Web

  • Se logue ou se registre para poder enviar comentários
Em qua, 01/04/2012 - 11:47 pedromikosz disse:

Ai Leonardo, consegui, segue o que fiz:

Ação tomada quando o argumento não estiver presente:
-> Fornecer um argumento padrão
Opções do argumento padrão
-> Identificador do usuário da URL
Opções do validador
-> Validador -> Usuário
Tipo de argumento a ser usado:
-> Permitir UIDs numéricos e nomes de usuários

Restringir usuários pelo seu papel no site
Restringir aos seguintes papéis: CLIENTE
O que fazer se o argumento não validar: Esconder a View

E o cara que faz o resto:
Excluir o argumento (Marquei esse cara e resolvido o meu problema).

Dessa forma a Aba criada pela View só aparece no perfil do Usuário CLIENTE e quando clico nela o conteúdo da página que ela carrega é mostrado.

Vlw pelas ajudas e fica a dica. ^^

  • Se logue ou se registre para poder enviar comentários
Em ter, 01/03/2012 - 14:37 pedromikosz disse:

Descobri Leonardo, rss falta de atenção.

Ao restringir o acesso para um papel, apenas o usuário daquele papel visualiza a aba, o que deve ser feito é a restrição dentro do argumento. Nesse caso Usuário UID, incluindo que ele deve ser de um determinado papel. Dessa forma a aba só aparece para o usuário daquele papel.

Vlw pela ajuda.

  • Se logue ou se registre para poder enviar comentários

Este site é feito, orgulhosamente, com Drupal. Gentilmente hospedado por HostSH