Class: DeviseActivity::Stats
- Inherits:
-
Object
- Object
- DeviseActivity::Stats
- Defined in:
- lib/devise_activity/stats.rb
Class Method Summary collapse
- .least_popular_action ⇒ Object
- .least_popular_controller ⇒ Object
- .least_visited_page ⇒ Object
- .least_visits_by ⇒ Object
- .most_popular_action ⇒ Object
- .most_popular_controller ⇒ Object
- .most_sign_ins_by ⇒ Object
- .most_visited_page ⇒ Object
- .most_visits_by ⇒ Object
- .page_view_count(page_url) ⇒ Object
- .total_sign_ins(obj) ⇒ Object
Class Method Details
.least_popular_action ⇒ Object
18 19 20 |
# File 'lib/devise_activity/stats.rb', line 18 def least_popular_action DeviseActivity::Navigation.group("action_name").count.min_by{|k, v| v}.first end |
.least_popular_controller ⇒ Object
26 27 28 |
# File 'lib/devise_activity/stats.rb', line 26 def least_popular_controller DeviseActivity::Navigation.group("controller_name").count.min_by{|k, v| v}.first end |
.least_visited_page ⇒ Object
34 35 36 |
# File 'lib/devise_activity/stats.rb', line 34 def least_visited_page DeviseActivity::Navigation.group("page_url").count.min_by{|k, v| v}.first end |
.least_visits_by ⇒ Object
10 11 12 |
# File 'lib/devise_activity/stats.rb', line 10 def least_visits_by DeviseActivity.configuration.devise_model_name.classify.constantize.find(DeviseActivity::Navigation.joins(:session).group("sessions.user_id").count.min_by{|k, v| v }.first) rescue nil end |
.most_popular_action ⇒ Object
14 15 16 |
# File 'lib/devise_activity/stats.rb', line 14 def most_popular_action DeviseActivity::Navigation.group("action_name").count.max_by{|k, v| v}.first end |
.most_popular_controller ⇒ Object
22 23 24 |
# File 'lib/devise_activity/stats.rb', line 22 def most_popular_controller DeviseActivity::Navigation.group("controller_name").count.max_by{|k, v| v}.first end |
.most_sign_ins_by ⇒ Object
42 43 44 45 |
# File 'lib/devise_activity/stats.rb', line 42 def most_sign_ins_by id = DeviseActivity::Session.group("#{DeviseActivity.configuration.devise_model_name}_id").count.max_by{|k, v| v }.first DeviseActivity.configuration.devise_model_name.classify.constantize.find(id) rescue nil end |
.most_visited_page ⇒ Object
30 31 32 |
# File 'lib/devise_activity/stats.rb', line 30 def most_visited_page DeviseActivity::Navigation.group("page_url").count.max_by{|k, v| v}.first end |
.most_visits_by ⇒ Object
6 7 8 |
# File 'lib/devise_activity/stats.rb', line 6 def most_visits_by DeviseActivity.configuration.devise_model_name.classify.constantize.find(DeviseActivity::Navigation.joins(:session).group("sessions.user_id").count.max_by{|k, v| v }.first) rescue nil end |
.page_view_count(page_url) ⇒ Object
38 39 40 |
# File 'lib/devise_activity/stats.rb', line 38 def page_view_count page_url DeviseActivity::Navigation.where(page_url: page_url).count end |
.total_sign_ins(obj) ⇒ Object
47 48 49 |
# File 'lib/devise_activity/stats.rb', line 47 def total_sign_ins obj Session.where("#{DeviseActivity.configuration.devise_model_name}_id = ?", obj.id).count end |