From 0efccc363b863be69521773e6e5cd89e0e1becef Mon Sep 17 00:00:00 2001
From: Mateus Rambo Strey <mars11@inf.ufpr.br>
Date: Wed, 28 Oct 2015 10:13:47 -0200
Subject: [PATCH] fix score worker

---
 app/workers/score_calculator_worker.rb | 30 ++++++++++++++------------
 config/sidekiq.yml                     |  2 +-
 2 files changed, 17 insertions(+), 15 deletions(-)

diff --git a/app/workers/score_calculator_worker.rb b/app/workers/score_calculator_worker.rb
index 5effb8dfb..308f6c824 100644
--- a/app/workers/score_calculator_worker.rb
+++ b/app/workers/score_calculator_worker.rb
@@ -4,26 +4,28 @@ class ScoreCalculatorWorker
   include RepositoriesProxy
 
   def perform(rid)
-    weights = {"thumbnail": 40, "likes": 20, "views": 10, "description": 30}
-
     object = learning_object_repository.find(rid)
 
-    score = 0
+    unless object.blank?
+      weights = {"thumbnail": 40, "likes": 20, "views": 10, "description": 30}
+
+      score = 0
 
-    # 40 points if it has thumbnail
-    score += weights[:thumbnail] unless object.thumbnail.empty?
+      # 40 points if it has thumbnail
+      score += weights[:thumbnail] unless object.thumbnail.blank?
 
-    # 1 point per like
-    likes = learning_object_repository.count_likes(object)
-    score += (likes / learning_object_repository.max_likes)*weights[:likes]  unless likes < 1
+      # 1 point per like
+      likes = learning_object_repository.count_likes(object)
+      score += (likes / learning_object_repository.max_likes)*weights[:likes]  unless likes < 1
 
-    # 1 point per view
-    views = learning_object_repository.count_views(object)
-    score += (views / learning_object_repository.max_views)*weights[:views] unless views < 1
+      # 1 point per view
+      views = learning_object_repository.count_views(object)
+      score += (views / learning_object_repository.max_views)*weights[:views] unless views < 1
 
-    # 30 points if it has description
-    score += weights[:description] unless object.description.empty?
+      # 30 points if it has description
+      score += weights[:description] unless object.description.blank?
 
-    learning_object_repository.update_property(object, 'score', score)
+      learning_object_repository.update_property(object, 'score', score)
+    end
   end
 end
diff --git a/config/sidekiq.yml b/config/sidekiq.yml
index fb9ad31f7..dcbb188e0 100644
--- a/config/sidekiq.yml
+++ b/config/sidekiq.yml
@@ -14,7 +14,7 @@
 # :daemon: true
 
 development: &development
-  concurrency: 5
+  :concurrency: 8
   host: localhost
   port: 6379
 
-- 
GitLab