mirror of
https://github.com/iritmaximus/brewery.git
synced 2026-10-12 19:13:49 +03:00
rubocop cleaning
This commit is contained in:
@@ -2,27 +2,28 @@ module RatingAverage
|
||||
extend ActiveSupport::Concern
|
||||
|
||||
def average_rating
|
||||
if self.class == Beer
|
||||
if instance_of?(Beer)
|
||||
ratings = [self]
|
||||
elsif self.class == Brewery
|
||||
elsif instance_of?(Brewery)
|
||||
# creates empty arrays for beers that have no ratings
|
||||
# + wraps the array in an array
|
||||
ratings = beers.map { |b| b.ratings }.reject(&:blank?)[0]
|
||||
elsif self.class == User
|
||||
elsif instance_of?(User)
|
||||
ratings = self.ratings
|
||||
else
|
||||
raise "Wrong class type for calculating average, #{self.class}"
|
||||
end
|
||||
|
||||
return 0 unless ratings.count > 0
|
||||
|
||||
ratings.map { |r| r.score }.sum / ratings.count.to_f
|
||||
end
|
||||
|
||||
def count_ratings
|
||||
if self.class == Beer or User
|
||||
return self.ratings.count
|
||||
elsif self.class == Brewery
|
||||
return self.beers.map { |b| b.ratings.count }.sum
|
||||
if instance_of?(Beer) || User
|
||||
ratings.count
|
||||
elsif instance_of?(Brewery)
|
||||
beers.map { |b| b.ratings.count }.sum
|
||||
else
|
||||
raise "Wrong class type for counting ratings, #{self.class}"
|
||||
end
|
||||
|
||||
@@ -3,6 +3,6 @@ class Rating < ApplicationRecord
|
||||
belongs_to :user
|
||||
|
||||
def to_s
|
||||
"#{self.beer.name}: #{self.score}"
|
||||
"#{beer.name}: #{score}"
|
||||
end
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user