Remove @submissions variable for external_user_statistics
This commit is contained in:

committed by
Sebastian Serth

parent
2141fdb1ac
commit
d4c567c722
@ -492,13 +492,13 @@ working_time_accumulated: working_time_accumulated})
|
|||||||
# Render statistics page for one specific external user
|
# Render statistics page for one specific external user
|
||||||
|
|
||||||
if policy(@exercise).detailed_statistics?
|
if policy(@exercise).detailed_statistics?
|
||||||
@submissions = Submission.where(user: @external_user,
|
submissions = Submission.where(user: @external_user,
|
||||||
exercise_id: @exercise.id).in_study_group_of(current_user).order('created_at')
|
exercise_id: @exercise.id).in_study_group_of(current_user).order('created_at')
|
||||||
@show_autosaves = params[:show_autosaves] == 'true'
|
@show_autosaves = params[:show_autosaves] == 'true'
|
||||||
@submissions = @submissions.where.not(cause: 'autosave') unless @show_autosaves
|
submissions = submissions.where.not(cause: 'autosave') unless @show_autosaves
|
||||||
interventions = UserExerciseIntervention.where('user_id = ? AND exercise_id = ?', @external_user.id,
|
interventions = UserExerciseIntervention.where('user_id = ? AND exercise_id = ?', @external_user.id,
|
||||||
@exercise.id)
|
@exercise.id)
|
||||||
@all_events = (@submissions + interventions).sort_by(&:created_at)
|
@all_events = (submissions + interventions).sort_by(&:created_at)
|
||||||
@deltas = @all_events.map.with_index do |item, index|
|
@deltas = @all_events.map.with_index do |item, index|
|
||||||
delta = item.created_at - @all_events[index - 1].created_at if index.positive?
|
delta = item.created_at - @all_events[index - 1].created_at if index.positive?
|
||||||
delta.nil? || (delta > StatisticsHelper::WORKING_TIME_DELTA_IN_SECONDS) ? 0 : delta
|
delta.nil? || (delta > StatisticsHelper::WORKING_TIME_DELTA_IN_SECONDS) ? 0 : delta
|
||||||
@ -510,12 +510,12 @@ working_time_accumulated: working_time_accumulated})
|
|||||||
else
|
else
|
||||||
final_submissions = Submission.where(user: @external_user,
|
final_submissions = Submission.where(user: @external_user,
|
||||||
exercise_id: @exercise.id).in_study_group_of(current_user).final
|
exercise_id: @exercise.id).in_study_group_of(current_user).final
|
||||||
@submissions = []
|
submissions = []
|
||||||
%i[before_deadline within_grace_period after_late_deadline].each do |filter|
|
%i[before_deadline within_grace_period after_late_deadline].each do |filter|
|
||||||
relevant_submission = final_submissions.send(filter).latest
|
relevant_submission = final_submissions.send(filter).latest
|
||||||
@submissions.push relevant_submission if relevant_submission.present?
|
submissions.push relevant_submission if relevant_submission.present?
|
||||||
end
|
end
|
||||||
@all_events = @submissions
|
@all_events = submissions
|
||||||
end
|
end
|
||||||
|
|
||||||
render 'exercises/external_users/statistics'
|
render 'exercises/external_users/statistics'
|
||||||
|
@ -3,20 +3,21 @@ h1
|
|||||||
' (external user
|
' (external user
|
||||||
= link_to_if(policy(@external_user).show?, @external_user.displayname, @external_user)
|
= link_to_if(policy(@external_user).show?, @external_user.displayname, @external_user)
|
||||||
' )
|
' )
|
||||||
- current_submission = @submissions.first
|
- submissions = @all_events.filter{|event| event.is_a? Submission}
|
||||||
|
- current_submission = submissions.first
|
||||||
- if current_submission
|
- if current_submission
|
||||||
- initial_files = current_submission.files.to_a
|
- initial_files = current_submission.files.to_a
|
||||||
|
|
||||||
- all_files = []
|
- all_files = []
|
||||||
- file_types = Set.new()
|
- file_types = Set.new()
|
||||||
- @submissions.each do |submission|
|
- submissions.each do |submission|
|
||||||
- submission.files.each do |file|
|
- submission.files.each do |file|
|
||||||
- file_types.add(ActiveSupport::JSON.encode(file.file_type))
|
- file_types.add(ActiveSupport::JSON.encode(file.file_type))
|
||||||
- all_files.push(submission.files)
|
- all_files.push(submission.files)
|
||||||
- all_files.reject!(&:blank?)
|
- all_files.reject!(&:blank?)
|
||||||
- file_types.reject!(&:blank?)
|
- file_types.reject!(&:blank?)
|
||||||
|
|
||||||
.d-none#data data-submissions=ActiveSupport::JSON.encode(@submissions) data-files=ActiveSupport::JSON.encode(all_files) data-file-types=ActiveSupport::JSON.encode(file_types)
|
.d-none#data data-submissions=ActiveSupport::JSON.encode(submissions) data-files=ActiveSupport::JSON.encode(all_files) data-file-types=ActiveSupport::JSON.encode(file_types)
|
||||||
|
|
||||||
#stats-editor.row
|
#stats-editor.row
|
||||||
- index = 0
|
- index = 0
|
||||||
@ -33,7 +34,7 @@ h1
|
|||||||
input type='range' orient='horizontal' list='datapoints' min=0 max=all_files.length-1 value=0 style="width: 100%"
|
input type='range' orient='horizontal' list='datapoints' min=0 max=all_files.length-1 value=0 style="width: 100%"
|
||||||
datalist#datapoints
|
datalist#datapoints
|
||||||
- index=0
|
- index=0
|
||||||
- @submissions.each do |submission|
|
- submissions.each do |submission|
|
||||||
- next if submission.files.blank?
|
- next if submission.files.blank?
|
||||||
option data-submission=submission
|
option data-submission=submission
|
||||||
=index
|
=index
|
||||||
|
Reference in New Issue
Block a user