current view changed after adding new revision #1282

This commit is contained in:
karel.picman@lbcfree.net 2021-09-02 08:53:08 +02:00
parent 93c880647d
commit e8d5a701fc
12 changed files with 68 additions and 59 deletions

View File

@ -35,7 +35,6 @@ class DmsfContextMenusController < ApplicationController
@unlockable = @allowed && @dmsf_file.unlockable? && (!@dmsf_file.locked_for_user? || @unlockable = @allowed && @dmsf_file.unlockable? && (!@dmsf_file.locked_for_user? ||
User.current.allowed_to?(:force_file_unlock, @project)) User.current.allowed_to?(:force_file_unlock, @project))
@email_allowed = User.current.allowed_to?(:email_documents, @project) @email_allowed = User.current.allowed_to?(:email_documents, @project)
@back_url = dmsf_folder_path(id: @project, folder_id: @dmsf_file.dmsf_folder)
elsif @dmsf_folder elsif @dmsf_folder
@locked = @dmsf_folder.locked? @locked = @dmsf_folder.locked?
@project = @dmsf_folder.project @project = @dmsf_folder.project
@ -43,14 +42,12 @@ class DmsfContextMenusController < ApplicationController
@unlockable = @allowed && @dmsf_folder.unlockable? && (!@dmsf_folder.locked_for_user? || @unlockable = @allowed && @dmsf_folder.unlockable? && (!@dmsf_folder.locked_for_user? ||
User.current.allowed_to?(:force_file_unlock, @project)) User.current.allowed_to?(:force_file_unlock, @project))
@email_allowed = User.current.allowed_to?(:email_documents, @project) @email_allowed = User.current.allowed_to?(:email_documents, @project)
@back_url = dmsf_folder_path(id: @project, folder_id: @dmsf_folder.dmsf_folder)
elsif @dmsf_link # url link elsif @dmsf_link # url link
@locked = false @locked = false
@unlockable = false @unlockable = false
@project = @dmsf_link.project @project = @dmsf_link.project
@allowed = User.current.allowed_to? :file_manipulation, @project @allowed = User.current.allowed_to? :file_manipulation, @project
@email_allowed = false @email_allowed = false
@back_url = dmsf_folder_path(id: @project, folder_id: @dmsf_link.dmsf_folder)
else # multiple selection else # multiple selection
@project = get_project @project = get_project
@locked = false @locked = false
@ -58,8 +55,8 @@ class DmsfContextMenusController < ApplicationController
@allowed = User.current.allowed_to?(:file_manipulation, @project) && @allowed = User.current.allowed_to?(:file_manipulation, @project) &&
User.current.allowed_to?(:folder_manipulation, @project) User.current.allowed_to?(:folder_manipulation, @project)
@email_allowed = User.current.allowed_to?(:email_documents, @project) @email_allowed = User.current.allowed_to?(:email_documents, @project)
@back_url = dmsf_folder_path(id: @project, folder_id: @dmsf_folder)
end end
@back_url = dmsf_folder_path(id: @project, folder_id: @folder)
render layout: false render layout: false
rescue ActiveRecord::RecordNotFound rescue ActiveRecord::RecordNotFound
render_404 render_404

View File

