Class: RubyCms::Admin::AnalyticsController

Inherits:
BaseController show all
Defined in:
app/controllers/ruby_cms/admin/analytics_controller.rb

Instance Method Summary collapse

Instance Method Details

#indexObject



12
13
14
15
16
17
18
19
20
# File 'app/controllers/ruby_cms/admin/analytics_controller.rb', line 12

def index
  report = RubyCms::Analytics::Report.new(
    start_date: @start_date,
    end_date: @end_date,
    period: @period
  )
  @stats = report.dashboard_stats
  @stats.each {|key, value| instance_variable_set(:"@#{key}", value) }
end

#page_detailsObject



22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
# File 'app/controllers/ruby_cms/admin/analytics_controller.rb', line 22

def page_details
  @page_name = sanitize_page_name(params[:page_name])
  unless @page_name
    return redirect_to ruby_cms_admin_analytics_path,
                       alert: t("ruby_cms.admin.analytics.invalid_page_name",
                                default: "Invalid page name.")
  end

  report = RubyCms::Analytics::Report.new(
    start_date: @start_date,
    end_date: @end_date,
    period: @period
  )
  data = report.page_stats(@page_name)
  @page_views = data[:page_views]
  @page_stats = data[:stats]
end

#visitor_detailsObject



40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
# File 'app/controllers/ruby_cms/admin/analytics_controller.rb', line 40

def visitor_details
  @ip_address = sanitize_ip_address(params[:ip_address])
  unless @ip_address
    return redirect_to ruby_cms_admin_analytics_path,
                       alert: t("ruby_cms.admin.analytics.invalid_ip_address",
                                default: "Invalid IP address.")
  end

  report = RubyCms::Analytics::Report.new(
    start_date: @start_date,
    end_date: @end_date,
    period: @period
  )
  data = report.visitor_stats(@ip_address)
  @visitor_views = data[:visitor_views]
  @visitor_stats = data[:stats]
end