diff --git a/app/models/exercise.rb b/app/models/exercise.rb index ac4a60a2..6d3d62fb 100644 --- a/app/models/exercise.rb +++ b/app/models/exercise.rb @@ -198,10 +198,9 @@ class Exercise < ActiveRecord::Base def maximum_score(user = nil) if user - submissions.where(user: user, cause: "assess").where("score IS NOT NULL").order("score DESC").first.score || 0 rescue 0 + submissions.where(user: user).where("cause IN ('submit','assess')").where("score IS NOT NULL").order("score DESC").first.score || 0 rescue 0 else - 5 - #files.teacher_defined_tests.sum(:weight) + files.teacher_defined_tests.sum(:weight) end end diff --git a/app/models/proxy_exercise.rb b/app/models/proxy_exercise.rb index 31a0a8eb..78b8cff5 100644 --- a/app/models/proxy_exercise.rb +++ b/app/models/proxy_exercise.rb @@ -42,11 +42,10 @@ class ProxyExercise < ActiveRecord::Base def findMatchingExercise(user) #exercises.shuffle.first # hier vielleicht nur betrachten wenn der user die aufgabe assessed oder submitted hat - exercisesUserHasAccessed = user.submissions.map{|s| s.exercise}.uniq + exercisesUserHasAccessed = user.submissions.where("cause IN ('submit','assess')").map{|s| s.exercise}.uniq tagsUserHasSeen = exercisesUserHasAccessed.map{|ex| ex.tags}.uniq.flatten puts "exercisesUserHasAccessed #{exercisesUserHasAccessed}" - # find execises potentialRecommendedExercises = [] exercises.each do |ex|