poormans_trends 0.0.1 → 0.0.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: f3474957efd74cc1aea640c2fada87796c2e288c
4
- data.tar.gz: 9ef01b66d660c731a8db0dea6332b0ef17bbbfe5
3
+ metadata.gz: 0d018821162681b694a444515295d402d93e8e6d
4
+ data.tar.gz: dc4b4029504c0f1971728cb8eef61b6f37a3c2f5
5
5
  SHA512:
6
- metadata.gz: 9cfa08beb72252accee4baaf063bcbb7e411969afacb3d870f590a1cce8b3b38dddcda79c6d70b8e1972492466635e407656dc3eb764e3755ecc9e37a2fa27bc
7
- data.tar.gz: 42a31614d984c236d8b2f898ab8949696a2417c6ed169222a891810b435e6de410f736955f8c202edc88d97ae38f4fce8bcc06941cfb4968388a1ff885200579
6
+ metadata.gz: 8ca116d70ee840bf9679aaf503f4a7320fc474ef61c9878d2f139dcd5eafe94310ece234a19107957d70608788a5c9a92b6ec5f711ec3fb9f4f5f0f36680c9b6
7
+ data.tar.gz: ae73a49f8e49d4966c1615488355e1f2fab16f4e5dcdb5669e836d37a95ae41c0b4f07918ce66aa071c4abde2ea720a8bb6f796577621f11204011c96424e946
@@ -12,9 +12,20 @@ module PoormansTrends
12
12
  }.sort {|a,b| b.count <=> a.count}
13
13
  end
14
14
 
15
+ def group_by_date_sql(colname)
16
+ case ActiveRecord::Base.connection
17
+ when ActiveRecord::ConnectionAdapters::PostgreSQLAdapter
18
+ "#{colname}::date"
19
+ when ActiveRecord::ConnectionAdapters::MysqlAdapter
20
+ "DATE(#{colname})"
21
+ else
22
+ raise Exception.new("Unsupported adapter: #{ActiveRecord::Base.connection.class.name}")
23
+ end
24
+ end
25
+
15
26
  def data_for(klass, colname, start_at, end_at = 1.day.ago)
16
27
  timezone_offset = nil
17
- db = klass.where("#{colname} >= ?", start_at).group("#{colname}::date").count.inject({}) do |sum,(k,v)|
28
+ db = klass.where("#{colname} >= ?", start_at).group(group_by_date_sql(colname)).count.inject({}) do |sum,(k,v)|
18
29
  timezone_offset ||= k.to_time.beginning_of_day - Time.zone.parse(k.to_s).beginning_of_day
19
30
  sum.merge(k.to_time.to_i * 1000 => v)
20
31
  end
@@ -1,3 +1,3 @@
1
1
  module PoormansTrends
2
- VERSION = "0.0.1"
2
+ VERSION = "0.0.2"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: poormans_trends
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 0.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Chew Choon Keat