2022-01-01 13:38:12 +00:00
|
|
|
# Copyright (C) 2012-2022 Zammad Foundation, https://zammad-foundation.org/
|
2021-06-01 12:20:20 +00:00
|
|
|
|
2020-03-19 09:39:51 +00:00
|
|
|
class Controllers::ExternalCredentialsControllerPolicy < Controllers::ApplicationControllerPolicy
|
|
|
|
permit! :index, to: 'admin'
|
|
|
|
default_permit! -> { "admin.channel_#{provider_name}" }
|
|
|
|
|
|
|
|
private
|
|
|
|
|
|
|
|
def provider_name
|
|
|
|
@provider_name ||= begin
|
2020-05-28 13:28:07 +00:00
|
|
|
if record.params[:id].present? && ExternalCredential.exists?(record.params[:id])
|
2020-03-19 09:39:51 +00:00
|
|
|
ExternalCredential.find(record.params[:id]).name
|
|
|
|
else
|
|
|
|
record.params[:provider] || record.params[:name]
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|