# frozen_string_literal: true class EventsController < ApplicationController before_action :set_project def index @events = @project.events.order(timestamp: :desc) Rails.logger.debug "Found project? #{@project.name} / #{@project.events.count} / #{@events.count}" Rails.logger.debug "Action: #{params[:waf_action]}" # Apply filters @events = @events.by_ip(params[:ip]) if params[:ip].present? @events = @events.by_waf_action(params[:waf_action]) if params[:waf_action].present? @events = @events.where(country_code: params[:country]) if params[:country].present? Rails.logger.debug "after filter #{@project.name} / #{@project.events.count} / #{@events.count}" # Debug info Rails.logger.debug "Events count before pagination: #{@events.count}" Rails.logger.debug "Project: #{@project&.name} (ID: #{@project&.id})" # Paginate @pagy, @events = pagy(@events, items: 50) Rails.logger.debug "Events count after pagination: #{@events.count}" Rails.logger.debug "Pagy info: #{@pagy.count} total, #{@pagy.pages} pages" end private def set_project @project = Project.find(params[:project_id]) || Project.find_by(slug: params[:project_id]) redirect_to projects_path, alert: "Project not found" unless @project end end