Je souhaite contribuer à GitHub - discourse/discourse-assign: Plugin for assigning users to a topic et j’aimerais ajouter la fonctionnalité de désassigner un utilisateur lorsqu’un sujet est marqué comme solution. J’ai configuré un webhook avec webhook.site pour surveiller un sujet de test marqué comme solution, mais la réponse est un objet différent avec des en-têtes différents de ceux d’un sujet qui est, par exemple, fermé.
Dans l’exemple ci-dessous, quel devrait être le statut du sujet à rechercher lorsqu’un sujet a une solution ?
on(:topic_status_updated) do |topic, status, enabled|
if SiteSetting.unassign_on_close && (status == "closed" || status == "autoclosed") && enabled &&
Assignment.exists?(topic_id: topic.id, active: true)
assigner = ::Assigner.new(topic, Discourse.system_user)
assigner.unassign(silent: true, deactivate: true)
topic
.posts
.joins(:assignment)
.find_each do |post|
assigner = ::Assigner.new(post, Discourse.system_user)
assigner.unassign(silent: true, deactivate: true)
end
MessageBus.publish("/topic/#{topic.id}", reload_topic: true, refresh_stream: true)
end
end