audited_logfile 0.0.10 → 0.0.12

Sign up to get free protection for your applications and to get access to all the features.
Files changed (2) hide show
  1. data/lib/audited_logfile.rb +17 -5
  2. metadata +10 -10
@@ -53,11 +53,11 @@ module Audited
53
53
  user_info = user ? "#{user_type}(#{user_id}): #{user.try(:email)}" : 'Unknown'
54
54
  common_log = "#{Time.now.iso8601(1)}, #{action.upcase}, #{user_info}"
55
55
 
56
- case action
57
- when 'report'
58
- AuditedLogfile.logger.info "#{common_log}, #{audited_changes.inspect}"
59
- else
56
+ case action.to_s
57
+ when 'create', 'update', 'destroy'
60
58
  AuditedLogfile.logger.info "#{common_log}, #{auditable_type}, #{auditable_id}, (#{changes})"
59
+ else
60
+ AuditedLogfile.logger.info "#{common_log}, #{audited_changes.inspect}"
61
61
  end
62
62
  end
63
63
  end
@@ -88,7 +88,19 @@ module Audited
88
88
  end
89
89
 
90
90
  def self.report(options)
91
- Adapters::ActiveRecord::Audit.create!(action: 'report', audited_changes: options)
91
+ action = options[:action] || 'report'
92
+ Adapters::ActiveRecord::Audit.create!(action: action, audited_changes: options)
93
+ end
94
+
95
+ def self.week_activity_chart_data(actions, since, till)
96
+ records = Adapters::ActiveRecord::Audit
97
+ .select("TO_CHAR(created_at, 'DD') DAY, TO_CHAR(created_at, 'MM') MONTH, TO_CHAR(created_at, 'YYYY') YEAR")
98
+ .where(action: actions)
99
+ .where('created_at >= ? AND created_at < ?', since, till + 1)
100
+ data = Hash[Adapters::ActiveRecord::Audit
101
+ .find_by_sql("SELECT DAY, MONTH, YEAR, COUNT(*) COUNT FROM (#{records.to_sql}) GROUP BY YEAR, MONTH, DAY ORDER BY YEAR, MONTH, DAY")
102
+ .map { |x| [Date.new(x.year.to_i, x.month.to_i, x.day.to_i), x.count.to_i] }]
103
+ (since .. till).map { |day| [day, (data[day] || 0)] }
92
104
  end
93
105
  end
94
106
 
metadata CHANGED
@@ -2,31 +2,31 @@
2
2
  name: audited_logfile
3
3
  version: !ruby/object:Gem::Version
4
4
  prerelease:
5
- version: 0.0.10
5
+ version: 0.0.12
6
6
  platform: ruby
7
7
  authors:
8
8
  - Alexander Kiseliov
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2013-02-12 00:00:00.000000000 Z
12
+ date: 2013-05-21 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
+ prerelease: false
16
+ type: :runtime
17
+ name: audited-activerecord
15
18
  version_requirements: !ruby/object:Gem::Requirement
19
+ none: false
16
20
  requirements:
17
21
  - - ~>
18
22
  - !ruby/object:Gem::Version
19
23
  version: '3.0'
20
- none: false
21
- name: audited-activerecord
22
- type: :runtime
23
- prerelease: false
24
24
  requirement: !ruby/object:Gem::Requirement
25
+ none: false
25
26
  requirements:
26
27
  - - ~>
27
28
  - !ruby/object:Gem::Version
28
29
  version: '3.0'
29
- none: false
30
30
  description: Audited extention to log audit
31
31
  email: aakiselev@at-consulting.ru
32
32
  executables: []
@@ -41,20 +41,20 @@ rdoc_options: []
41
41
  require_paths:
42
42
  - lib
43
43
  required_ruby_version: !ruby/object:Gem::Requirement
44
+ none: false
44
45
  requirements:
45
46
  - - ! '>='
46
47
  - !ruby/object:Gem::Version
47
48
  version: '0'
48
- none: false
49
49
  required_rubygems_version: !ruby/object:Gem::Requirement
50
+ none: false
50
51
  requirements:
51
52
  - - ! '>='
52
53
  - !ruby/object:Gem::Version
53
54
  version: '0'
54
- none: false
55
55
  requirements: []
56
56
  rubyforge_project:
57
- rubygems_version: 1.8.24
57
+ rubygems_version: 1.8.25
58
58
  signing_key:
59
59
  specification_version: 3
60
60
  summary: audited_logfile