diff --git a/app/views/application/_flash.html.slim b/app/views/application/_flash.html.slim index 02bc5868..046c58ea 100644 --- a/app/views/application/_flash.html.slim +++ b/app/views/application/_flash.html.slim @@ -1,7 +1,8 @@ #flash-container.container #flash.container.fixed_error_messages data-message-failure=t('shared.message_failure') data-websocket-failure=t('shared.websocket_failure') - %w[alert danger info notice success warning].each do |severity| - div.alert.flash class="alert-#{{'alert' => 'warning', 'notice' => 'success'}.fetch(severity, severity)} alert-dismissible fade show" - p.mb-0 id="flash-#{severity}" = flash[severity]&.html_safe + - flash_mapping = {'alert' => 'warning', 'notice' => 'success'} + div.alert.flash class="alert-#{flash_mapping.fetch(severity, severity)} alert-dismissible fade show" + p.mb-0 id="flash-#{severity}" == flash[severity] button type="button" class="close" data-dismiss="alert" aria-label="Close" span.text-white aria-hidden="true" × diff --git a/app/views/exercises/_editor_output.html.slim b/app/views/exercises/_editor_output.html.slim index d3a7a246..07072e33 100644 --- a/app/views/exercises/_editor_output.html.slim +++ b/app/views/exercises/_editor_output.html.slim @@ -17,8 +17,18 @@ div.h-100 id='output_sidebar_uncollapsed' class='d-none col-sm-12 enforce-bottom .card-header.py-2 h5.card-title.m-0 == t('exercises.implement.test_file', filename: '', number: 0) .card-body.bg-white.text-dark - = row(label: 'exercises.implement.passed_tests', value: t('shared.out_of', maximum_value: 0, value: 0).html_safe) - = row(label: 'activerecord.attributes.submission.score', value: t('shared.out_of', maximum_value: 0, value: 0).html_safe) + = row(label: 'exercises.implement.passed_tests') do + span.number + | 0 + =<> t('shared.out_of') + span.number + | 0 + = row(label: 'activerecord.attributes.submission.score') do + span.number + | 0 + =<> t('shared.out_of') + span.number + | 0 = row(label: 'exercises.implement.feedback') = row(label: 'exercises.implement.error_messages') /= row(label: 'exercises.implement.output', value: link_to(t('shared.show'), '#')) @@ -27,8 +37,18 @@ div.h-100 id='output_sidebar_uncollapsed' class='d-none col-sm-12 enforce-bottom .card-header.py-2 h5.card-title.m-0 == t('exercises.implement.linter_file', filename: '', number: 0) .card-body.bg-white.text-dark - = row(label: 'exercises.implement.code_rating', value: t('shared.out_of', maximum_value: 0, value: 0).html_safe) - = row(label: 'activerecord.attributes.submission.score', value: t('shared.out_of', maximum_value: 0, value: 0).html_safe) + = row(label: 'exercises.implement.code_rating') do + span.number + | 0 + =<> t('shared.out_of') + span.number + | 0 + = row(label: 'activerecord.attributes.submission.score') do + span.number + | 0 + =<> t('shared.out_of') + span.number + | 0 = row(label: 'exercises.implement.feedback') = row(label: 'exercises.implement.messages') #score data-maximum-score=@exercise.maximum_score data-score=@exercise.final_submission(@current_user).try(:score) diff --git a/app/views/exercises/external_users/statistics.html.slim b/app/views/exercises/external_users/statistics.html.slim index 4e7b8909..8863fa36 100644 --- a/app/views/exercises/external_users/statistics.html.slim +++ b/app/views/exercises/external_users/statistics.html.slim @@ -1,4 +1,8 @@ -h1 = "#{@exercise} (external user #{link_to_if(policy(@external_user).show?, @external_user.displayname, @external_user)})".html_safe +h1 + => @exercise + ' (external user + = link_to_if(policy(@external_user).show?, @external_user.displayname, @external_user) + ' ) - current_submission = @submissions.first - if current_submission - initial_files = current_submission.files.to_a diff --git a/app/views/exercises/statistics.html.slim b/app/views/exercises/statistics.html.slim index 66597b97..f5ec9734 100644 --- a/app/views/exercises/statistics.html.slim +++ b/app/views/exercises/statistics.html.slim @@ -12,13 +12,30 @@ h1 = @exercise = "#{@exercise.submissions.send(scope).count} (#{t('.users', count: @exercise.submissions.send(scope).distinct.count(:user_id))})" = row(label: '.finishing_rate') do - p == @exercise.finishers.count ? "#{t('shared.out_of', maximum_value: @exercise.users.distinct.count, value: @exercise.finishers.count)} #{t('exercises.statistics.external_users')}" : empty + p + - if @exercise.finishers.count + span.number + = @exercise.finishers.count + =<> t('shared.out_of') + span.number + = @exercise.users.distinct.count + =< t('exercises.statistics.external_users') + - else + = empty - finishers_count = @exercise.users.distinct.count - finishers_percentage = finishers_count == 0 ? 0 : (100.0 / finishers_count * @exercise.finishers.count).round(2) p = progress_bar(finishers_percentage) = row(label: '.average_score') do - p == @exercise.average_score ? t('shared.out_of', maximum_value: @exercise.maximum_score, value: @exercise.average_score.round(2)) : empty + p + - if @exercise.average_score + span.number + = @exercise.average_score.round(2) + =<> t('shared.out_of') + span.number + = @exercise.maximum_score + - else + = empty p = progress_bar(@exercise.average_percentage) - if policy(@exercise).detailed_statistics? diff --git a/app/views/sessions/destroy_through_lti.html.slim b/app/views/sessions/destroy_through_lti.html.slim index c8f2946b..cd996afa 100644 --- a/app/views/sessions/destroy_through_lti.html.slim +++ b/app/views/sessions/destroy_through_lti.html.slim @@ -8,9 +8,19 @@ p h2 = t('shared.statistics') = row(label: '.score') do - /p == t('shared.out_of', maximum_value: @submission.exercise.maximum_score, value: @submission.score) + /p + span.number + = @submission.score + =<> t('shared.out_of') + span.number + = @submission.exercise.maximum_score p = progress_bar(@submission.percentage) /= row(label: '.final_submissions', value: @submission.exercise.submissions.final.distinct.count(:user_id, :user_type) - 1) /= row(label: '.average_score') do -/ p == t('shared.out_of', maximum_value: @submission.exercise.maximum_score, value: @submission.exercise.average_score.round(2)) +/ p + span.number + = @submission.exercise.average_score.round(2) + =<> t('shared.out_of') + span.number + = @submission.exercise.maximum_score / p = progress_bar(@submission.exercise.average_percentage) diff --git a/config/locales/de.yml b/config/locales/de.yml index 428789b4..d0131e12 100644 --- a/config/locales/de.yml +++ b/config/locales/de.yml @@ -813,7 +813,7 @@ de: object_created: '%{model} wurde erfolgreich erstellt.' object_destroyed: '%{model} wurde erfolgreich gelöscht.' object_updated: '%{model} wurde erfolgreich bearbeitet.' - out_of: '%{value} von %{maximum_value}' + out_of: 'von' reset_filters: Filter zurücksetzen resources: Ressourcen show: Anzeigen diff --git a/config/locales/en.yml b/config/locales/en.yml index cdd0ade3..60a87cc5 100644 --- a/config/locales/en.yml +++ b/config/locales/en.yml @@ -813,7 +813,7 @@ en: object_created: '%{model} has successfully been created.' object_destroyed: '%{model} has successfully been deleted.' object_updated: '%{model} has successfully been updated.' - out_of: '%{value} out of %{maximum_value}' + out_of: 'out of' reset_filters: Reset filters resources: Resources show: Show