@ -215,7 +215,7 @@ class DmsfController < ApplicationController
if params[:email][:to].strip.blank? if params[:email][:to].strip.blank?
flash[:error] = l(:error_email_to_must_be_entered) flash[:error] = l(:error_email_to_must_be_entered)
else else
DmsfMailer.deliver_send_documents(@project, params[:email].permit!, User.current) DmsfMailer.deliver_send_documents @project, params[:email].permit!, User.current
if(File.exist?(params[:email][:zipped_content])) if(File.exist?(params[:email][:zipped_content]))
File.delete(params[:email][:zipped_content]) File.delete(params[:email][:zipped_content])
else else
@ -223,7 +223,7 @@ class DmsfController < ApplicationController
end end
flash[:notice] = l(:notice_email_sent, params[:email][:to]) flash[:notice] = l(:notice_email_sent, params[:email][:to])
end end
redirect_to dmsf_folder_path(id: @project, folder_id: @folder) redirect_back_or_default(dmsf_folder_path(id: @project, folder_id: @folder))
end end
def new def new
@ -515,6 +515,7 @@ class DmsfController < ApplicationController
"#{User.current.name} <#{User.current.mail}>", "#{User.current.name} <#{User.current.mail}>",
reply_to: Setting.plugin_redmine_dmsf['dmsf_documents_email_reply_to'] reply_to: Setting.plugin_redmine_dmsf['dmsf_documents_email_reply_to']
} }
@back_url = params[:back_url]
render action: 'email_entries' render action: 'email_entries'
rescue Exception rescue Exception
raise raise

View File

@ -55,13 +55,12 @@ class DmsfLinksController < ApplicationController
@dmsf_file_id = params[:dmsf_file_id] @dmsf_file_id = params[:dmsf_file_id]
@type = params[:type] @type = params[:type]
@dmsf_link.target_project_id = params[:project_id] @dmsf_link.target_project_id = params[:project_id]
#@target_folder_id = params[:dmsf_folder_id].to_i if params[:dmsf_folder_id].present?
@target_folder_id = nil @target_folder_id = nil
@back_url = params[:back_url] @back_url = params[:back_url]
if @type == 'link_to' if @type == 'link_to'
if @dmsf_file_id if @dmsf_file_id
names = DmsfFile.where(id: @dmsf_file_id).pluck(:name) f = DmsfFile.find_by(id: @dmsf_file_id)
@dmsf_link.name = names.first if names.any? @dmsf_link.name = f&.last_revision&.title
else else
titles = DmsfFolder.where(id: @target_folder_id).pluck(:title) titles = DmsfFolder.where(id: @target_folder_id).pluck(:title)
@dmsf_link.name = titles.first if titles.any? @dmsf_link.name = titles.first if titles.any?
@ -156,7 +155,7 @@ class DmsfLinksController < ApplicationController
redirect_back_or_default dmsf_folder_path(id: @project, folder_id: @dmsf_link.dmsf_folder_id) redirect_back_or_default dmsf_folder_path(id: @project, folder_id: @dmsf_link.dmsf_folder_id)
else else
if params[:dmsf_link][:dmsf_file_id].present? if params[:dmsf_link][:dmsf_file_id].present?
redirect_to dmsf_file_path(@dmsf_link.target_file) redirect_back_or_default dmsf_file_path(@dmsf_link.target_file)
else else
folder = @dmsf_link.target_folder.dmsf_folder if @dmsf_link.target_folder folder = @dmsf_link.target_folder.dmsf_folder if @dmsf_link.target_folder
redirect_back_or_default dmsf_folder_path(id: @project, folder_id: folder) redirect_back_or_default dmsf_folder_path(id: @project, folder_id: folder)

View File

