mirror of
https://github.com/discourse/discourse.git
synced 2025-02-25 18:55:32 -06:00
FEATURE: Allow admins to delete reviewables via API (#21174)
This PR adds the ability to destroy reviewables for a passed user via the API. This was not possible before as this action was reserved for reviewables for you created only. If a user is an admin and calls the `#destroy` action from the API they are able to destroy a reviewable for a passed user. A user can be targeted by passed either their: - username - external_id (for SSO) to the request. In the case you attempt to destroy a non-personal reviewable and - You are not an admin - You do not access the `#destroy` action via the API you will raise a `Discourse::InvalidAccess` (403) and will not succeed in destroying the reviewable.
This commit is contained in:
@@ -232,7 +232,7 @@ class Guardian
|
||||
end
|
||||
|
||||
def can_delete_reviewable_queued_post?(reviewable)
|
||||
reviewable.present? && authenticated? && reviewable.created_by_id == @user.id
|
||||
reviewable.present? && authenticated? && (reviewable.created_by_id == @user.id || @user.admin?)
|
||||
end
|
||||
|
||||
def can_see_group?(group)
|
||||
|
||||
Reference in New Issue
Block a user