acts_rateable 0.0.8 → 0.0.9

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,15 +1,7 @@
1
1
  ---
2
- !binary "U0hBMQ==":
3
- metadata.gz: !binary |-
4
- ZTQ5YmFjMTJkNTkxZWI2ZmU5MTM1ZGFhMzczNjI5NDMyMDgwY2E2NA==
5
- data.tar.gz: !binary |-
6
- ZGJjY2NkYzRlMjE2OWNiYmU1ODFmOGYzZWYwMWJkMTc4OGQ2ZGY4OA==
2
+ SHA1:
3
+ metadata.gz: 9e5ae76f712ab61e271a04c9795b38f78b6108a9
4
+ data.tar.gz: 3bf4cac295b9e8fba704a4b867f632cc10628347
7
5
  SHA512:
8
- metadata.gz: !binary |-
9
- ZmUzMDg5NWNiZmNkMTAzNjFkNWZmMjZmZjg1ZGMwMDdkYTE3Y2FhMzQxM2Uz
10
- ZWU3YmUzNWUzNTgyMWE0Nzc3MmUwNDA2OTIyZmYxNjc0MWY1ZTgwNjU0ZWE5
11
- MDNkY2U5YWZlZWI5Yjk4YmRjMmE0Y2ZmZTc1ODMwZjVjNWU0MjI=
12
- data.tar.gz: !binary |-
13
- ZDNlMDljMTExZTViMzhhODdkNmY1MjlkY2Q2YzU0OWQ2Y2ViY2YxYzkwMWZk
14
- ZjhlZGM1ODA0ZmY3YWVmNGY5NWZjZGViMWQ0OTRjYzI5YzhlYjRkODQ5NjMx
15
- YmI3NzAzNTI4NDE3MzFhY2Q1NDg1OGViYjZiZjAwMWUzNDk4ZDI=
6
+ metadata.gz: a75321111d7f6121123804ae20b731c9143e39d53cd0fe6b009d69e5c44fe33a060b0a8b4bf0d43c5cda7d97727fb18985fdf9e04160b550e74238f7356baa5d
7
+ data.tar.gz: 0dccf046d313d6bf3f133e49a631f7ce3696048778f465e8f9cb736220597590ed1ef71730045fe94cd6b67ab2d7ab5bb6b1cbc98964ba8306bad197912d5dda
@@ -28,8 +28,8 @@ module ActsRateable
28
28
  }
29
29
 
30
30
  after_create do
31
- rating = ActsRateable::Rating.where({resource_id: self.id, resource_type: self.class.name}).first_or_initialize.save
32
- ActsRateable::Count.where({resource_id: self.id, resource_type: self.class.name}).first_or_initialize.save #if !rates.empty?
31
+ ActsRateable::Rating.where({resource_id: self.id, resource_type: self.class.base_class.name }).first_or_initialize.save
32
+ ActsRateable::Count.where({resource_id: self.id, resource_type: self.class.base_class.name }).first_or_initialize.save
33
33
  end
34
34
 
35
35
  include LocalInstanceMethods
@@ -14,16 +14,16 @@ module ActsRateable
14
14
 
15
15
  def self.get_totals(author)
16
16
  sql = "SELECT COUNT(*) total_ratings, SUM(value) rating_sum, AVG(value) rating_avg, "+
17
- "(SELECT COUNT(DISTINCT author_id) FROM ar_rates WHERE author_type = '#{author.class.name}') rated_count, "+
18
- "((SELECT COUNT(*) from ar_rates WHERE author_type = '#{author.class.name}') / (SELECT COUNT(DISTINCT author_id) FROM ar_rates WHERE author_type = '#{author.class.name}')) avg_num_ratings "+
19
- "FROM ar_rates WHERE author_type = '#{author.class.name}'"
17
+ "(SELECT COUNT(DISTINCT author_id) FROM ar_rates WHERE author_type = '#{author.class.base_class.name}') rated_count, "+
18
+ "((SELECT COUNT(*) from ar_rates WHERE author_type = '#{author.class.base_class.name}') / (SELECT COUNT(DISTINCT author_id) FROM ar_rates WHERE author_type = '#{author.class.base_class.name}')) avg_num_ratings "+
19
+ "FROM ar_rates WHERE author_type = '#{author.class.base_class.name}'"
20
20
  # RETURNS = { "total_ratings"=>"", "rating_sum"=>"", "rating_avg"=>"", "rated_count"=>"", "avg_num_ratings"=>"" }
21
21
  ActsRateable::Rate.connection.execute(sql).first
22
22
  end
23
23
 
24
24
  def self.values_for(author)
25
25
  sql = "SELECT COUNT(*) total_ratings, COALESCE(SUM(value),0) rating_sum, COALESCE(AVG(value),0) rating_avg "+