@ -215,8 +215,8 @@ class DmsfWorkflowsController < ApplicationController
rescue => e rescue => e
flash[:error] = e.message flash[:error] = e.message
end end
redirect_back_or_default dmsf_folder_path(id: @project, folder_id: @folder) #redirect_back_or_default dmsf_folder_path(id: @project, folder_id: @folder)
return #return
# DMS link (attached) # DMS link (attached)
elsif params[:dmsf_link_id].present? elsif params[:dmsf_link_id].present?
@dmsf_link_id = params[:dmsf_link_id] @dmsf_link_id = params[:dmsf_link_id]
@ -226,12 +226,14 @@ class DmsfWorkflowsController < ApplicationController
@attachment_id = params[:attachment_id] @attachment_id = params[:attachment_id]
@dmsf_workflow_id = params[:dmsf_workflow_id] @dmsf_workflow_id = params[:dmsf_workflow_id]
end end
else #else
redirect_back_or_default dmsf_folder_path(id: @project, folder_id: @folder) #redirect_back_or_default dmsf_folder_path(id: @project, folder_id: @folder)
return #return
end end
respond_to do |format| respond_to do |format|
format.html format.html {
redirect_back_or_default dmsf_folder_path(id: @project, folder_id: @folder)
}
format.js format.js
end end
end end
@ -261,7 +263,6 @@ class DmsfWorkflowsController < ApplicationController
def new def new
@dmsf_workflow = DmsfWorkflow.new @dmsf_workflow = DmsfWorkflow.new
# Reload # Reload
if params[:dmsf_workflow] && params[:dmsf_workflow][:name].present? if params[:dmsf_workflow] && params[:dmsf_workflow][:name].present?
@dmsf_workflow.name = params[:dmsf_workflow][:name] @dmsf_workflow.name = params[:dmsf_workflow][:name]
@ -269,7 +270,6 @@ class DmsfWorkflowsController < ApplicationController
names = DmsfWorkflow.where(id: params[:dmsf_workflow][:id]).pluck(:name) names = DmsfWorkflow.where(id: params[:dmsf_workflow][:id]).pluck(:name)
@dmsf_workflow.name = names.first @dmsf_workflow.name = names.first
end end
render layout: !request.xhr? render layout: !request.xhr?
end end

View File

@ -32,6 +32,7 @@
<%= hidden_field_tag 'email[files]', @email_params[:files].to_json %> <%= hidden_field_tag 'email[files]', @email_params[:files].to_json %>
<%= hidden_field_tag 'email[from]', @email_params[:from] %> <%= hidden_field_tag 'email[from]', @email_params[:from] %>
<%= hidden_field_tag 'email[reply_to]', @email_params[:reply_to] %> <%= hidden_field_tag 'email[reply_to]', @email_params[:reply_to] %>
<%= hidden_field_tag 'back_url', @back_url %>
<div class="box tabular"> <div class="box tabular">
<p> <p>
<%= label_tag '', l(:label_email_from) %> <%= label_tag '', l(:label_email_from) %>

View File

