12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667 |
- # frozen_string_literal: true
- class AccountPolicy < ApplicationPolicy
- def index?
- role.can?(:manage_users)
- end
- def show?
- role.can?(:manage_users)
- end
- def warn?
- role.can?(:manage_users, :manage_reports) && role.overrides?(record.user_role)
- end
- def suspend?
- role.can?(:manage_users, :manage_reports) && role.overrides?(record.user_role) && !record.instance_actor?
- end
- def destroy?
- record.suspended_temporarily? && role.can?(:delete_user_data)
- end
- def unsuspend?
- role.can?(:manage_users) && record.suspension_origin_local?
- end
- def sensitive?
- role.can?(:manage_users, :manage_reports) && role.overrides?(record.user_role)
- end
- def unsensitive?
- role.can?(:manage_users)
- end
- def silence?
- role.can?(:manage_users, :manage_reports) && role.overrides?(record.user_role)
- end
- def unsilence?
- role.can?(:manage_users)
- end
- def redownload?
- role.can?(:manage_federation)
- end
- def remove_avatar?
- role.can?(:manage_users, :manage_reports) && role.overrides?(record.user_role)
- end
- def remove_header?
- role.can?(:manage_users, :manage_reports) && role.overrides?(record.user_role)
- end
- def memorialize?
- role.can?(:delete_user_data) && role.overrides?(record.user_role) && !record.instance_actor?
- end
- def unblock_email?
- role.can?(:manage_users)
- end
- def review?
- role.can?(:manage_taxonomies)
- end
- end
|