Estoy configurando una instalación de Discourse que será un foro para profesionales acreditados. Cada usuario será verificado y podrá elegir el nombre de usuario que prefiera, pero nos gustaría que el nombre completo en sus perfiles coincida con sus credenciales. ¿Existe alguna forma de exigir la aprobación de un moderador para realizar cambios en el campo del nombre completo?
Hola,
Esto no es posible en este momento.
Gracias. ¿Es posible agregar un campo personalizado en los perfiles de usuario que pueda restringirse para que no sea modificable?
Edición: No importa, veo que esto es posible en Configuración > Personalizar > Campos de usuario
¿Es posible configurar un sistema de registro o notificación al personal cuando un usuario modifica su nombre?
Puedes configurar un webhook de Evento de Usuario que apunte a un servicio externo a Discourse y que te envíe una notificación cuando un usuario realice cualquier cambio en su página de perfil. Un servicio como Zapier podría ser útil para gestionar el webhook: Trigger a Zapier task with Discourse Webhooks.
Con el enfoque del webhook, sería necesario realizar cierto trabajo para determinar que fue la propiedad name del usuario la que se modificó; necesitarías comparar el contenido del webhook con los datos del usuario que hayas guardado en una base de datos externa. En cambio, si solo necesitas saber que el perfil del usuario fue actualizado, procesar el webhook sería sencillo.
¡Muchas gracias por esta sugerencia! Gestionar una base de datos externa y programar una herramienta para compararla con una carga útil de webhook está más allá de mis habilidades en este momento. ¡Pero espero que tu sugerencia sea útil para cualquier otra persona que quiera lograr algo similar y que tenga las habilidades adecuadas!
@simon, bueno, no pude resistirme y tomé tu sugerencia como un desafío para aprender algo nuevo.
Configuré un receptor de webhook y un almacén de datos en Integromat. El almacén de datos contiene la información relevante del usuario entregada por el webhook (no tuve que importar usuarios existentes, ya que este Discourse aún no está en vivo).
Se verifica la cabecera del webhook para detectar user_destroyed, user_created y user_updated. Los usuarios eliminados y creados se eliminan y crean según corresponda en el almacén de datos.
Para los usuarios actualizados, se busca su nombre en el almacén de datos, luego se actualiza su registro y, si el nombre anterior difiere del nombre actualizado, Integromat agrega una publicación a un tema exclusivo para el personal con el siguiente formato:
“Foo Bar (usuario: foobar) ha cambiado su nombre completo a Boo Far”
¡Gracias por tu sugerencia!
