diff --git a/app/controllers/dmsf_controller.rb b/app/controllers/dmsf_controller.rb index a550481b..551cec38 100644 --- a/app/controllers/dmsf_controller.rb +++ b/app/controllers/dmsf_controller.rb @@ -32,6 +32,7 @@ class DmsfController < ApplicationController before_action :permissions # also try to lookup folder by title if this is API call before_action :find_folder_by_title, only: [:show] + before_action :get_query, only: [:expand_folder, :show, :trash] accept_api_auth :show, :create, :save, :delete @@ -47,7 +48,7 @@ class DmsfController < ApplicationController def expand_folder @idnt = params[:idnt].present? ? params[:idnt].to_i + 1 : 0 - @query = retrieve_query(DmsfQuery, true) + #@query = retrieve_query(DmsfQuery, true) @query.dmsf_folder_id = @folder.id @query.deleted = false respond_to do |format| @@ -61,8 +62,8 @@ class DmsfController < ApplicationController @folder_manipulation_allowed = User.current.allowed_to?(:folder_manipulation, @project) @file_manipulation_allowed = User.current.allowed_to?(:file_manipulation, @project) @trash_enabled = @folder_manipulation_allowed && @file_manipulation_allowed - use_session = !request.format.csv? - @query = retrieve_query(DmsfQuery, use_session) + #use_session = !request.format.csv? + #@query = retrieve_query(DmsfQuery, use_session) @query.dmsf_folder_id = @folder ? @folder.id : nil @query.deleted = false if (@folder && @folder.deleted?) || (params[:folder_title].present? && !@folder) @@ -88,7 +89,7 @@ class DmsfController < ApplicationController @folder_manipulation_allowed = User.current.allowed_to? :folder_manipulation, @project @file_manipulation_allowed = User.current.allowed_to? :file_manipulation, @project @file_delete_allowed = User.current.allowed_to? :file_delete, @project - @query = retrieve_query(DmsfQuery, true) + #@query = retrieve_query(DmsfQuery, true) @query.deleted = true respond_to do |format| format.html { @@ -629,4 +630,14 @@ class DmsfController < ApplicationController copy end + def get_query + if Redmine::Plugin.installed?(:easy_extensions) + @query = DmsfQuery.new + @query.project = @project + else + use_session = !request.format.csv? + @query = retrieve_query(DmsfQuery, use_session) + end + end + end diff --git a/app/controllers/dmsf_files_controller.rb b/app/controllers/dmsf_files_controller.rb index af1b732b..50010313 100644 --- a/app/controllers/dmsf_files_controller.rb +++ b/app/controllers/dmsf_files_controller.rb @@ -31,11 +31,11 @@ class DmsfFilesController < ApplicationController accept_api_auth :show, :view, :delete - helper :all #TODO: Is it needed? + helper :custom_fields helper :dmsf_workflows helper :dmsf - helper :queries + include QueriesHelper def permissions @@ -86,10 +86,6 @@ class DmsfFilesController < ApplicationController @file_delete_allowed = User.current.allowed_to?(:file_delete, @project) @file_manipulation_allowed = User.current.allowed_to?(:file_manipulation, @project) @revision_pages = Paginator.new @file.dmsf_file_revisions.visible.count, params['per_page'] ? params['per_page'].to_i : 25, params['page'] - #@revision_access_query = retrieve_query(DmsfFileRevisionAccessQuery, false) - # @revision_access_query.revision_id = @revision.id - # @revision_access_count = @revision_access_query.access_count - # @revision_access_pages = Paginator.new @revision_access_count, per_page_option, params['page'] respond_to do |format| format.html { diff --git a/assets/javascripts/redmine_dmsf.js b/assets/javascripts/redmine_dmsf.js index 2e2b2227..3e2b9b02 100644 --- a/assets/javascripts/redmine_dmsf.js +++ b/assets/javascripts/redmine_dmsf.js @@ -165,7 +165,15 @@ function dmsfExpandRows(EL, parentRow, url) { classes: classes } }).done(function(data) { - eval(data); + // Hide the expanding icon if there are no childern + if(data.indexOf(' ' + m[1] + ' ') < 0){ + $(parentRow).removeClass('dmsf_expanded'); + $(parentRow).addClass('dmsf_child'); + } + else { + // Add child rows + eval(data); + } }) .fail(function() { alert('An error in rows expanding');