diff --git a/app/views/dmsf_context_menus/_approval_workflow.html.erb b/app/views/dmsf_context_menus/_approval_workflow.html.erb index ecdf46be..c3889e8b 100644 --- a/app/views/dmsf_context_menus/_approval_workflow.html.erb +++ b/app/views/dmsf_context_menus/_approval_workflow.html.erb @@ -31,21 +31,22 @@ <% if wf %> <% assignments = wf.next_assignments(dmsf_file.last_revision.id) %> <% index = assignments.find_index{ |assignment| assignment.user_id == User.current.id } if assignments %> + <% assignment_id = (index && assignments && assignments[index]) ? assignments[index].id : nil %> <%= context_menu_link l(:title_approval), action_dmsf_workflow_path(project_id: project.id, id: wf.id, - dmsf_workflow_step_assignment_id: assignments[index].id, - dmsf_file_revision_id: dmsf_file.last_revision.id), + dmsf_workflow_step_assignment_id: assignment_id, + dmsf_file_revision_id: dmsf_file.last_revision.id), remote: true, class: 'icon icon-ok', id: 'dmsf-cm-workflow', disabled: !assignments || !index %> <% end %> <% when DmsfWorkflow::STATE_ASSIGNED %> <%= context_menu_link l(:title_start), start_dmsf_workflow_path(id: dmsf_file.last_revision.dmsf_workflow_id, - dmsf_file_revision_id: dmsf_file.last_revision.id), + dmsf_file_revision_id: dmsf_file.last_revision.id), class: 'icon icon-ok', disabled: !allowed %> <% when DmsfWorkflow::STATE_APPROVED, DmsfWorkflow::STATE_REJECTED, DmsfWorkflow::STATE_OBSOLETE %> <%# %> <% else %> <%= context_menu_link l(:title_assignment), assign_dmsf_workflow_path(id: project.id, project_id: project.id, - dmsf_file_revision_id: dmsf_file.last_revision.id), + dmsf_file_revision_id: dmsf_file.last_revision.id), remote: true, class: 'icon icon-ok', id: 'dmsf-cm-workflow', disabled: locked || !workflows_available %> <% end %>