diff --git a/app/models/dmsf_file.rb b/app/models/dmsf_file.rb index 73001479..a75b9e9b 100644 --- a/app/models/dmsf_file.rb +++ b/app/models/dmsf_file.rb @@ -170,11 +170,7 @@ class DmsfFile < ActiveRecord::Base def notify_activate self.notification = true self.save! - end - - def display_name - return self.name - end + end # Returns an array of projects that current user can copy file to def self.allowed_target_projects_on_copy diff --git a/app/models/dmsf_link.rb b/app/models/dmsf_link.rb index 74205f41..2c54883d 100644 --- a/app/models/dmsf_link.rb +++ b/app/models/dmsf_link.rb @@ -69,5 +69,10 @@ class DmsfLink < ActiveRecord::Base end nil end + + def path + file = self.target_file + file.dmsf_path.map { |element| element.is_a?(DmsfFile) ? element.name : element.title }.join('/') if file + end end diff --git a/app/views/dmsf/_file.html.erb b/app/views/dmsf/_file.html.erb index 7028e2ef..bd00bfd5 100644 --- a/app/views/dmsf/_file.html.erb +++ b/app/views/dmsf/_file.html.erb @@ -31,7 +31,7 @@ :class => "icon icon-file #{DmsfHelper.filetype_css(file.name)}", :title => l(:title_title_version_version_download, :title => h(file.title), :version => file.version), 'data-downloadurl' => "#{file.last_revision.detect_content_type}:#{h(file.name)}:#{file_download_url}") %> -
<%= h(file.display_name) %>
+
<%= h(link ? link.path : file.name) %>
<%= number_to_human_size(file.last_revision.size) %> diff --git a/test/unit/dmsf_links_test.rb b/test/unit/dmsf_links_test.rb index 7a3c02ee..2747a0c2 100644 --- a/test/unit/dmsf_links_test.rb +++ b/test/unit/dmsf_links_test.rb @@ -137,6 +137,11 @@ class DmsfLinksTest < RedmineDmsf::Test::UnitTest DmsfLink.find_link_by_file_name(@file_link.project, @file_link.folder, @file_link.target_file.name) end + def test_path + assert_equal @file_link.path, + @file_link.target_file.dmsf_path_str + end + def test_destroy @folder_link.destroy assert_nil DmsfLink.find_by_id 1