@ -36,13 +36,15 @@
<% if allowed_minor %> <% if allowed_minor %>
<%= context_menu_link l(:title_approval), action_dmsf_workflow_path(project_id: project.id, id: wf.id, <%= context_menu_link l(:title_approval), action_dmsf_workflow_path(project_id: project.id, id: wf.id,
dmsf_workflow_step_assignment_id: assignment_id, dmsf_workflow_step_assignment_id: assignment_id,
dmsf_file_revision_id: dmsf_file.last_revision.id), dmsf_file_revision_id: dmsf_file.last_revision.id,
back_url: back_url),
remote: true, class: 'icon icon-ok', id: 'dmsf-cm-workflow', remote: true, class: 'icon icon-ok', id: 'dmsf-cm-workflow',
disabled: !assignments || !index %> disabled: !assignments || !index %>
<% else %> <% else %>
<%= context_menu_link l(:title_approval_minor), action_dmsf_workflow_path(project_id: project.id, id: wf.id, <%= context_menu_link l(:title_approval_minor), action_dmsf_workflow_path(project_id: project.id, id: wf.id,
dmsf_workflow_step_assignment_id: assignment_id, dmsf_workflow_step_assignment_id: assignment_id,
dmsf_file_revision_id: dmsf_file.last_revision.id), dmsf_file_revision_id: dmsf_file.last_revision.id,
back_url: back_url),
remote: true, class: 'icon icon-ok', id: 'dmsf-cm-workflow', remote: true, class: 'icon icon-ok', id: 'dmsf-cm-workflow',
disabled: true %> disabled: true %>
<% end %> <% end %>
@ -50,11 +52,11 @@
<% when DmsfWorkflow::STATE_ASSIGNED %> <% when DmsfWorkflow::STATE_ASSIGNED %>
<% if allowed_minor %> <% if allowed_minor %>
<%= context_menu_link l(:title_start), start_dmsf_workflow_path(id: dmsf_file.last_revision.dmsf_workflow_id, <%= 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, back_url: back_url),
class: 'icon icon-ok', disabled: !allowed %> class: 'icon icon-ok', disabled: !allowed %>
<% else %> <% else %>
<%= context_menu_link l(:title_start_minor), start_dmsf_workflow_path(id: dmsf_file.last_revision.dmsf_workflow_id, <%= context_menu_link l(:title_start_minor), 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, back_url: back_url),
class: 'icon icon-ok', disabled: true %> class: 'icon icon-ok', disabled: true %>
<% end %> <% end %>
<% when DmsfWorkflow::STATE_APPROVED, DmsfWorkflow::STATE_REJECTED, DmsfWorkflow::STATE_OBSOLETE %> <% when DmsfWorkflow::STATE_APPROVED, DmsfWorkflow::STATE_REJECTED, DmsfWorkflow::STATE_OBSOLETE %>
@ -62,12 +64,12 @@
<% else %> <% else %>
<% if allowed_minor %> <% if allowed_minor %>
<%= context_menu_link l(:title_assignment), assign_dmsf_workflow_path(id: project.id, project_id: project.id, <%= 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, back_url: back_url),
remote: true, class: 'icon icon-ok', id: 'dmsf-cm-workflow', remote: true, class: 'icon icon-ok', id: 'dmsf-cm-workflow',
disabled: locked || !workflows_available %> disabled: locked || !workflows_available %>
<% else %> <% else %>
<%= context_menu_link l(:title_assignment_minor), assign_dmsf_workflow_path(id: project.id, project_id: project.id, <%= context_menu_link l(:title_assignment_minor), 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, back_url: back_url),
remote: true, class: 'icon icon-ok', id: 'dmsf-cm-workflow', remote: true, class: 'icon icon-ok', id: 'dmsf-cm-workflow',
disabled: true %> disabled: true %>
<% end %> <% end %>

View File

