Module: GoogleAnalyticsPageViewRanking

Defined in:
lib/google_analytics_page_view_ranking.rb,
lib/google_analytics_page_view_ranking/ranking.rb,
lib/google_analytics_page_view_ranking/version.rb,
lib/google_analytics_page_view_ranking/page_view.rb,
lib/google_analytics_page_view_ranking/google_analytics.rb,
lib/generators/google_analytics_page_view_ranking/migration/migration_generator.rb

Defined Under Namespace

Modules: Ranking Classes: GoogleAnalytics, MigrationGenerator, PageView

Constant Summary collapse

VERSION =
"0.0.2"
@@target_classes =
[]

Class Method Summary collapse

Class Method Details

.add_target_class(klass) ⇒ Object



8
9
10
# File 'lib/google_analytics_page_view_ranking.rb', line 8

def self.add_target_class(klass)
  @@target_classes << klass unless @@target_classes.include?(klass)
end

.log(str) ⇒ Object



31
32
33
34
35
36
37
# File 'lib/google_analytics_page_view_ranking.rb', line 31

def self.log(str)
  if defined?(Rails)
    Rails.logger.info str
  else
    puts str
  end
end

.refresh_all_rankingsObject



16
17
18
19
20
21
22
23
24
25
26
27
28
29
# File 'lib/google_analytics_page_view_ranking.rb', line 16

def self.refresh_all_rankings
  GoogleAnalyticsPageViewRanking::PageView.transaction do
    GoogleAnalyticsPageViewRanking::PageView.delete_all
    self.target_classes.each do |klass|
      log "[GoogleAnalyticsPageViewRanking] Start #{klass}"
      log "[GoogleAnalyticsPageViewRanking] Start #{klass}: daily"
      klass.refresh_daily_ranking!
      log "[GoogleAnalyticsPageViewRanking] Start #{klass}: weekly"
      klass.refresh_weekly_ranking!
      log "[GoogleAnalyticsPageViewRanking] Start #{klass}: monthly"
      klass.refresh_monthly_ranking!
    end
  end
end

.target_classesObject



12
13
14
# File 'lib/google_analytics_page_view_ranking.rb', line 12

def self.target_classes
  @@target_classes
end