Estou tentando adicionar uma função de usuário a um usuário que se tornou membro de um grupo. O fluxo de trabalho é assim:
- Solicitações do usuário para ingressar no grupo.
- A solicitação é aprovada pelo administrador do grupo.
- Usuário é um membro do grupo.
- O usuário recebe uma função adicional.
Tentei fazer uma regra que seria capaz de fazer isso, mas embora todas as configurações pareçam corretas depois de ingressar no grupo, o usuário não recebe a função adicional. Veja abaixo uma captura de tela das minhas configurações de regra:
rules
organic-groups
rroose
fonte
fonte
Respostas:
Agora sua regra é executada depois que o usuário solicita a associação. Mas você deve executá-lo após a associação ao OG ter sido aprovada.
Eu preparei a regra que adiciona a função “membro” após a aprovação da associação ou se foi adicionada pelo administrador (aprovação automática). Aqui está a exportação (
4
é o ID da minha função drupal "membro"):Captura de tela:
Dica: você pode ativar a depuração de regras (página
admin/config/workflow/rules/settings
) para ver quando suas regras são executadas.fonte
Eu tenho o mesmo problema (foi por isso que comecei uma recompensa).
Eu resolvi assim.
Eu adicionei uma função a um módulo personalizado. Você pode simplesmente criar seu próprio módulo criando uma nova pasta em / sites / all / modules com dois arquivos:
yourname_module.info - >>
yourname.module
Em seguida, vá para seus módulos e ative "Funções personalizadas".
Verifique se o código php personalizado do módulo está ativado.
Em vez de ação, adicione o usuário à função de regras, adicione: execute o código php personalizado e digite:
Isso adiciona o usuário à função e interrompe o script. Se você não parar o script, a função não será salva. E eu precisava adicionar um módulo porque
user_save
não funciona quando executadocustom php code
.Então, eu sei que é muito feio, mas funciona para mim.
fonte
Qual versão do OG você executa?
Este é um bug conhecido que foi corrigido no Organic Group 2.4+ ( consulte a página de bug ).
Se você já está executando uma versão 2.3 ou inferior do OG, o updgrate deve ser direto. Se você estiver executando o OG 1.x, poderá encontrar mais detalhes sobre o processo de atualização do OG 1.5 para o 2.4+
fonte