Index: lib/redmine/activity/fetcher.rb =================================================================== --- lib/redmine/activity/fetcher.rb (revisão 14471) +++ lib/redmine/activity/fetcher.rb (cópia de trabalho) @@ -83,13 +83,13 @@ # Returns an array of events for the given date range # sorted in reverse chronological order def events(from = nil, to = nil, options={}) - e = [] + @options[:limit] = options[:limit] - @scope.each do |event_type| - constantized_providers(event_type).each do |provider| - e += provider.find_events(event_type, @user, from, to, @options) - end + if @options[:author].is_a? Array + e = @options[:author].map { |a| find_events_with_author(from, to, a) }.inject([], :+) + else + e = find_events_with_author(from, to, @options[:author]) end e.sort! {|a,b| b.event_datetime <=> a.event_datetime} @@ -102,6 +102,16 @@ private + def find_events_with_author(from, to, author) + e = [] + @scope.each do |event_type| + constantized_providers(event_type).each do |provider| + e += provider.find_events(event_type, @user, from, to, @options.merge(author: author)) + end + end + e + end + def constantized_providers(event_type) Redmine::Activity.providers[event_type].map(&:constantize) end