diff --git a/app/controllers/dmsf_files_controller.rb b/app/controllers/dmsf_files_controller.rb
index 4a41975b..d9cd2b03 100644
--- a/app/controllers/dmsf_files_controller.rb
+++ b/app/controllers/dmsf_files_controller.rb
@@ -30,7 +30,7 @@ class DmsfFilesController < ApplicationController
before_action :tree_view, :only => [:delete]
before_action :permissions
- accept_api_auth :show
+ accept_api_auth :show, :view
helper :all
helper :dmsf_workflows
diff --git a/app/views/dmsf_files/show.api.rsb b/app/views/dmsf_files/show.api.rsb
index 7580e599..8f2243b5 100644
--- a/app/views/dmsf_files/show.api.rsb
+++ b/app/views/dmsf_files/show.api.rsb
@@ -10,5 +10,5 @@ api.dmsf_file do
api.size @file.last_revision.size
api.description @file.last_revision.description
end
- api.content_url url_for(:controller => :dmsf_files, :action => 'show', :download => '', :id => @file)
+ api.content_url download_dmsf_file_url(@file)
end
\ No newline at end of file
diff --git a/config/routes.rb b/config/routes.rb
index 24f2fb25..d4d78c82 100644
--- a/config/routes.rb
+++ b/config/routes.rb
@@ -81,7 +81,7 @@ if Redmine::Plugin.installed? :redmine_dmsf
post '/dmsf/files/:id/delete', :controller => 'dmsf_files', :action => 'delete', :as => 'delete_dmsf_files'
post '/dmsf/files/:id/revision/create', :controller => 'dmsf_files', :action => 'create_revision'
get '/dmsf/files/:id/revision/delete', :controller => 'dmsf_files', :action => 'delete_revision', :as => 'delete_revision'
- get '/dmsf/files/:id/download', :controller => 'dmsf_files', :action => 'show', :download => '' # Otherwise will not route nil download param
+ get '/dmsf/files/:id/download', :to => 'dmsf_files#view', :download => '', :as => 'download_dmsf_file' # Otherwise will not route nil into the download param
get '/dmsf/files/:id/view', :to => 'dmsf_files#view', :as => 'view_dmsf_file'
get '/dmsf/files/:id', :controller => 'dmsf_files', :action => 'show', :as => 'dmsf_file'
delete '/dmsf/files/:id', :controller => 'dmsf_files', :action => 'delete'
diff --git a/test/integration/rest_api/dmsf_file_api_test.rb b/test/integration/rest_api/dmsf_file_api_test.rb
index f171da04..bfd0bdda 100644
--- a/test/integration/rest_api/dmsf_file_api_test.rb
+++ b/test/integration/rest_api/dmsf_file_api_test.rb
@@ -70,7 +70,7 @@ class DmsfFileApiTest < RedmineDmsf::Test::IntegrationTest
# 81dc9bdb52d04dc20036dbd8313ed055
# 4
# Some file :-)
- # /dmsf/files/1/download
+ # http://www.example.com/dmsf/files/1/download
#
assert_select 'dmsf_file > id', :text => @file1.id.to_s
assert_select 'dmsf_file > name', :text => @file1.name
@@ -80,7 +80,7 @@ class DmsfFileApiTest < RedmineDmsf::Test::IntegrationTest
assert_select 'dmsf_file > digest', :text => @file1.last_revision.digest
assert_select 'dmsf_file > size', :text => @file1.last_revision.size.to_s
assert_select 'dmsf_file > description', :text => @file1.last_revision.description
- assert_select 'dmsf_file > content_url', :text => "/dmsf/files/#{@file1.id}/download"
+ assert_select 'dmsf_file > content_url', :text => "http://www.example.com/dmsf/files/#{@file1.id}/download"
#curl -v -H "Content-Type: application/octet-stream" -X GET -u ${1}:${2} http://localhost:3000/dmsf/files/41532/download > file.txt
get "/dmsf/files/#{@file1.id}/download?key=#{token.value}"
assert_response :success