26
- "FROM ar_rates WHERE author_type = '#{author.class.name}' and author_id = '#{author.id}'"
26
+ "FROM ar_rates WHERE author_type = '#{author.class.base_class.name}' and author_id = '#{author.id}'"
27
27
  # RETURNS = {"total_ratings"=>"", "rating_sum"=>"", "rating_avg"=>""}
28
28
  ActsRateable::Rate.connection.execute(sql).first
29
29
  end
@@ -19,8 +19,8 @@ module ActsRateable
19
19
 
20
20
  def self.rated?(resource, author)
21
21
  rate = where({
22
- author_type: author.class.name, author_id: author.id,
23
- resource_type: resource.class.name, resource_id: resource.id
22
+ author_type: author.class.base_class.name, author_id: author.id,
23
+ resource_type: resource.class.base_class.name, resource_id: resource.id
24
24
  })
25
25
  return rate if rate
26
26
  return false
@@ -29,8 +29,8 @@ module ActsRateable
29
29
  def self.create(author, resource, value)
30
30
  return unless author && resource && value
31
31
  atts = {
32
- resource_type: resource.class.name, resource_id: resource.id,
33
- author_type: author.class.name, author_id: author.id,
32
+ resource_type: resource.class.base_class.name, resource_id: resource.id,
33
+ author_type: author.class.base_class.name, author_id: author.id,
34
34
  value: value
35
35
  }
36
36
  rate = where(atts.except(:value)).first_or_initialize(atts)
@@ -15,16 +15,16 @@ module ActsRateable
15
15
  # RETURNS = { "total_ratings"=>"", "rating_sum"=>"", "rating_avg"=>"", "rated_count"=>"", "avg_num_ratings"=>"" }
16
16
  def self.get_totals(resource)
17
17
  sql = "SELECT COUNT(*) total_ratings, SUM(value) rating_sum, AVG(value) rating_avg, "+
18
- "(SELECT COUNT(DISTINCT resource_id) FROM ar_rates WHERE resource_type = '#{resource.class.name}') rated_count, "+
19
- "((SELECT COUNT(*) from ar_rates WHERE resource_type = '#{resource.class.name}') / (SELECT COUNT(DISTINCT resource_id) FROM ar_rates WHERE resource_type = '#{resource.class.name}')) avg_num_ratings "+
20
- "FROM ar_rates WHERE resource_type = '#{resource.class.name}'"
18
+ "(SELECT COUNT(DISTINCT resource_id) FROM ar_rates WHERE resource_type = '#{resource.class.base_class.name}') rated_count, "+
19
+ "((SELECT COUNT(*) from ar_rates WHERE resource_type = '#{resource.class.base_class.name}') / (SELECT COUNT(DISTINCT resource_id) FROM ar_rates WHERE resource_type = '#{resource.class.base_class.name}')) avg_num_ratings "+
20
+ "FROM ar_rates WHERE resource_type = '#{resource.class.base_class.name}'"
21
21
  ActsRateable::Rate.connection.execute(sql).first
22
22
  end
23
23
 
24
24
  # RETURNS = {"total_ratings"=>"", "rating_sum"=>"", "rating_avg"=>""}
25
25
  def self.values_for(resource)
26
26
  sql = "SELECT COUNT(*) total_ratings, COALESCE(SUM(value),0) rating_sum, COALESCE(AVG(value),0) rating_avg "+
27
- "FROM ar_rates WHERE resource_type = '#{resource.class.name}' and resource_id = '#{resource.id}'"
27
+ "FROM ar_rates WHERE resource_type = '#{resource.class.base_class.name}' and resource_id = '#{resource.id}'"
28
28
  ActsRateable::Rate.connection.execute(sql).first
29
29
  end
30
30
 
@@ -1,3 +1,3 @@
1
1
  module ActsRateable
2
- VERSION = "0.0.8"
2
+ VERSION = "0.0.9"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: acts_rateable
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.8
4
+ version: 0.0.9
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ty Rauber
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-04-27 00:00:00.000000000 Z
11
+ date: 2014-09-23 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description: Rails 3 Bayesian Ratings Gem
14
14
  email:
@@ -39,12 +39,12 @@ require_paths:
39
39
  - lib
40
40
  required_ruby_version: !ruby/object:Gem::Requirement
41
41
  requirements:
42
- - - ! '>='
42
+ - - ">="
43
43
  - !ruby/object:Gem::Version
44
44
  version: '0'
45
45
  required_rubygems_version: !ruby/object:Gem::Requirement
46
46
  requirements:
47
- - - ! '>='
47
+ - - ">="
48
48
  - !ruby/object:Gem::Version
49
49
  version: '0'
50
50
  requirements: []