@ -21,42 +21,43 @@
%> %>
<li> <li>
<%= context_menu_link l(:button_edit), dmsf_file_path(id: dmsf_file), class: 'icon icon-edit', <%= context_menu_link l(:button_edit), dmsf_file_path(id: dmsf_file, back_url: back_url), class: 'icon icon-edit',
disabled: !allowed || (locked && !unlockable) %> disabled: !allowed || (locked && !unlockable) %>
</li> </li>
<% unless dmsf_link %> <% unless dmsf_link %>
<li> <li>
<%= link_to "#{l(:button_copy)}/#{l(:button_move)}", copy_file_path(id: dmsf_file), <%= link_to "#{l(:button_copy)}/#{l(:button_move)}", copy_file_path(id: dmsf_file, back_url: back_url),
title: l(:title_copy), class: 'icon icon-copy' %> title: l(:title_copy), class: 'icon icon-copy' %>
</li> </li>
<li> <li>
<%= link_to l(:label_link_to), <%= link_to l(:label_link_to),
new_dmsf_link_path(project_id: dmsf_file.project.id, dmsf_folder_id: dmsf_file.dmsf_folder&.id, new_dmsf_link_path(project_id: dmsf_file.project.id, dmsf_folder_id: dmsf_file.dmsf_folder,
dmsf_file_id: dmsf_file.id, type: 'link_to'), dmsf_file_id: dmsf_file.id, type: 'link_to', back_url: back_url),
title: l(:title_create_link), class: 'icon dmsf-icon-link' %> title: l(:title_create_link), class: 'icon dmsf-icon-link' %>
</li> </li>
<% end %> <% end %>
<li> <li>
<% if locked %> <% if locked %>
<%= context_menu_link l(:button_unlock), unlock_dmsf_files_path(id: dmsf_file), class: 'icon icon-unlock', <%= context_menu_link l(:button_unlock), unlock_dmsf_files_path(id: dmsf_file, back_url: back_url),
title: l(:title_locked_by_user, user: dmsf_file.locked_by), class: 'icon icon-unlock', title: l(:title_locked_by_user, user: dmsf_file.locked_by),
disabled: !unlockable %> disabled: !unlockable %>
<% else %> <% else %>
<%= context_menu_link l(:button_lock), lock_dmsf_files_path(id: dmsf_file), class: 'icon icon-lock', <%= context_menu_link l(:button_lock), lock_dmsf_files_path(id: dmsf_file, back_url: back_url),
disabled: !allowed %> class: 'icon icon-lock', disabled: !allowed %>
<% end %> <% end %>
</li> </li>
<li> <li>
<% if dmsf_file.notification %> <% if dmsf_file.notification %>
<%= context_menu_link l(:label_notifications_off), notify_deactivate_dmsf_files_path(id: dmsf_file), <%= context_menu_link l(:label_notifications_off), notify_deactivate_dmsf_files_path(id: dmsf_file,
class: 'icon icon-email', disabled: !allowed || locked %> back_url: back_url), class: 'icon icon-email', disabled: !allowed || locked %>
<% else %> <% else %>
<%= context_menu_link l(:label_notifications_on), notify_activate_dmsf_files_path(id: dmsf_file), <%= context_menu_link l(:label_notifications_on), notify_activate_dmsf_files_path(id: dmsf_file,
class: 'icon icon-email-add', disabled: !allowed || locked %> back_url: back_url), class: 'icon icon-email-add', disabled: !allowed || locked %>
<% end %> <% end %>
</li> </li>
<li> <li>
<%= render partial: 'approval_workflow', locals: { dmsf_file: dmsf_file, project: project, locked: locked } %> <%= render partial: 'approval_workflow', locals: { dmsf_file: dmsf_file, project: project, locked: locked,
back_url: back_url } %>
</li> </li>
<li> <li>
<%= context_menu_link l(:button_download), view_dmsf_file_path(dmsf_file, disposition: 'attachment'), <%= context_menu_link l(:button_download), view_dmsf_file_path(dmsf_file, disposition: 'attachment'),
@ -64,7 +65,7 @@
</li> </li>
<li> <li>
<%= context_menu_link l(:field_mail), entries_operations_dmsf_path(id: project, folder_id: folder, <%= context_menu_link l(:field_mail), entries_operations_dmsf_path(id: project, folder_id: folder,
ids: params[:ids], email_entries: true), method: :post, class: 'icon icon-email', ids: params[:ids], email_entries: true, back_url: back_url), method: :post, class: 'icon icon-email',
disabled: !email_allowed %> disabled: !email_allowed %>
</li> </li>
<% if Setting.plugin_redmine_dmsf['dmsf_webdav'].present? %> <% if Setting.plugin_redmine_dmsf['dmsf_webdav'].present? %>
@ -83,7 +84,8 @@
<% end %> <% end %>
<li> <li>
<%= context_menu_link l(:button_delete), <%= context_menu_link l(:button_delete),
dmsf_link ? dmsf_link_path(id: dmsf_link, folder_id: folder) : dmsf_file_path(id: dmsf_file, folder_id: folder), dmsf_link ? dmsf_link_path(id: dmsf_link, folder_id: folder, back_url: back_url) : dmsf_file_path(id: dmsf_file,
folder_id: folder, back_url: back_url),
method: :delete, class: 'icon icon-del', data: { confirm: l(:text_are_you_sure) }, id: 'dmsf-cm-delete', method: :delete, class: 'icon icon-del', data: { confirm: l(:text_are_you_sure) }, id: 'dmsf-cm-delete',
disabled: !allowed || (locked && !dmsf_link) %> disabled: !allowed || (locked && !dmsf_link) %>
</li> </li>

View File

