Download -> disposition: attachment
This commit is contained in:
parent
0ff3848582
commit
16949cc3d4
@ -53,7 +53,7 @@ class DmsfFilesController < ApplicationController
|
|||||||
@revision = DmsfFileRevision.find(params[:download].to_i)
|
@revision = DmsfFileRevision.find(params[:download].to_i)
|
||||||
raise DmsfAccessError if @revision.dmsf_file != @file
|
raise DmsfAccessError if @revision.dmsf_file != @file
|
||||||
end
|
end
|
||||||
check_project(@revision.dmsf_file)
|
check_project @revision.dmsf_file
|
||||||
raise ActionController::MissingFile if @file.deleted?
|
raise ActionController::MissingFile if @file.deleted?
|
||||||
access = DmsfFileRevisionAccess.new
|
access = DmsfFileRevisionAccess.new
|
||||||
access.user = User.current
|
access.user = User.current
|
||||||
@ -68,10 +68,10 @@ class DmsfFilesController < ApplicationController
|
|||||||
end
|
end
|
||||||
# IE has got a tendency to cache files
|
# IE has got a tendency to cache files
|
||||||
expires_in(0.year, 'must-revalidate' => true)
|
expires_in(0.year, 'must-revalidate' => true)
|
||||||
send_file(@revision.disk_file,
|
send_file @revision.disk_file,
|
||||||
filename: filename_for_content_disposition(@revision.formatted_name(title_format)),
|
filename: filename_for_content_disposition(@revision.formatted_name(title_format)),
|
||||||
type: @revision.detect_content_type,
|
type: @revision.detect_content_type,
|
||||||
disposition: @revision.dmsf_file.disposition)
|
disposition: params[:disposition].present? ? params[:disposition] : @revision.dmsf_file.disposition
|
||||||
rescue DmsfAccessError => e
|
rescue DmsfAccessError => e
|
||||||
Rails.logger.error e.message
|
Rails.logger.error e.message
|
||||||
render_403
|
render_403
|
||||||
|
|||||||
@ -51,8 +51,8 @@
|
|||||||
<%= 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 }) %>
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<%= context_menu_link l(:button_download), view_dmsf_file_path(dmsf_file), class: 'icon icon-download',
|
<%= context_menu_link l(:button_download), view_dmsf_file_path(dmsf_file, disposition: 'attachment'),
|
||||||
disabled: false %>
|
class: 'icon icon-download', disabled: false %>
|
||||||
</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,
|
||||||
|
|||||||
@ -24,7 +24,7 @@
|
|||||||
"$('#revision_access_#{revision.id}').toggle(); $('.drdn.expanded').removeClass('expanded');",
|
"$('#revision_access_#{revision.id}').toggle(); $('.drdn.expanded').removeClass('expanded');",
|
||||||
class: 'icon icon-group dmsf-revision-action-button' %>
|
class: 'icon icon-group dmsf-revision-action-button' %>
|
||||||
<%= link_to l(:title_download),
|
<%= link_to l(:title_download),
|
||||||
view_dmsf_file_path(file, download: revision),
|
view_dmsf_file_path(file, download: revision, disposition: 'attachment'),
|
||||||
title: l(:title_title_version_version_download, title: h(revision.title), version: revision.version),
|
title: l(:title_title_version_version_download, title: h(revision.title), version: revision.version),
|
||||||
class: 'icon icon-download dmsf-revision-action-button' %>
|
class: 'icon icon-download dmsf-revision-action-button' %>
|
||||||
<%= link_to l(:title_obsolete_revision),
|
<%= link_to l(:title_obsolete_revision),
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user