ballot_box 0.1.6 → 0.1.7

Sign up to get free protection for your applications and to get access to all the features.
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