diff --git a/app/controllers/research_outputs_controller.rb b/app/controllers/research_outputs_controller.rb index be9dba1..5166d86 100644 --- a/app/controllers/research_outputs_controller.rb +++ b/app/controllers/research_outputs_controller.rb @@ -12,13 +12,13 @@ @research_output_types = ResearchOutputType.all authorize @plan - render('plans/research_outputs', locals: { plan: @plan, research_outputs: @research_outputs, + render("plans/research_outputs", locals: { plan: @plan, research_outputs: @research_outputs, research_output_types: @research_output_types }) rescue ActiveRecord::RecordNotFound flash[:alert] = _("There is no plan associated with id %{id}") % { id: params[:id] } - redirect_to(:controller => 'plans', :action => 'index') + redirect_to(:controller => "plans", :action => "index") end end @@ -30,16 +30,16 @@ authorize @plan if @research_output.update(attrs) - render json: { - "html" => render_to_string(partial: 'research_outputs/list', locals: { - plan: @plan, - research_outputs: @plan.research_outputs, - readonly: false + render json: { + "html" => render_to_string(partial: "research_outputs/list", locals: { + plan: @plan, + research_outputs: @plan.research_outputs, + readonly: false }) } else flash[:alert] = failure_message(@research_output, _("update")) - redirect_to(:action => 'index') + redirect_to(action: "index") end end @@ -51,11 +51,10 @@ if @research_output.destroy research_output_fragment.destroy! flash[:notice] = success_message(@research_output, _("deleted")) - redirect_to(:action => 'index') else flash[:alert] = failure_message(@research_output, _("delete")) - redirect_to(:action => 'index') end + redirect_to(action: "index") end def sort @@ -67,13 +66,13 @@ head :ok end - def create_remote + def create_remote @plan = Plan.find(params[:plan_id]) - max_order = @plan.research_outputs.maximum('order') + 1 + max_order = @plan.research_outputs.maximum("order") + 1 @plan.research_outputs.create( - abbreviation: "Research Output #{max_order}", + abbreviation: "Research Output #{max_order}", fullname: "New research output #{max_order}", - is_default: false, + is_default: false, type: ResearchOutputType.find_by(label: "Dataset"), order: max_order ) @@ -81,8 +80,8 @@ authorize @plan - render json: { - "html" => render_to_string(partial: 'research_outputs/list', locals: { + render json: { + "html" => render_to_string(partial: "research_outputs/list", locals: { plan: @plan, research_outputs: @plan.research_outputs, readonly: false @@ -90,11 +89,11 @@ } end - private - + def research_output_params params.require(:research_output) .permit(:id, :plan_id, :abbreviation, :fullname) end + end diff --git a/app/javascript/views/plans/research_outputs.js b/app/javascript/views/plans/research_outputs.js index 4ec4ec6..701c526 100644 --- a/app/javascript/views/plans/research_outputs.js +++ b/app/javascript/views/plans/research_outputs.js @@ -5,7 +5,7 @@ handle: '.research-output-actions .handle', update: () => { const updatedOrder = []; - const planId = $('#research-outputs .plan-id').val(); + const planId = $('#research-outputs #plan_id').val(); $('#research-outputs .research-output-element').each(function callback() { updatedOrder.push($(this).find('.research-output-id').val()); }); diff --git a/app/views/branded/plans/_edit_research_outputs.html.erb b/app/views/branded/plans/_edit_research_outputs.html.erb index a014cef..c0b10bb 100644 --- a/app/views/branded/plans/_edit_research_outputs.html.erb +++ b/app/views/branded/plans/_edit_research_outputs.html.erb @@ -1,5 +1,6 @@ <%# locals: { plan, research_outputs, research_output_types } %>
+ <%= hidden_field_tag 'plan_id', plan.id %>

<%= d_('dmpopidor', 'Research output: dataset, software, workflow, sample, protocol...') %>

<%= d_('dmpopidor', 'Please fill in separately for research outputs requireing a management specific to their nature or discipline.') %>

diff --git a/app/views/branded/research_outputs/_list.html.erb b/app/views/branded/research_outputs/_list.html.erb index 9f7c449..95e4e5d 100644 --- a/app/views/branded/research_outputs/_list.html.erb +++ b/app/views/branded/research_outputs/_list.html.erb @@ -4,6 +4,7 @@ <% research_output_data = research_output_fragment.research_output_description.data if research_output_fragment.present?%> <%= form_for research_output, url: plan_research_output_path(:id => research_output.id, :plan_id => plan.id), html: {method: :put, remote: true, id: nil } do |f| %>
'> + <%= hidden_field_tag 'research-output-id', research_output.id, class: 'research-output-id' %>
<%= f.label :abbreviation, d_('dmpopidor', 'Abbreviated Name (20 chars max.)'), class: 'control-label' %>