FEATURE: the ability to change the order of flags (#27269)

Continued work on moderate flags UI.
In this PR admins are allowed to change the order of flags. The notify user flag is always on top but all other flags can be moved.
This commit is contained in:
Krzysztof Kotlarek
2024-06-05 13:27:06 +10:00
committed by GitHub
parent c1ecbb8d28
commit aa88b07640
21 changed files with 352 additions and 11 deletions

View File

@ -18,4 +18,20 @@ class Admin::Config::FlagsController < Admin::AdminController
def index
end
def reorder
with_service(ReorderFlag) do
on_success do
Discourse.request_refresh!
render(json: success_json)
end
on_failure { render(json: failed_json, status: 422) }
on_model_not_found(:message) { raise Discourse::NotFound }
on_failed_policy(:invalid_access) { raise Discourse::InvalidAccess }
on_failed_policy(:invalid_move) { render_json_error(I18n.t("flags.errors.wrong_move")) }
on_failed_contract do |contract|
render(json: failed_json.merge(errors: contract.errors.full_messages), status: 400)
end
end
end
end