FEATURE: flag dispositions normalization

All flags should end up in one of the three dispositions
  - Agree
  - Disagree
  - Defer

In the administration area, the *active* flags section displays 4 buttons
  - Agree (hide post + send PM)
  - Disagree
  - Defer
  - Delete

Clicking "Delete" will open a modal that offer to
  - Delete Post & Defer Flags
  - Delete Post & Agree with Flags
  - Delete Spammer (if available)

When the flag has a list associated, the list will now display 1
response and 1 reply and a "show more..." link if there are more in the
conversation. Replying to the conversation will NOT give a disposition.
Moderators must click the buttons that does that.

If someone clicks one buttons, this will add a default moderator message
from that moderator saying what happened.

The *old* flags section now displays the proper dispositions and is
super duper fast (no more N+9999 queries).

FIX: the old list includes deleted topics
FIX: the lists now properly display the topic states (deleted, closed,
archived, hidden, PM)
FIX: flagging a topic that you've already flagged the first post
This commit is contained in:
Régis Hanol
2014-07-28 19:17:37 +02:00
parent 717f57c968
commit bddffa7f9a
50 changed files with 886 additions and 558 deletions

View File

@@ -1044,9 +1044,9 @@ en:
actions:
flag: 'Flag'
clear_flags:
one: "Clear flag"
other: "Clear flags"
defer_flags:
one: "Defer flag"
other: "Defer flags"
it_too:
off_topic: "Flag it too"
spam: "Flag it too"
@@ -1411,25 +1411,37 @@ en:
old: "Old"
active: "Active"
agree_hide: "Agree (hide post + send PM)"
agree_hide_title: "Hide this post and automatically send the user a private message urging them to edit it"
defer: "Defer"
defer_title: "No action is necessary at this time, defer any action on this flag until a later date, or never"
delete_post: "Delete Post"
delete_post_title: "Delete post; if the first post, delete the topic"
disagree_unhide: "Disagree (unhide post)"
disagree_unhide_title: "Remove any flags from this post and make the post visible again"
disagree: "Disagree"
disagree_title: "Disagree with flag, remove any flags from this post"
agree_flag_hide_post: "Agree (hide post + send PM)"
agree_flag_hide_post_title: "Hide this post and automatically send the user a private message urging them to edit it"
defer_flag: "Defer"
defer_flag_title: "No action is necessary at this time, defer any action on this flag until a later date, or never"
delete: "Delete"
delete_title: "Delete"
delete_post_defer_flag: "Delete Post and defer flag"
delete_post_defer_flag_title: "Delete post; if the first post, delete the topic"
delete_post_agree_flag: "Delete Post and agree with flag"
delete_post_agree_flag_title: "Delete post; if the first post, delete the topic"
delete_flag_modal_title: "Choose the delete action"
delete_spammer: "Delete Spammer"
delete_spammer_title: "Delete the user and all its posts and topics."
disagree_flag_unhide_post: "Disagree (unhide post)"
disagree_flag_unhide_post_title: "Remove any flags from this post and make the post visible again"
disagree_flag: "Disagree"
disagree_flag_title: "Disagree with flag, remove any flags from this post"
clear_topic_flags: "Done"
clear_topic_flags_title: "The topic has been investigated and issues have been resolved. Click Done to remove the flags."
more: "(more...)"
dispositions:
agreed: "agreed"
disagreed: "disagreed"
defered: "defered"
flagged_by: "Flagged by"
resolved_by: "Resolved by"
system: "System"
error: "Something went wrong"
view_message: "Reply"
reply_message: "Reply"
no_results: "There are no flags."
topic_flagged: "This <strong>topic</strong> has been flagged."
visit_topic: "Visit the topic to take action"

View File

@@ -1211,6 +1211,13 @@ en:
spam: "Your post was flagged as **spam**: the community thinks it is an advertisement, not useful or relevant to the topic, but promotional in nature."
notify_moderators: "Your post was flagged **for moderator attention**: the community thinks something about the post requires moderator intervention."
flags_dispositions:
agreed: "Thanks for your reporting this post. We've agreed with your flag."
agreed_and_deleted: "Thanks for your reporting this post. We've agreed with your flag and deleted the post."
disagreed: "Thanks for your reporting this post. Unfortunately, we've agreed with your flag."
defered: "Thanks for your reporting this post. We're looking into handling this post."
defered_and_deleted: "Thanks for your reporting this post. We've agreed with your flag and deleted the post."
system_messages:
post_hidden:
subject_template: "Post hidden due to community flagging"

View File

@@ -273,7 +273,7 @@ Discourse::Application.routes.draw do
resources :post_actions do
collection do
get "users"
post "clear_flags"
post "defer_flags"
end
end
resources :user_actions