find solved exercises of users now by fetching submissions with cause assess or submit

This commit is contained in:
Thomas Hille
2017-02-23 15:44:16 +01:00
parent 0f67297e2c
commit 4796dd5c9d
2 changed files with 3 additions and 5 deletions

View File

@ -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

View File

@ -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|