diff --git a/app/helpers/dmsf_helper.rb b/app/helpers/dmsf_helper.rb index bc12858e..ed386183 100644 --- a/app/helpers/dmsf_helper.rb +++ b/app/helpers/dmsf_helper.rb @@ -51,21 +51,25 @@ module DmsfHelper end end - def self.directory_tree(project) + def self.directory_tree(project, current_folder = nil) tree = [["Documents", nil]] DmsfFolder.project_root_folders(project).each do |folder| - tree.push(["...#{folder.name}", folder.id]) - directory_subtree(tree, folder, 2) + unless folder == current_folder + tree.push(["...#{folder.name}", folder.id]) + directory_subtree(tree, folder, 2, current_folder) + end end return tree end private - def self.directory_subtree(tree, folder, level) + def self.directory_subtree(tree, folder, level, current_folder) folder.subfolders.each do |subfolder| - tree.push(["#{"..." * level}#{subfolder.name}", subfolder.id]) - directory_subtree(tree, subfolder, level + 1) + unless subfolder == current_folder + tree.push(["#{"..." * level}#{subfolder.name}", subfolder.id]) + directory_subtree(tree, subfolder, level + 1) + end end end diff --git a/app/views/dmsf_detail/_file_new_revision.html.erb b/app/views/dmsf_detail/_file_new_revision.html.erb index 7177cb2b..70dc6c05 100644 --- a/app/views/dmsf_detail/_file_new_revision.html.erb +++ b/app/views/dmsf_detail/_file_new_revision.html.erb @@ -30,7 +30,7 @@ form_for(:dmsf_file_revision, @revision, :url => {:action => "save_file", :id =>
- <%= label_tag("", l(:label_filename) + ":") %> + <%= label_tag("", l(:label_file) + ":") %> <%= f.select(:folder, options_for_select(DmsfHelper.directory_tree(@project), :selected => (@revision.folder.id unless @revision.folder.nil?))) %> / diff --git a/app/views/dmsf_detail/file_detail.html.erb b/app/views/dmsf_detail/file_detail.html.erb index a9743043..7f4eb7d6 100644 --- a/app/views/dmsf_detail/file_detail.html.erb +++ b/app/views/dmsf_detail/file_detail.html.erb @@ -78,8 +78,8 @@
- <%= label_tag("", l(:label_filename) + ":") %> - <%= h(revision.name) %> + <%= label_tag("", l(:label_file) + ":") %> + <%= (h(revision.folder.dmsf_path_str) + " / ") unless revision.folder.nil? %><%= h(revision.name) %>
- <%= label_tag("dmsf_folder_name", l(:label_title) + ":") %> - <%= f.text_field(:name, :size => "32", :required => true) %> -
-+
+ <%= label_tag("dmsf_folder_name", l(:label_title) + ":") %> + <%= f.text_field(:name, :size => "32", :required => true) %> +
++ <%= label_tag("", l(:label_folder) + ":") %> + <%= f.select(:folder, + options_for_select(DmsfHelper.directory_tree(@project), + :selected => (@folder.folder.id unless @folder.folder.nil?))) %> +
+<%= label_tag("dmsf_folder_description", l(:label_description) + ":") %> - <%= f.text_area(:description, :rows => 15, :class => "wiki-edit") %>
+