From 21009c7eaa6c057e7552d46b4450d7858a979735 Mon Sep 17 00:00:00 2001 From: Sebastian Serth Date: Thu, 13 Jan 2022 16:02:25 +0100 Subject: [PATCH] Fix exercise statistics when external users share the same ID as internal users --- app/controllers/exercises_controller.rb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/controllers/exercises_controller.rb b/app/controllers/exercises_controller.rb index abde6329..8f50385d 100644 --- a/app/controllers/exercises_controller.rb +++ b/app/controllers/exercises_controller.rb @@ -506,8 +506,8 @@ working_time_accumulated: working_time_accumulated}) 'AND FALSE' end query = "SELECT user_id, MAX(score) AS maximum_score, COUNT(id) AS runs - FROM submissions WHERE exercise_id = #{@exercise.id} #{additional_filter} GROUP BY - user_id;" + FROM submissions WHERE exercise_id = #{@exercise.id} #{additional_filter} AND user_type = 'ExternalUser' + GROUP BY user_id;" ApplicationRecord.connection.execute(query).each do |tuple| user_statistics[tuple['user_id'].to_i] = tuple end