20 lines
588 B
Ruby
20 lines
588 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
|