discourse/app/models/concerns/reports/visits.rb

30 lines
762 B
Ruby

# frozen_string_literal: true
module Reports::Visits
extend ActiveSupport::Concern
class_methods do
def report_visits(report)
group_filter = report.filters.dig(:group)
report.add_filter("group", type: "group", default: group_filter)
report.icon = "user"
basic_report_about report,
UserVisit,
:by_day,
report.start_date,
report.end_date,
group_filter
add_counts report, UserVisit, "visited_at"
report.prev30Days =
UserVisit.where(
"visited_at >= ? and visited_at < ?",
report.start_date - 30.days,
report.start_date,
).count
end
end
end