summaryrefslogtreecommitdiff
path: root/app/controllers/admin/hooks_controller.rb
blob: 810801d420920d2b0b0fe03d22107dd173e9ec47 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
# frozen_string_literal: true

class Admin::HooksController < Admin::ApplicationController
  include ::Integrations::HooksExecution

  before_action :hook_logs, only: :edit

  feature_category :integrations
  urgency :low, [:test]

  def test
    result = TestHooks::SystemService.new(hook, current_user, params[:trigger]).execute

    set_hook_execution_notice(result)

    redirect_back_or_default
  end

  private

  def relation
    SystemHook
  end

  def hook
    @hook ||= SystemHook.find(params[:id])
  end

  def hook_logs
    @hook_logs ||= hook.web_hook_logs.recent.page(params[:page])
  end

  def hook_param_names
    %i[enable_ssl_verification token url]
  end

  def trigger_values
    SystemHook.triggers.values
  end
end