ballot_box 0.1.6 → 0.1.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/Gemfile CHANGED
@@ -3,7 +3,7 @@ source "http://rubygems.org"
3
3
  gemspec
4
4
 
5
5
  gem "rails", "3.0.10"
6
- gem "mysql2", "0.2.7"
6
+ gem "mysql2", "0.2.13"
7
7
 
8
8
  gem "rspec-rails", "~> 2.7.0"
9
9
  gem "database_cleaner", "~> 0.6.7"
@@ -1,4 +1,4 @@
1
1
  # encoding: utf-8
2
2
  module BallotBox
3
- VERSION = "0.1.6"
3
+ VERSION = "0.1.7"
4
4
  end
@@ -48,13 +48,23 @@ module BallotBox
48
48
 
49
49
  protected
50
50
 
51
+ # Simple little alias
52
+ def tn
53
+ quoted_table_name
54
+ end
55
+
51
56
  def chart_dates_browsers
52
57
  result = []
53
- data = scoped.select("DATE(created_at) AS created_at, SUM(value) AS rating, browser_name").group("DATE(created_at), browser_name").all
58
+ t = quoted_table_name
59
+ cols = ["DATE(#{tn}.created_at) AS created_at",
60
+ "SUM(#{tn}.value) AS rating",
61
+ "#{tn}.browser_name"]
62
+
63
+ data = scoped.select(cols.join(',')).group("DATE(#{tn}.created_at), #{tn}.browser_name").all
54
64
 
55
65
  result << {
56
66
  :name => "total",
57
- :data => data.group_by(&:created_at).collect { |created_at, items| [created_at, items.sum(&:rating) ] }
67
+ :data => data.group_by(&:created_at).collect { |created_at, items| [created_at, items.sum(&:rating).to_i ] }
58
68
  }
59
69
 
60
70
  data.group_by(&:browser_name).each do |browser_name, items|
@@ -68,17 +78,20 @@ module BallotBox
68
78
  end
69
79
 
70
80
  def chart_dates
71
- data = scoped.select("DATE(created_at) AS created_at, SUM(value) AS rating").group("DATE(created_at)").all
81
+ t = quoted_table_name
82
+ cols = ["DATE(#{tn}.created_at) AS created_at", "SUM(#{tn}.value) AS rating"]
83
+ data = scoped.select(cols.join(',')).group("DATE(#{tn}.created_at)").all
72
84
  data.collect { |item| [ item.created_at, item.rating.to_i ] }
73
85
  end
74
86
 
75
87
  def chart_browsers
76
- data = scoped.select("browser_name, SUM(value) AS rating").group("browser_name").all
88
+ t = quoted_table_name
89
+ data = scoped.select("#{tn}.browser_name, SUM(#{tn}.value) AS rating").group("#{tn}.browser_name").all
77
90
  data.collect { |item| [ item.browser_name, item.rating.to_i ] }
78
91
  end
79
92
 
80
93
  def chart_platforms
81
- data = scoped.select("browser_platform, SUM(value) AS rating").group("browser_platform").all
94
+ data = scoped.select("#{tn}.browser_platform, SUM(#{tn}.value) AS rating").group("#{tn}.browser_platform").all
82
95
  data.collect { |item| [ item.browser_platform, item.rating.to_i ] }
83
96
  end
84
97
  end
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ballot_box
3
3
  version: !ruby/object:Gem::Version
4
- hash: 23
4
+ hash: 21
5
5
  prerelease:
6
6
  segments:
7
7
  - 0
8
8
  - 1
9
- - 6
10
- version: 0.1.6
9
+ - 7
10
+ version: 0.1.7
11
11
  platform: ruby
12
12
  authors:
13
13
  - Igor Galeta
@@ -15,7 +15,7 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2011-11-01 00:00:00 +02:00
18
+ date: 2011-11-16 00:00:00 +02:00
19
19
  default_executable:
20
20
  dependencies:
21
21
  - !ruby/object:Gem::Dependency