From 0fe3ce000b77bc64a410953dee7a54f031478588 Mon Sep 17 00:00:00 2001 From: Maximilian Grundke Date: Wed, 14 Mar 2018 09:20:05 +0100 Subject: [PATCH] Add more statistics --- app/helpers/statistics_helper.rb | 26 +++++++++++++++++++++++++- config/locales/de.yml | 3 +++ config/locales/en.yml | 3 +++ 3 files changed, 31 insertions(+), 1 deletion(-) diff --git a/app/helpers/statistics_helper.rb b/app/helpers/statistics_helper.rb index 08e7ee88..9a8e7a29 100644 --- a/app/helpers/statistics_helper.rb +++ b/app/helpers/statistics_helper.rb @@ -33,6 +33,11 @@ module StatisticsHelper name: t('activerecord.models.external_user.other'), data: ExternalUser.count, url: external_users_path + }, + { + key: 'currently_active', + name: t('statistics.entries.users.currently_active'), + data: ExternalUser.joins(:submissions).where(['submissions.created_at >= ?', DateTime.now - 5.minutes]).count } ] end @@ -49,6 +54,18 @@ module StatisticsHelper key: 'average_submissions', name: t('statistics.entries.exercises.average_number_of_submissions'), data: Submission.count / Exercise.count + }, + { + key: 'execution_environments', + name: t('activerecord.models.execution_environment.other'), + data: ExecutionEnvironment.count, + url: execution_environments_path + }, + { + key: 'exercise_collections', + name: t('activerecord.models.exercise_collection.other'), + data: ExerciseCollection.count, + url: exercise_collections_path } ] end @@ -64,10 +81,17 @@ module StatisticsHelper { key: 'percent_solved', name: t('statistics.entries.request_for_comments.percent_solved'), - data: (100.0 / RequestForComment.count * RequestForComment.where(solved: true).count).round(2), + data: (100.0 / RequestForComment.count * RequestForComment.where(solved: true).count).round(1), unit: '%', url: request_for_comments_path + '?q%5Bsolved_not_eq%5D=0' }, + { + key: 'percent_unsolved', + name: t('statistics.entries.request_for_comments.percent_unsolved'), + data: (100.0 / RequestForComment.count * RequestForComment.where(solved: false).count).round(1), + unit: '%', + url: request_for_comments_path + '?q%5Bsolved_not_eq%5D=1' + }, { key: 'comments', name: t('activerecord.models.comment.other'), diff --git a/config/locales/de.yml b/config/locales/de.yml index 9e8b180c..8799808b 100644 --- a/config/locales/de.yml +++ b/config/locales/de.yml @@ -686,3 +686,6 @@ de: average_number_of_submissions: "Durchschnittliche Zahl von Abgaben" request_for_comments: percent_solved: "Beantwortete Anfragen" + percent_unsolved: "Unbeantwortete Anfragen" + users: + currently_active: "Aktiv (5 Minuten)" diff --git a/config/locales/en.yml b/config/locales/en.yml index 3dca3a02..138ba105 100644 --- a/config/locales/en.yml +++ b/config/locales/en.yml @@ -686,3 +686,6 @@ en: average_number_of_submissions: "Average Number of Submissions" request_for_comments: percent_solved: "Solved Requests" + percent_unsolved: "Unsolved Requests" + users: + currently_active: "Active (5 minutes)"