diff --git a/app/models/dmsf_folder.rb b/app/models/dmsf_folder.rb index c138ca7b..3c25fdd0 100644 --- a/app/models/dmsf_folder.rb +++ b/app/models/dmsf_folder.rb @@ -202,11 +202,19 @@ class DmsfFolder < ActiveRecord::Base return new_folder unless new_folder.save self.files.visible.each do |f| - f.copy_to(project, new_folder) + f.copy_to project, new_folder end - self.subfolders.each do |s| - s.copy_to(project, new_folder) + self.subfolders.visible.each do |s| + s.copy_to project, new_folder + end + + self.folder_links.visible.each do |l| + l.copy_to project, new_folder + end + + self.file_links.visible.each do |l| + l.copy_to project, new_folder end return new_folder diff --git a/app/models/dmsf_link.rb b/app/models/dmsf_link.rb index ba4c8105..37d9e0b3 100644 --- a/app/models/dmsf_link.rb +++ b/app/models/dmsf_link.rb @@ -84,5 +84,17 @@ class DmsfLink < ActiveRecord::Base end path end + + def copy_to(project, folder) + link = DmsfLink.new( + :target_project_id => self.target_project_id, + :target_id => self.target_id, + :target_type => self.target_type, + :name => self.name, + :project_id => project.id, + :dmsf_folder_id => folder.id) + link.save + link + end -end +end \ No newline at end of file diff --git a/app/views/dmsf_files/show.html.erb b/app/views/dmsf_files/show.html.erb index 46087c0f..e08c774c 100644 --- a/app/views/dmsf_files/show.html.erb +++ b/app/views/dmsf_files/show.html.erb @@ -63,7 +63,6 @@ <%= error_messages_for('file') %> <%= error_messages_for('revision') %> <%= render(:partial => 'file_new_revision') if User.current.allowed_to?(:file_manipulation, @file.project) %> -<%#= form_tag('', :id => 'entries_form') %>