@ -30,6 +30,7 @@
<% else %> <% else %>
<%= labelled_form_for(@revision, url: { action: 'create_revision', id: @file }, <%= labelled_form_for(@revision, url: { action: 'create_revision', id: @file },
html: { method: :post, multipart: true, id: 'new_revision_form' }) do |f| %> html: { method: :post, multipart: true, id: 'new_revision_form' }) do |f| %>
<%= hidden_field_tag 'back_url', params[:back_url] %>
<div class="clear"> <div class="clear">
<div class="splitcontentleft"> <div class="splitcontentleft">
<p> <p>

View File

@ -25,12 +25,12 @@
<p> <p>
<% end %> <% end %>
<% file_view_url = url_for({ controller: :dmsf_files, action: 'view', id: dmsf_file }) %> <% file_view_url = url_for({ controller: :dmsf_files, action: 'view', id: dmsf_file }) %>
<%= link_to(h(dmsf_file.title), <%= link_to h(link ? link.name : dmsf_file.title),
file_view_url, file_view_url,
target: '_blank', target: '_blank',
class: "icon icon-file #{DmsfHelper.filetype_css(dmsf_file.name)}", class: "icon icon-file #{DmsfHelper.filetype_css(dmsf_file.name)}",
title: h(dmsf_file.last_revision.try(:tooltip)), title: h(dmsf_file.last_revision.try(:tooltip)),
'data-downloadurl' => "#{dmsf_file.last_revision.detect_content_type}:#{h(dmsf_file.name)}:#{file_view_url}") %> 'data-downloadurl' => "#{dmsf_file.last_revision.detect_content_type}:#{h(dmsf_file.name)}:#{file_view_url}" %>
<% if dmsf_file.text? || dmsf_file.image? %> <% if dmsf_file.text? || dmsf_file.image? %>
<%= link_to l(:button_view), <%= link_to l(:button_view),
file_view_url, file_view_url,
@ -44,7 +44,7 @@
<span class="dmsf_upload_select"> <span class="dmsf_upload_select">
<% # Details %> <% # Details %>
<% if User.current.allowed_to? :file_manipulation, dmsf_file.project %> <% if User.current.allowed_to? :file_manipulation, dmsf_file.project %>
<%= link_to '', dmsf_file_path(id: dmsf_file), <%= link_to '', dmsf_file_path(id: dmsf_file, back_url: issue_path(@issue)),
title: l(:link_details, title: h(dmsf_file.last_revision.title)), title: l(:link_details, title: h(dmsf_file.last_revision.title)),
class: 'icon-only icon-edit' %> class: 'icon-only icon-edit' %>
<% else %> <% else %>
@ -52,15 +52,15 @@
<% end %> <% end %>
<% # Email %> <% # Email %>
<%= link_to '', entries_operations_dmsf_path(id: dmsf_file.project_id, email_entries: 'email', <%= link_to '', entries_operations_dmsf_path(id: dmsf_file.project_id, email_entries: 'email',
ids: ["file-#{dmsf_file.id}"]), method: :post, title: l(:heading_send_documents_by_email), ids: ["file-#{dmsf_file.id}"], back_url: issue_path(@issue)), method: :post, title: l(:heading_send_documents_by_email),
class: 'icon-only icon-email-disabled' %> class: 'icon-only icon-email-disabled' %>
<% # Lock %> <% # Lock %>
<% if !dmsf_file.locked? %> <% if !dmsf_file.locked? %>
<%= link_to '', lock_dmsf_files_path(id: dmsf_file), <%= link_to '', lock_dmsf_files_path(id: dmsf_file, back_url: issue_path(@issue)),
title: l(:title_lock_file), title: l(:title_lock_file),
class: 'icon-only icon-lock' %> class: 'icon-only icon-lock' %>
<% elsif dmsf_file.unlockable? && (!dmsf_file.locked_for_user? || User.current.allowed_to?(:force_file_unlock, dmsf_file.project)) %> <% elsif dmsf_file.unlockable? && (!dmsf_file.locked_for_user? || User.current.allowed_to?(:force_file_unlock, dmsf_file.project)) %>
<%= link_to '', unlock_dmsf_files_path(id: dmsf_file), <%= link_to '', unlock_dmsf_files_path(id: dmsf_file, back_url: issue_path(@issue)),
title: dmsf_file.get_locked_title, title: dmsf_file.get_locked_title,
class: 'icon-only icon-unlock' %> class: 'icon-only icon-unlock' %>
<% else %> <% else %>
@ -69,18 +69,18 @@
<% if !dmsf_file.locked? %> <% if !dmsf_file.locked? %>
<% # Notifications %> <% # Notifications %>
<% if dmsf_file.notification %> <% if dmsf_file.notification %>
<%= link_to '', notify_deactivate_dmsf_files_path(id: dmsf_file), <%= link_to '', notify_deactivate_dmsf_files_path(id: dmsf_file, back_url: issue_path(@issue)),
title: l(:title_notifications_active_deactivate), title: l(:title_notifications_active_deactivate),
class: 'icon-only icon-email' %> class: 'icon-only icon-email' %>
<% else %> <% else %>
<%= link_to '', notify_activate_dmsf_files_path(id: dmsf_file), <%= link_to '', notify_activate_dmsf_files_path(id: dmsf_file, back_url: issue_path(@issue)),
title: l(:title_notifications_not_active_activate), title: l(:title_notifications_not_active_activate),
class: 'icon-only icon-email-add' %> class: 'icon-only icon-email-add' %>
<% end %> <% end %>
<% # Delete %> <% # Delete %>
<% if @issue.attributes_editable? && User.current.allowed_to?(:file_delete, dmsf_file.project) %> <% if @issue.attributes_editable? && User.current.allowed_to?(:file_delete, dmsf_file.project) %>
<%= link_to '', <%= link_to '',
link ? dmsf_link_path(link, commit: 'yes') : dmsf_file_path(id: dmsf_file, commit: 'yes'), link ? dmsf_link_path(link, commit: 'yes', back_url: issue_path(@issue)) : dmsf_file_path(id: dmsf_file, commit: 'yes', back_url: issue_path(@issue)),
data: { confirm: l(:text_are_you_sure) }, data: { confirm: l(:text_are_you_sure) },
method: :delete, method: :delete,
title: l(:button_delete), title: l(:button_delete),
@ -96,6 +96,6 @@
locals: { file: dmsf_file, locals: { file: dmsf_file,
file_approval_allowed: User.current.allowed_to?(:file_approval, dmsf_file.project), file_approval_allowed: User.current.allowed_to?(:file_approval, dmsf_file.project),
workflows_available: DmsfWorkflow.where(['project_id = ? OR project_id IS NULL', dmsf_file.project_id]).exists?, workflows_available: DmsfWorkflow.where(['project_id = ? OR project_id IS NULL', dmsf_file.project_id]).exists?,
project: dmsf_file.project, wf: wf, dmsf_link_id: nil } %> project: dmsf_file.project, wf: wf, dmsf_link_id: nil, back_url: issue_path(@issue) } %>
</span> </span>
</p> </p>

