h1 = "#{@exercise} (external user #{@external_user})" - current_submission = @submissions.first - if current_submission - initial_files = current_submission.files.to_a - all_files = [] - file_types = Set.new() - @submissions.each do |submission| - submission.files.each do |file| - file_types.add(ActiveSupport::JSON.encode(file.file_type)) - all_files.push(submission.files) .hidden#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 - index = 0 - all_files.each do |files| .files class=(@exercise.hide_file_tree ? 'hidden col-sm-3' : 'col-sm-3') data-index=index data-entries=FileTree.new(files).to_js_tree - index += 1 div class=(@exercise.hide_file_tree ? 'col-sm-12' : 'col-sm-9') #current-file.editor .flex-container button.btn.btn-default id='play-button' span.fa.fa-play #submissions-slider.flex-item input type='range' orient='horizontal' list='datapoints' min=0 max=@submissions.length-1 value=0 datalist#datapoints - index=0 - @submissions.each do |submission| option data-submission=submission =index - index += 1 #timeline .table-responsive table.table thead tr - ['.time', '.cause', '.score', '.tests', '.time_difference'].each do |title| th.header = t(title) tbody - @submissions_and_interventions.each_with_index do |this, index| - highlight = (index > 0 and @working_times_until[index] == @working_times_until[index - 1] and this.created_at > @submissions_and_interventions[index - 1].created_at) tr data-id=this.id class=('highlight' if highlight) td.clickable = this.created_at.strftime("%F %T") - if this.is_a?(Submission) td = this.cause td = this.score td -this.testruns.each do |run| - if run.passed .unit-test-result.positive-result title=run.output - else .unit-test-result.unknown-result title=run.output td = @working_times_until[index] if index > 0 - elsif this.is_a? UserExerciseIntervention td = this.intervention.name td = td = td = p = t('.addendum') .hidden#wtimes data-working_times=ActiveSupport::JSON.encode(@working_times_until); div#progress_chart.col-lg-12 .graph-functions-2 - else p = t('.no_data_available')