From 06073fe8c6b71d90c215e97ea1d2e980d75820c8 Mon Sep 17 00:00:00 2001 From: jbrw Date: Tue, 14 Jul 2020 12:36:19 -0400 Subject: [PATCH] FEATURE: Allow group moderators to close/archive topics * FEATURE: Allow group moderators to close/archive topics --- .../discourse/app/lib/transform-post.js | 4 +- .../components/edit-category-settings.hbs | 2 +- .../discourse/app/widgets/topic-admin-menu.js | 8 ++++ app/controllers/categories_controller.rb | 2 +- .../reviewable_claimed_topics_controller.rb | 2 +- app/controllers/topics_controller.rb | 11 ++++- app/jobs/regular/notify_reviewable.rb | 2 +- app/jobs/regular/toggle_topic_closed.rb | 2 +- app/models/category.rb | 2 +- app/models/reviewable.rb | 4 +- app/models/reviewable_flagged_post.rb | 2 +- app/serializers/category_serializer.rb | 2 +- .../topic_view_details_serializer.rb | 12 ++++- config/locales/client.en.yml | 2 +- config/locales/server.en.yml | 2 +- config/site_settings.yml | 2 +- ...ename_category_group_moderation_setting.rb | 13 +++++ lib/guardian.rb | 1 - lib/guardian/topic_guardian.rb | 16 ++++++- lib/guardian/user_guardian.rb | 2 +- .../components/guardian/user_guardian_spec.rb | 6 +-- spec/components/guardian_spec.rb | 48 ++++++++++++++++++- spec/jobs/notify_reviewable_spec.rb | 6 +-- spec/models/category_spec.rb | 8 ++-- spec/models/reviewable_spec.rb | 4 +- spec/requests/categories_controller_spec.rb | 2 +- spec/requests/topics_controller_spec.rb | 44 ++++++++++++++++- spec/serializers/category_serializer_spec.rb | 4 +- .../acceptance/topic-admin-menu-test.js | 28 +++++++++++ .../acceptance/topic-edit-timer-test.js | 2 +- test/javascripts/helpers/create-pretender.js | 8 ++++ 31 files changed, 215 insertions(+), 38 deletions(-) create mode 100644 db/migrate/20200706202436_rename_category_group_moderation_setting.rb create mode 100644 test/javascripts/acceptance/topic-admin-menu-test.js diff --git a/app/assets/javascripts/discourse/app/lib/transform-post.js b/app/assets/javascripts/discourse/app/lib/transform-post.js index 19ec24ddbc..2f8087795f 100644 --- a/app/assets/javascripts/discourse/app/lib/transform-post.js +++ b/app/assets/javascripts/discourse/app/lib/transform-post.js @@ -119,7 +119,9 @@ export default function transformPost( postAtts.canManage = currentUser && currentUser.get("canManageTopic"); postAtts.canViewRawEmail = currentUser && (currentUser.id === post.user_id || currentUser.staff); - postAtts.canReplyAsNewTopic = details.can_reply_as_new_topic; + postAtts.canArchiveTopic = !!details.can_archive_topic; + postAtts.canCloseTopic = !!details.can_close_topic; + postAtts.canReplyAsNewTopic = !!details.can_reply_as_new_topic; postAtts.canReviewTopic = !!details.can_review_topic; postAtts.canPublishPage = !!details.can_publish_page && post.post_number === 1; diff --git a/app/assets/javascripts/discourse/app/templates/components/edit-category-settings.hbs b/app/assets/javascripts/discourse/app/templates/components/edit-category-settings.hbs index 5520c045a7..7bac284803 100644 --- a/app/assets/javascripts/discourse/app/templates/components/edit-category-settings.hbs +++ b/app/assets/javascripts/discourse/app/templates/components/edit-category-settings.hbs @@ -81,7 +81,7 @@

{{i18n "category.settings_sections.moderation"}}

- {{#if siteSettings.enable_category_group_review}} + {{#if siteSettings.enable_category_group_moderation}}