mirror of
https://github.com/discourse/discourse.git
synced 2024-12-24 10:48:44 +08:00
3d4faf3272
Automation (previously known as discourse-automation) is now a core plugin.
22 lines
532 B
Ruby
22 lines
532 B
Ruby
# frozen_string_literal: true
|
|
|
|
module ::DiscourseAutomation
|
|
class Engine < ::Rails::Engine
|
|
engine_name PLUGIN_NAME
|
|
isolate_namespace DiscourseAutomation
|
|
end
|
|
|
|
def self.filter_by_trigger(items, trigger)
|
|
trigger = trigger&.to_sym
|
|
|
|
indexed_items =
|
|
items.each_with_object({}) do |item, acc|
|
|
if item[:triggerable] == trigger || item[:triggerable].nil?
|
|
acc[item[:name]] = item if acc[item[:name]].nil? || item[:triggerable] == trigger
|
|
end
|
|
end
|
|
|
|
indexed_items.values
|
|
end
|
|
end
|