For our running club, I’m coordinating a year-long challenge that has a team component. For each 10-year age-group team, I’m creating a Discourse group so they can be @mentioned and potentially have their own conversations, though I very much doubt anyone will figure that out. So I have seven groups for each of the age-group teams, and I have to update those manually as people register.
I also want to have an uber-group that contains all the people who are participating in the challenge. It would be a LOT easier if I could have the larger Challengers group merely contain the sub-groups for 19-and-under, 20-29, 30-39, and so on. That way I could just manage the sub-groups and have the changes flow through to the uber-group.
Is there (or could there be) a way to do this, or am I stuck having to manually type in every username from the sub-groups? (I think this will be several hundred people all told, and a weekly task.)
I keep being confused by references Bulk Add to Group, since it doesn’t appear in the UI as far as I can tell—the screenshots from the 2015 topic you linked to don’t match with what I see now. Is it just the same as using the Add Members dialog within a group?
And how can I copy a list of members of one group to be able to bulk add to another? The best workflow I can come up with at the moment is to copy the text of the Members page and use a style-savvy grep (in Nisus Writer Pro) to copy the usernames. Doable, but not exactly easy.
There are quite a few references to the “bulk add to group” feature here on Meta, but I don’t see it active anymore at https://discourse.example.org/admin/groups/bulk, just a blank page (I checked a couple different sites where I have admin rights). Do you see anything there @adamengst?
I guess this is a bit of a hidden feature, but you can use the bulk invite feature to add existing users to groups. Just prep a csv with the email address and group as explained in the modal, and upload it. The users will not be emailed.
Thanks! That’s getting closer, although I’ll note that keying off email address often works poorly for me because lots of people have multiple addresses, so I have to verify ahead of time whether I’m inviting the one that’s associated with an account or another one that will be confusing (and potentially set them up with a second account).
I don’t know how the underlying foundation works, but it would seem simplest to allow groups to contain references to other groups.
You could always do a user export and then use the exported CSV to create a new list to import back using the bulk invite feature. Sounds like you just need to do this once to get the system set up with your existing users, then manually when new people join or make a change to their age bracket.
Maye there’s a case for custom code to semi-automate this for your community - you could post a request in marketplace if you have a budget.
Good point on the user export—I wasn’t thinking about that as a way to populate the list with accounts to start. I’ll keep noodling on this and see how it works out.
Grupos hierárquicos (grupos como membros de grupos) teriam a vantagem adicional de remover automaticamente membros de grupos herdados.
Para implementar tal funcionalidade “manualmente”, você teria que se lembrar se uma associação de grupo foi herdada por um grupo hierarquicamente superior ou definida diretamente.
Você poderia comentar sobre o uso de um serviço de diretório de usuários externo (ldap) para implementar uma função de grupo hierárquico?
Desde que comecei este tópico, pensei em dar minha opinião e dizer que meu pedido por grupos hierárquicos ainda é completamente relevante.
O recurso de Convite em Massa para Grupo simplesmente não entra em jogo porque, no meu caso, estou adicionando pessoas a grupos específicos baseados em idade e a um grupo geral que abrange todos os grupos baseados em idade ao longo de um período de 4 meses, à medida que elas se registram em outro sistema.
Vou ver se meu desenvolvedor consegue automatizar o processo este ano, agora que sei o quão absolutamente tedioso é fazer isso manualmente semanalmente.
Sim, na verdade meu desenvolvedor conseguiu sincronizar dados do Webscorer, que usamos para registro de corridas, com grupos do Discourse. Isso exige que os nomes coincidam, mas ele criou uma página de administração que mostra quando eles não coincidem.
Portanto, não há hierarquia, mas estamos preenchendo vários grupos automaticamente, o que remove a principal necessidade que eu tinha.
É código de código aberto, então provavelmente posso compartilhá-lo se alguém estiver interessado em ver como funciona.
Recebi uma solicitação direta para isso também, então se alguém quiser dar uma olhada no código de @SteveDesmond.ca para escrever em grupos do Discourse, ele está disponível em:
E Steve disse que está feliz em responder perguntas sobre isso.