devise-activity 0.2.0 → 1.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.rdoc +22 -1
- data/lib/devise_activity/stats.rb +13 -9
- data/lib/devise_activity/version.rb +1 -1
- metadata +7 -8
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: b57329ba652624d1da6fa13bcbcb5d7fdb2c46e5f453911d38a5af6fa7086380
|
4
|
+
data.tar.gz: 995ba8041678b1cd227e261ebfa8e54d78b208a97a53bb777bbebf96e8030b41
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 7c4f77c0982446a9a5789b1617c9393ecbfe8dc1abe7d1f34fd36ad4e9aa741d6e7a27ad3fb918890d9e5efb1fbe2cc65b677bf78b57047a4e9e2bde707f5c06
|
7
|
+
data.tar.gz: e91ba1898431495523bfc47fe2b472e12955cc3402d705a3446286d840f44725cdaf89f4579e59d346e65ece645ebfcb00f7843715e76800673006bd9caf6358
|
data/README.rdoc
CHANGED
@@ -57,7 +57,28 @@ will return last account was created by which user. Similarily
|
|
57
57
|
|
58
58
|
DeviseActivity::Navigation.last.controller
|
59
59
|
|
60
|
-
|
60
|
+
DeviseActivity also provide few handy model methods for Statistics
|
61
|
+
|
62
|
+
DeviseActivity::Stats.most_visits_by
|
63
|
+
|
64
|
+
DeviseActivity::Stats.least_visits_by
|
65
|
+
|
66
|
+
DeviseActivity::Stats.most_popular_controller
|
67
|
+
|
68
|
+
DeviseActivity::Stats.least_popular_controller
|
69
|
+
|
70
|
+
DeviseActivity::Stats.most_popular_action
|
71
|
+
|
72
|
+
DeviseActivity::Stats.least_popular_action
|
73
|
+
|
74
|
+
DeviseActivity::Stats.most_visited_page
|
75
|
+
|
76
|
+
DeviseActivity::Stats.least_visited_page
|
77
|
+
|
78
|
+
DeviseActivity::Stats.most_sign_ins_by
|
79
|
+
|
80
|
+
DeviseActivity::Stats.total_sign_ins(user)
|
81
|
+
|
61
82
|
|
62
83
|
== TODO
|
63
84
|
|
@@ -3,39 +3,43 @@ module DeviseActivity
|
|
3
3
|
class << self
|
4
4
|
|
5
5
|
def most_visits_by
|
6
|
-
DeviseActivity::Navigation.joins(:session).group("sessions.user_id").count.max_by{|k, v| v }.first
|
6
|
+
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
|
7
7
|
end
|
8
8
|
|
9
9
|
def least_visits_by
|
10
|
-
DeviseActivity::Navigation.joins(:session).group("sessions.user_id").count.min_by{|k, v| v }.first
|
10
|
+
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
|
11
11
|
end
|
12
12
|
|
13
13
|
def most_popular_action
|
14
|
-
|
14
|
+
DeviseActivity::Navigation.group("action_name").count.max_by{|k, v| v}.first
|
15
15
|
end
|
16
16
|
|
17
17
|
def least_popular_action
|
18
|
-
|
18
|
+
DeviseActivity::Navigation.group("action_name").count.min_by{|k, v| v}.first
|
19
19
|
end
|
20
20
|
|
21
21
|
def most_popular_controller
|
22
|
-
|
22
|
+
DeviseActivity::Navigation.group("controller_name").count.max_by{|k, v| v}.first
|
23
23
|
end
|
24
24
|
|
25
25
|
def least_popular_controller
|
26
|
-
|
26
|
+
DeviseActivity::Navigation.group("controller_name").count.min_by{|k, v| v}.first
|
27
27
|
end
|
28
28
|
|
29
29
|
def most_visited_page
|
30
|
+
DeviseActivity::Navigation.group("page_url").count.max_by{|k, v| v}.first
|
31
|
+
end
|
30
32
|
|
33
|
+
def least_visited_page
|
34
|
+
DeviseActivity::Navigation.group("page_url").count.min_by{|k, v| v}.first
|
31
35
|
end
|
32
36
|
|
33
37
|
def most_sign_ins_by
|
34
|
-
|
38
|
+
DeviseActivity.configuration.devise_model_name.classify.constantize.find((DeviseActivity::Session.group("#{DeviseActivity.configuration.devise_model_name}_id").count.max_by{|k, v| v }.first) rescue nil
|
35
39
|
end
|
36
40
|
|
37
|
-
def
|
38
|
-
|
41
|
+
def total_sign_ins obj
|
42
|
+
Session.where("#{DeviseActivity.configuration.devise_model_name}_id = ?", obj.id).count
|
39
43
|
end
|
40
44
|
|
41
45
|
end
|
metadata
CHANGED
@@ -1,27 +1,27 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: devise-activity
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 1.0.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- M Shahzad Tariq
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2019-03-
|
11
|
+
date: 2019-03-28 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rails
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
16
16
|
requirements:
|
17
|
-
- -
|
17
|
+
- - '>='
|
18
18
|
- !ruby/object:Gem::Version
|
19
19
|
version: '3'
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
|
-
- -
|
24
|
+
- - '>='
|
25
25
|
- !ruby/object:Gem::Version
|
26
26
|
version: '3'
|
27
27
|
description: Store devise user session and page visiting history with duration and
|
@@ -93,17 +93,16 @@ require_paths:
|
|
93
93
|
- lib
|
94
94
|
required_ruby_version: !ruby/object:Gem::Requirement
|
95
95
|
requirements:
|
96
|
-
- -
|
96
|
+
- - '>='
|
97
97
|
- !ruby/object:Gem::Version
|
98
98
|
version: '0'
|
99
99
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
100
100
|
requirements:
|
101
|
-
- -
|
101
|
+
- - '>='
|
102
102
|
- !ruby/object:Gem::Version
|
103
103
|
version: '0'
|
104
104
|
requirements: []
|
105
|
-
|
106
|
-
rubygems_version: 2.7.7
|
105
|
+
rubygems_version: 3.0.2
|
107
106
|
signing_key:
|
108
107
|
specification_version: 4
|
109
108
|
summary: Store devise user session and page visiting history with duration and date/time
|