Páginas de destino da função

10

Temos vários usuários diferentes usando o back-end do Magento para diferentes usos.

Por exemplo, temos pessoas que basicamente apenas enviam pacotes, e tudo o que realmente queremos que elas visualizem é a página de remessa - e, se não apenas essa página, elas devem chegar lá ao fazer login.

Ao tentar obter essa configuração, criei um novo usuário "ship" e o associei à nova função "shipper". Essa função recebeu acesso ao recurso Vendas -> Remessas.

Eu entrei como navio, e pronto! Perfeito! Aterrissado bem na grade de remessas, consegui abrir uma remessa - e notei o problema. Este usuário não pôde enviar informações de rastreamento, que são essenciais para esta função.

Consegui fazer com que esse botão apareça / funcione na tela de remessa, ativando o recurso de função Vendas -> Pedidos -> Ações -> Enviar e-mails de vendas.

Agora, quando o navio efetua login, ele é despejado na grade de pedidos, não na grade de remessas. Suponho que seja simplesmente porque "Pedidos" é mais alto na árvore de recursos do que "Remessas". Isso é verdade?

Para encurtar a história : existe uma maneira eficaz de pousar um usuário administrador em uma tela / grade específica?

De preferência na tela de configuração - não duvido que isso possa ser implementado por um de nossos desenvolvedores.

Exigimos várias funções diferentes que podem ser bastante simplificadas, colocando esses usuários onde eles precisam estar 99% do tempo.

blckgrffn
fonte
1
@ j0k: agora você editará todos os posts?
user487772
@ Tim nem todos, apenas aqueles com erros de digitação no interior.
j0k

Respostas:

8

Aqui está uma maneira de fazer isso:

  • Faça um observador assistir quando um administrador fizer login, ou seja, o admin_session_user_login_successevento
  • Verifique qual é a função atual dos administradores, use o seguinte código:

    $roleId = implode('', Mage::getSingleton('admin/session')->getUser()->getRoles());
    $roleName = Mage::getModel('admin/roles')->load($roleId)->getRoleName();
  • Redirecione para a página desejada com base na função, use o seguinte código:

    Mage::app()->getResponse()
               ->setRedirect(Mage::helper('adminhtml')
               ->getUrl("admin/sales_order/view", array('id'=>'1')));

Espero que isso tenha sido útil :)

pzirkind
fonte
Interessante - e isso funcionará com a funcionalidade "Adicionar chave secreta aos URLs" ativada?
Blckgrffn
deve funcionar, apesar de nunca ter testado
pzirkind