From 99e5bb48c907e47ce798fcbe097f9c4a98b0c1ad Mon Sep 17 00:00:00 2001 From: Penar Musaraj Date: Wed, 8 Mar 2023 14:53:50 -0500 Subject: [PATCH] Revert "DEV: Update plugin to match latest guidelines (#448)" (#449) This reverts commit 8548df41384b7dd6ff8ddd7e3c44921f7cfdcfe0. I suspect this is causing smoke tests to fail. Reverting to confirm. --- config/routes.rb | 22 ----- .../regular/assign_notification.rb | 0 {app/jobs => jobs}/regular/remind_user.rb | 0 .../regular/unassign_notification.rb | 0 .../scheduled/enqueue_reminders.rb | 0 lib/discourse_assign/engine.rb | 8 -- plugin.rb | 80 ++++++++++++++----- 7 files changed, 59 insertions(+), 51 deletions(-) rename {app/jobs => jobs}/regular/assign_notification.rb (100%) rename {app/jobs => jobs}/regular/remind_user.rb (100%) rename {app/jobs => jobs}/regular/unassign_notification.rb (100%) rename {app/jobs => jobs}/scheduled/enqueue_reminders.rb (100%) delete mode 100644 lib/discourse_assign/engine.rb diff --git a/config/routes.rb b/config/routes.rb index 32cbf49..a5fd25e 100644 --- a/config/routes.rb +++ b/config/routes.rb @@ -9,25 +9,3 @@ DiscourseAssign::Engine.routes.draw do get "/members/:group_name" => "assign#group_members" get "/user-menu-assigns" => "assign#user_menu_assigns" end - -Discourse::Application.routes.append do - mount ::DiscourseAssign::Engine, at: "/assign" - - get "topics/private-messages-assigned/:username" => "list#private_messages_assigned", - :as => "topics_private_messages_assigned", - :constraints => { - username: ::RouteFormat.username, - } - get "/topics/messages-assigned/:username" => "list#messages_assigned", - :constraints => { - username: ::RouteFormat.username, - }, - :as => "messages_assigned" - get "/topics/group-topics-assigned/:groupname" => "list#group_topics_assigned", - :constraints => { - username: ::RouteFormat.username, - }, - :as => "group_topics_assigned" - get "/g/:id/assigned" => "groups#index" - get "/g/:id/assigned/:route_type" => "groups#index" -end diff --git a/app/jobs/regular/assign_notification.rb b/jobs/regular/assign_notification.rb similarity index 100% rename from app/jobs/regular/assign_notification.rb rename to jobs/regular/assign_notification.rb diff --git a/app/jobs/regular/remind_user.rb b/jobs/regular/remind_user.rb similarity index 100% rename from app/jobs/regular/remind_user.rb rename to jobs/regular/remind_user.rb diff --git a/app/jobs/regular/unassign_notification.rb b/jobs/regular/unassign_notification.rb similarity index 100% rename from app/jobs/regular/unassign_notification.rb rename to jobs/regular/unassign_notification.rb diff --git a/app/jobs/scheduled/enqueue_reminders.rb b/jobs/scheduled/enqueue_reminders.rb similarity index 100% rename from app/jobs/scheduled/enqueue_reminders.rb rename to jobs/scheduled/enqueue_reminders.rb diff --git a/lib/discourse_assign/engine.rb b/lib/discourse_assign/engine.rb deleted file mode 100644 index 6260570..0000000 --- a/lib/discourse_assign/engine.rb +++ /dev/null @@ -1,8 +0,0 @@ -# frozen_string_literal: true - -module ::DiscourseAssign - class Engine < ::Rails::Engine - engine_name PLUGIN_NAME - isolate_namespace DiscourseAssign - end -end diff --git a/plugin.rb b/plugin.rb index fe701d7..4b2321c 100644 --- a/plugin.rb +++ b/plugin.rb @@ -14,29 +14,67 @@ register_asset "stylesheets/mobile/assigns.scss", :mobile %w[user-plus user-times group-plus group-times].each { |i| register_svg_icon(i) } -module ::DiscourseAssign - PLUGIN_NAME = "discourse-assign" -end - -require_relative "lib/discourse_assign/engine" -require_relative "lib/validators/assign_statuses_validator" +require_relative "app/models/assign_mailer_site_settings.rb" +require_relative "app/models/remind_assigns_frequency_site_settings.rb" +require_relative "lib/validators/assign_statuses_validator.rb" after_initialize do - require_relative "app/jobs/regular/assign_notification" - require_relative "app/jobs/regular/remind_user" - require_relative "app/jobs/regular/unassign_notification" - require_relative "app/jobs/scheduled/enqueue_reminders" - require_relative "lib/assigner" - require_relative "lib/discourse_assign/discourse_calendar" - require_relative "lib/discourse_assign/group_extension" - require_relative "lib/discourse_assign/helpers" - require_relative "lib/discourse_assign/list_controller_extension" - require_relative "lib/discourse_assign/post_extension" - require_relative "lib/discourse_assign/topic_extension" - require_relative "lib/discourse_assign/web_hook_extension" - require_relative "lib/pending_assigns_reminder" - require_relative "lib/random_assign_utils" - require_relative "lib/topic_assigner" + module ::DiscourseAssign + PLUGIN_NAME = "discourse-assign" + + class Engine < ::Rails::Engine + engine_name DiscourseAssign::PLUGIN_NAME + isolate_namespace DiscourseAssign + end + end + + require_relative "app/controllers/discourse_assign/assign_controller.rb" + require_relative "app/mailers/assign_mailer.rb" + require_relative "app/models/assign_mailer_site_settings.rb" + require_relative "app/models/assignment.rb" + require_relative "app/models/remind_assigns_frequency_site_settings.rb" + require_relative "app/serializers/assigned_group_serializer.rb" + require_relative "app/serializers/assigned_topic_serializer.rb" + require_relative "app/serializers/group_user_assigned_serializer.rb" + require_relative "config/routes.rb" + require_relative "jobs/regular/assign_notification.rb" + require_relative "jobs/regular/remind_user.rb" + require_relative "jobs/regular/unassign_notification.rb" + require_relative "jobs/scheduled/enqueue_reminders.rb" + require_relative "lib/assigner.rb" + require_relative "lib/discourse_assign/discourse_calendar.rb" + require_relative "lib/discourse_assign/group_extension.rb" + require_relative "lib/discourse_assign/helpers.rb" + require_relative "lib/discourse_assign/list_controller_extension.rb" + require_relative "lib/discourse_assign/post_extension.rb" + require_relative "lib/discourse_assign/topic_extension.rb" + require_relative "lib/discourse_assign/web_hook_extension.rb" + require_relative "lib/pending_assigns_reminder.rb" + require_relative "lib/random_assign_utils.rb" + require_relative "lib/topic_assigner.rb" + require_relative "lib/validators/assign_statuses_validator.rb" + + Discourse::Application.routes.append do + mount ::DiscourseAssign::Engine, at: "/assign" + + get "topics/private-messages-assigned/:username" => "list#private_messages_assigned", + :as => "topics_private_messages_assigned", + :constraints => { + username: ::RouteFormat.username, + } + get "/topics/messages-assigned/:username" => "list#messages_assigned", + :constraints => { + username: ::RouteFormat.username, + }, + :as => "messages_assigned" + get "/topics/group-topics-assigned/:groupname" => "list#group_topics_assigned", + :constraints => { + username: ::RouteFormat.username, + }, + :as => "group_topics_assigned" + get "/g/:id/assigned" => "groups#index" + get "/g/:id/assigned/:route_type" => "groups#index" + end reloadable_patch do |plugin| Group.class_eval { prepend DiscourseAssign::GroupExtension }