Files
danbooru/app/policies/post_flag_policy.rb
evazion a7dc05ce63 Enable frozen string literals.
Make all string literals immutable by default.
2021-12-14 21:33:27 -06:00

34 lines
642 B
Ruby

# frozen_string_literal: true
class PostFlagPolicy < ApplicationPolicy
def edit?
update?
end
def update?
unbanned? && record.pending? && record.creator_id == user.id
end
def can_search_flagger?
user.is_moderator?
end
def can_view_flagger?
(user.is_moderator? || record.creator_id == user.id) && (record.post&.uploader_id != user.id)
end
def permitted_attributes_for_create
[:post_id, :reason]
end
def permitted_attributes_for_update
[:reason]
end
def api_attributes
attributes = super + [:category]
attributes -= [:creator_id] unless can_view_flagger?
attributes
end
end