View File

@ -25,6 +25,7 @@
<%= form_tag({ controller: 'dmsf_workflows', action: 'new_action'}, method: :post, id: 'new-action-form') do %> <%= form_tag({ controller: 'dmsf_workflows', action: 'new_action'}, method: :post, id: 'new-action-form') do %>
<%= hidden_field_tag :dmsf_workflow_step_assignment_id, params[:dmsf_workflow_step_assignment_id] %> <%= hidden_field_tag :dmsf_workflow_step_assignment_id, params[:dmsf_workflow_step_assignment_id] %>
<%= hidden_field_tag :dmsf_file_revision_id, params[:dmsf_file_revision_id] %> <%= hidden_field_tag :dmsf_file_revision_id, params[:dmsf_file_revision_id] %>
<%= hidden_field_tag :back_url, params[:back_url] %>
<p> <p>
<label> <label>
<%= radio_button_tag 'step_action', DmsfWorkflowStepAction::ACTION_APPROVE, true, onclick: 'noteMandatory(false);' %> <%= radio_button_tag 'step_action', DmsfWorkflowStepAction::ACTION_APPROVE, true, onclick: 'noteMandatory(false);' %>

View File

@ -30,7 +30,8 @@
<%= link_to '', <%= link_to '',
action_dmsf_workflow_path(project_id: project.id, id: wf.id, action_dmsf_workflow_path(project_id: project.id, id: wf.id,
dmsf_workflow_step_assignment_id: assignments[index].id, dmsf_workflow_step_assignment_id: assignments[index].id,
dmsf_file_revision_id: file.last_revision.id), dmsf_file_revision_id: file.last_revision.id,
back_url: back_url),
title: l(:title_waiting_for_approval), title: l(:title_waiting_for_approval),
remote: true, remote: true,
class: 'icon-only icon-ok' %> class: 'icon-only icon-ok' %>
@ -44,7 +45,8 @@
<% if User.current && (file.last_revision.dmsf_workflow_assigned_by_user == User.current) && wf %> <% if User.current && (file.last_revision.dmsf_workflow_assigned_by_user == User.current) && wf %>
<%= link_to '', <%= link_to '',
start_dmsf_workflow_path(id: file.last_revision.dmsf_workflow_id, start_dmsf_workflow_path(id: file.last_revision.dmsf_workflow_id,
dmsf_file_revision_id: file.last_revision.id), dmsf_file_revision_id: file.last_revision.id,
back_url: back_url),
title: l(:label_dmsf_wokflow_action_start), title: l(:label_dmsf_wokflow_action_start),
class: 'icon-only icon-ok' %> class: 'icon-only icon-ok' %>
<% else %> <% else %>
@ -56,9 +58,11 @@
<% if workflows_available %> <% if workflows_available %>
<%= link_to '', <%= link_to '',
dmsf_link_id ? dmsf_link_id ?
assign_dmsf_workflow_path(id: project.id, project_id: project.id, dmsf_link_id: dmsf_link_id) : assign_dmsf_workflow_path(id: project.id, project_id: project.id, dmsf_link_id: dmsf_link_id,
back_url: back_url) :
assign_dmsf_workflow_path(id: project.id, project_id: project.id, assign_dmsf_workflow_path(id: project.id, project_id: project.id,
dmsf_file_revision_id: file.last_revision.id), dmsf_file_revision_id: file.last_revision.id,
back_url: back_url),
title: l(:label_dmsf_wokflow_action_assign), title: l(:label_dmsf_wokflow_action_assign),
remote: true, remote: true,
class: 'icon-only icon-ok' %> class: 'icon-only icon-ok' %>

View File

@ -27,6 +27,7 @@
<%= hidden_field_tag :dmsf_file_revision_id, params[:dmsf_file_revision_id] %> <%= hidden_field_tag :dmsf_file_revision_id, params[:dmsf_file_revision_id] %>
<%= hidden_field_tag :dmsf_link_id, params[:dmsf_link_id] %> <%= hidden_field_tag :dmsf_link_id, params[:dmsf_link_id] %>
<%= hidden_field_tag :attachment_id, params[:attachment_id] %> <%= hidden_field_tag :attachment_id, params[:attachment_id] %>
<%= hidden_field_tag :back_url, params[:back_url] %>
<p> <p>
<%= label_tag 'workflow', "#{l(:link_workflow)}:" %> <%= label_tag 'workflow', "#{l(:link_workflow)}:" %>
<%= select_tag 'dmsf_workflow_id', dmsf_workflows_for_select(@project, nil)%> <%= select_tag 'dmsf_workflow_id', dmsf_workflows_for_select(@project, nil)%>