Skip to content
Snippets Groups Projects

Add Get Web hook events API

3 files
+ 17
5
Compare changes
  • Side-by-side
  • Inline
Files
3
@@ -7,7 +7,7 @@ class WebHookLogsFinder
def initialize(hook, current_user, params = {})
@hook = hook
@current_user = current_user
@params = { recent_only: true }.merge(params)
@params = params
end
def execute
@@ -15,8 +15,7 @@ def execute
logs = @hook.web_hook_logs
logs = by_status_code(logs)
params[:recent_only] ? logs.recent(7) : logs
logs.recent(WebHookLog::MAX_RECENT_DAYS)
end
private
@@ -33,6 +32,12 @@ def by_status_code(logs)
filters.map { |code| logs.by_status_code(code) }.reduce(:or)
end
def by_date_range(logs)
return logs unless params[:start_date] && params[:end_date]
logs.by_date_range(params[:start_date], params[:end_date])
end
def string_filter_to_code(status_string)
case status_string
when 'successful'
@@ -47,3 +52,5 @@ def string_filter_to_code(status_string)
end
end
end
WebHooks::WebHookLogsFinder.prepend_mod
Loading