Sha256: 348cbf2c93f63e0676207aaa689499ace313fe3b069ec48b2cf8f9a26f0a7c8b
Contents?: true
Size: 896 Bytes
Versions: 6
Compression:
Stored size: 896 Bytes
Contents
# frozen_string_literal: true module Spotlight ## # Exhibit mixin to provide analytics data module ExhibitAnalytics def analytics(dates = { start_date: '365daysAgo', end_date: 'today' }, path = nil) return OpenStruct.new unless analytics_provider&.enabled? @analytics ||= {} start_date = dates['start_date'] || 1.month.ago @analytics[start_date] ||= analytics_provider.exhibit_data(path || self, dates) end def page_analytics(dates = { start_date: '365daysAgo', end_date: 'today' }, path = nil) return [] unless analytics_provider&.enabled? @page_analytics ||= {} start_date = dates['start_date'] || 1.month.ago @page_analytics[start_date] ||= analytics_provider.page_data(path || self, dates) end def analytics_provider @analytics_provider ||= Spotlight::Engine.config.analytics_provider.new end end end
Version data entries
6 entries across 6 versions & 1 rubygems