Ixonn Group

Recursos e Acesso da Equipe

You are here:
< All Topics
Este recurso está disponível na versão 2.3.4


Ao criar módulos mais complexos, provavelmente você desejará adicionar permissões para que o proprietário possa controlar o que os membros da equipe podem ou não fazer.

No Ixonn, isso é tratado com as permissões da equipe, cada membro da equipe pode ter permissões de acesso diferentes.

Definir permissões do módulo

Por exemplo, supondo que o módulo se destina a enviar e-mails em massa e você deseja que o proprietário permita que apenas membros específicos da equipe enviem e-mails, no arquivo init do módulo, adicione o seguinte código:

hooks () -> add_action (“admin_init”, “my_module_permissions”);

 

função my_module_permissions ($ permissões)

{

    $ config = [];

 

    $ config [‘recursos’] = [

            “Send_mass_emails” => “Enviar emails em massa”,

            ‘Create_templates’ => ‘Criar modelos de email’,

    ];

 

    register_staff_capabilities (

        ‘Prefixo-e-mails em massa’,

        $ config,

        _l (“prefix_mass_emails”)

    );

}

Salve o arquivo e navegue para e.q. Configuração-> Equipe e edite algum membro da equipe. Ao clicar na guia Permissões, você poderá ver as permissões na parte inferior.

Parâmetros explicados

  1. $ feature_id (prefixo-massa-e-mails) – Chamamos isso de recurso de permissões, mas tenha em mente que o nome deve ser exclusivo.
  2. $ config (array) – A configuração real com um array com chave de recursos, será exclusivo para sua implementação e dependerá de que tipo de recursos seu recurso precisa.
  3. $ name – O nome do módulo e.q. Mailer em massa, o nome é mostrado ao usuário que está editando as permissões para que ele possa identificar para qual recurso as permissões se destinam.

Injetando recursos nos recursos existentes

Se você deseja injetar recursos em um recurso existente, você pode conseguir isso com o seguinte código:

função my_module_permissions ()

{

    $ capacidades = [];

 

    $ capacidades [‘capacidades’] = [

            ‘My-unique-capacity-id’ => ‘Capacidade relacionada a faturas’,

    ];

 

    register_staff_capabilities (‘faturas’, $ capacidades);

}

Verificando se a equipe possui os recursos

Agora que você adicionou suas permissões, no seu código você desejará executar verificações e verificar se o membro da equipe realmente tem a capacidade de executar ações específicas.

Supondo que você tenha um controlador com o método send

função pública send () {

    if (staff_can (‘send_mass_emails’, ‘prefix-mass-emails’)) {

        // Envie e-mails aqui

    }

}

staff_can

staff_can ($ recurso, $ recurso = nulo, $ staff_id = ”)


Pode ser usado e.q. staff_can (‘visualizar’, ‘faturas’);

@param string $ recurso e.q. ver | criar | editar | excluir | view_own | can_delete

@param string $ feature o nome do recurso e.q. faturas | estimativas | contratos my_module_name


NOTA: O parâmetro do recurso $ está disponível como opcional, mas é altamente recomendável sempre que seja transmitido devido à exclusividade dos nomes dos recursos.

Por exemplo, se houver “visualização” de capacidade para “estimativas” de recursos e também para “faturas”, também existe uma “visualização” de capacidade

Nesse caso, se você não passar o nome do recurso, poderá haver resultados imprecisos.

Se você tiver certeza de que o nome da sua capacidade é único e.q. my_prefixed_capability_can_create, você não precisa passar o recurso $
e você pode usar esta função como e.q. staff_can (‘my_prefixed_capability_can_create’)

@param misturado $ staff_id ID da equipe | se não for aprovado, a equipe conectada será verificada

Esteja ciente de que os administradores podem acessar todas as funcionalidades; a função staff_can retornará true para qualquer recurso se o usuário for administrador.

Artigos Relacionados

Table of Contents
Scroll Up