internetee-registry/app/controllers/admin/epp_logs_controller.rb
2021-09-09 13:06:51 +03:00

44 lines
1.5 KiB
Ruby

module Admin
class EppLogsController < BaseController
load_and_authorize_resource class: ApiLog::EppLog
before_action :set_default_dates, only: [:index]
# rubocop:disable Metrics/MethodLength
def index
@q = ApiLog::EppLog.ransack(params[:q])
@q.sorts = 'id desc' if @q.sorts.empty?
@epp_logs = @q.result
if params[:q][:created_at_gteq].present?
@epp_logs = @epp_logs.where("extract(epoch from created_at) >= extract(epoch from ?::timestamp)",
Time.parse(params[:q][:created_at_gteq]))
end
if params[:q][:created_at_lteq].present?
@epp_logs = @epp_logs.where("extract(epoch from created_at) <= extract(epoch from ?::timestamp)",
Time.parse(params[:q][:created_at_lteq]))
end
@epp_logs = @epp_logs.page(params[:page])
render_by_format('admin/epp_logs/index', 'epp_logs')
end
# rubocop:enable Metrics/MethodLength
def show
@epp_log = ApiLog::EppLog.find(params[:id])
end
def set_default_dates
params[:q] ||= {}
if params[:q][:created_at_gteq].nil? && params[:q][:created_at_lteq].nil? && params[:created_after].present?
default_date = params[:created_after]
if !['today', 'tomorrow', 'yesterday'].include?(default_date)
default_date = 'today'
end
params[:q][:created_at_gteq] = Date.send(default_date).strftime("%Y-%m-%d")
end
end
end
end