mirror of
https://github.com/discourse/discourse.git
synced 2024-11-23 07:38:01 +08:00
FIX: don't show the option to notify yourself in the flag dialog
This commit is contained in:
parent
6ba5f715f3
commit
fcaeb885e5
|
@ -158,6 +158,10 @@ class PostSerializer < BasicPostSerializer
|
|||
hidden: (sym == :vote),
|
||||
can_act: scope.post_can_act?(object, sym, taken_actions: post_actions)}
|
||||
|
||||
if sym == :notify_user && scope.current_user.present? && scope.current_user == object.user
|
||||
action_summary[:can_act] = false # Don't send a pm to yourself about your own post, silly
|
||||
end
|
||||
|
||||
# The following only applies if you're logged in
|
||||
if action_summary[:can_act] && scope.current_user.present?
|
||||
action_summary[:can_clear_flags] = scope.is_staff? && PostActionType.flag_types.values.include?(id)
|
||||
|
|
|
@ -36,6 +36,11 @@ describe PostSerializer do
|
|||
visible_actions_for(admin).sort.should == [:like,:notify_user,:spam,:vote]
|
||||
end
|
||||
|
||||
it "can't flag your own post to notify yourself" do
|
||||
serializer = PostSerializer.new(post, scope: Guardian.new(post.user), root: false)
|
||||
notify_user_action = serializer.actions_summary.find { |a| a[:id] == PostActionType.types[:notify_user] }
|
||||
notify_user_action[:can_act].should == false
|
||||
end
|
||||
end
|
||||
|
||||
context "a post by a nuked user" do
|
||||
|
|
Loading…
Reference in New Issue
Block a user