Allow admin to deactivate invite created by users (#5860)
parent
9927df83ad
commit
df03042a6e
|
@ -10,7 +10,7 @@ class InvitePolicy < ApplicationPolicy
|
||||||
end
|
end
|
||||||
|
|
||||||
def destroy?
|
def destroy?
|
||||||
owner? || staff?
|
owner? || (Setting.min_invite_role == 'admin' ? admin? : staff?)
|
||||||
end
|
end
|
||||||
|
|
||||||
private
|
private
|
||||||
|
|
|
@ -16,4 +16,6 @@
|
||||||
%time.formatted{ datetime: invite.expires_at.iso8601, title: l(invite.expires_at) }
|
%time.formatted{ datetime: invite.expires_at.iso8601, title: l(invite.expires_at) }
|
||||||
= l invite.expires_at
|
= l invite.expires_at
|
||||||
%td= table_link_to 'link', public_invite_url(invite_code: invite.code), public_invite_url(invite_code: invite.code)
|
%td= table_link_to 'link', public_invite_url(invite_code: invite.code), public_invite_url(invite_code: invite.code)
|
||||||
%td= table_link_to 'times', t('invites.delete'), invite_path(invite), method: :delete if policy(invite).destroy?
|
%td
|
||||||
|
- if !invite.expired? && policy(invite).destroy?
|
||||||
|
= table_link_to 'times', t('invites.delete'), admin_invite_path(invite), method: :delete
|
||||||
|
|
|
@ -12,4 +12,6 @@
|
||||||
%time.formatted{ datetime: invite.expires_at.iso8601, title: l(invite.expires_at) }
|
%time.formatted{ datetime: invite.expires_at.iso8601, title: l(invite.expires_at) }
|
||||||
= l invite.expires_at
|
= l invite.expires_at
|
||||||
%td= table_link_to 'link', public_invite_url(invite_code: invite.code), public_invite_url(invite_code: invite.code)
|
%td= table_link_to 'link', public_invite_url(invite_code: invite.code), public_invite_url(invite_code: invite.code)
|
||||||
%td= table_link_to 'times', t('invites.delete'), invite_path(invite), method: :delete if policy(invite).destroy?
|
%td
|
||||||
|
- if invite.expired? && policy(invite).destroy?
|
||||||
|
= table_link_to 'times', t('invites.delete'), invite_path(invite), method: :delete
|
||||||
|
|
Loading…
Reference in New Issue