diff --git a/app/models/time_entry_query.rb b/app/models/time_entry_query.rb index fcd433b08..f146a34da 100644 --- a/app/models/time_entry_query.rb +++ b/app/models/time_entry_query.rb @@ -36,8 +36,7 @@ class TimeEntryQuery < Query def initialize(attributes=nil, *args) super attributes - self.filters ||= {} - add_filter('spent_on', '*') unless filters.present? + self.filters ||= { 'spent_on' => {:operator => "*", :values => []} } end def initialize_available_filters diff --git a/test/functional/queries_controller_test.rb b/test/functional/queries_controller_test.rb index 35b5832b4..c61d5f0ea 100644 --- a/test/functional/queries_controller_test.rb +++ b/test/functional/queries_controller_test.rb @@ -592,4 +592,19 @@ class QueriesControllerTest < Redmine::ControllerTest json = ActiveSupport::JSON.decode(response.body) assert_include ["OnlineStore - Systemwide visible version", "7", "open"], json end + + def test_subproject_filter_time_entries_with_project_id_should_return_filter_values + @request.session[:user_id] = 2 + get :filter, :params => { + :project_id => 1, + :type => 'TimeEntryQuery', + :name => 'subproject_id' + } + + assert_response :success + assert_equal 'application/json', response.content_type + json = ActiveSupport::JSON.decode(response.body) + assert_equal 4, json.count + assert_include ["Private child of eCookbook","5"], json + end end