# frozen_string_literal: true module Events class TopicAddedToMap < Event after_create :notify_users! def self.publish!(topic, map, user, meta) create!(kind: 'topic_added_to_map', eventable: topic, map: map, user: user, meta: meta) end def notify_users! # in the future, notify followers of both the topic, and the map NotificationService.notify_followers(eventable, TOPIC_ADDED_TO_MAP, self) # NotificationService.notify_followers(map, MAP_RECEIVED_TOPIC, self) end handle_asynchronously :notify_users! end end