mirror of https://github.com/docusealco/docuseal
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
36 lines
758 B
36 lines
758 B
# frozen_string_literal: true
|
|
|
|
class WebhookPreferencesController < ApplicationController
|
|
EVENTS = %w[
|
|
form.viewed
|
|
form.started
|
|
form.completed
|
|
template.created
|
|
template.updated
|
|
submission.archived
|
|
].freeze
|
|
|
|
before_action :load_account_config
|
|
authorize_resource :account_config, parent: false
|
|
|
|
def create
|
|
@account_config.value[account_config_params[:event]] = account_config_params[:value] == '1'
|
|
|
|
@account_config.save!
|
|
|
|
head :ok
|
|
end
|
|
|
|
private
|
|
|
|
def load_account_config
|
|
@account_config =
|
|
current_account.account_configs.find_or_initialize_by(key: AccountConfig::WEBHOOK_PREFERENCES_KEY)
|
|
@account_config.value ||= {}
|
|
end
|
|
|
|
def account_config_params
|
|
params.permit(:event, :value)
|
|
end
|
|
end
|