O script ‘Add user to group….’ tem campos de entrada diferentes para os dois gatilhos

Ao olhar para o script “Adicionar usuário a um grupo através de Campo Personalizado do Usuário”, parece haver um pequeno problema. Se o gatilho “Primeiro login do usuário” for selecionado, o campo de entrada “Nome do Campo Personalizado do Usuário” deve ser definido como o nome do Campo do Usuário, por exemplo, “Idioma Nativo”. Mas se o gatilho “Recorrente” for selecionado, o campo de entrada “Nome do Campo Personalizado do Usuário” precisa ser definido com base no id do Campo do Usuário. Por exemplo, “user_field_5”.

Detalhes sobre como encontrar o nome para quando o gatilho Recorrente é usado estão aqui: Finding Userfield Custom Name for 'Add user to group through User Custom Field' - #2 by leonardo.

Idealmente, o nome amigável (por exemplo, “Idioma Nativo”) seria usado como o valor correto para ambos os gatilhos disponíveis. O código relevante está aqui: https://github.com/discourse/discourse-automation/blob/main/lib/discourse_automation/scripts/add_user_to_group_through_custom_field.rb. A forma como o gatilho “Primeiro login do usuário” encontra o Campo Personalizado do Usuário correto a partir do nome do campo (em vez do id) está aqui:

https://github.com/discourse/discourse-automation/blob/main/lib/discourse_automation/scripts/add_user_to_group_through_custom_field.rb#L54-L67

Talvez haja uma maneira retrocompatível de aplicar essa lógica ao gatilho Recorrente.

3 curtidas

Apenas para constar, isso é mencionado no tutorial:

Mencionei a reformulação do script para consistência, embora ainda não tenha sido priorizada. Há também as configurações de administrador public user custom fields (campos personalizados públicos do usuário) e staff user custom fields (campos personalizados de funcionários do usuário) que seria bom alinhar com isso também.

(E também há poll groupable user fields (campos agrupáveis de pesquisa para usuários), que usa o ‘friendly name’ (nome amigável))

4 curtidas

Aqui está um PR para corrigir o problema:

2 curtidas

Isso foi resolvido com um novo menu suspenso para selecionar seus Campos Personalizados de Usuário existentes, o que funciona para ambos os gatilhos: :partying_face:

2 curtidas