diff --git a/app/views/exercises/_file_form.html.slim b/app/views/exercises/_file_form.html.slim index 3f3c9e9e..642e0ee7 100644 --- a/app/views/exercises/_file_form.html.slim +++ b/app/views/exercises/_file_form.html.slim @@ -1,5 +1,6 @@ - id = f.object.id -- file = object.file +- file= f.object.files.first +//- exercise_arg = @exercise li.panel.panel-default .panel-heading role="tab" id="heading" @@ -38,5 +39,18 @@ li.panel.panel-default .form-group = f.label(:role, t('activerecord.attributes.file.weight')) = f.number_field(:weight, class: 'form-control', min: 1, step: 'any') - = render('code_field', attribute: :content, form: f, label: t('activerecord.attributes.file.content')) - .editor data-file-id=file.ancestor_id data-indent-size=file.file_type.indent_size data-mode=file.file_type.editor_mode data-read-only=file.read_only data-id=file.id + .frame data-executable=file.file_type.executable? data-filename=file.name_with_extension data-renderable=file.file_type.renderable? data-role=file.role data-binary=file.file_type.binary? data-context-type=file.context_type + - if file.file_type.binary? + .binary-file data-file-id=file.ancestor_id + - if file.file_type.renderable? + - if file.file_type.audio? + = audio_tag(file.native_file.url, controls: true) + - elsif file.file_type.image? + = image_tag(file.native_file.url) + - elsif file.file_type.video? + = video_tag(file.native_file.url, controls: true) + - else + = link_to(file.native_file.file.name_with_extension, file.native_file.url) + - else + .editor-content.hidden data-file-id=file.ancestor_id = file.content + .editor data-file-id=file.ancestor_id data-indent-size=file.file_type.indent_size data-mode=file.file_type.editor_mode data-read-only=file.read_only data-id=file.id diff --git a/app/views/exercises/_form.html.slim b/app/views/exercises/_form.html.slim index b0ed068b..5f26b5fc 100644 --- a/app/views/exercises/_form.html.slim +++ b/app/views/exercises/_form.html.slim @@ -35,9 +35,8 @@ h2 = t('activerecord.attributes.exercise.files') ul#files.list-unstyled.panel-group = f.fields_for :files do |files_form| - = render('file_form', f: files_form) - + = render('file_form', f: files_form, object: @exercise) a#add-file.btn.btn-default.btn-sm.pull-right href='#' = t('.add_file') ul#dummies.hidden = f.fields_for(:files, CodeOcean::File.new, child_index: 'index') do |files_form| - = render('file_form', f: files_form) + = render('file_form', f: files_form, e: @exercise) .actions = render('shared/submit_button', f: f, object: @exercise)