diff --git a/app/controllers/application_controller.rb b/app/controllers/application_controller.rb index 164ca6a..4f36e96 100644 --- a/app/controllers/application_controller.rb +++ b/app/controllers/application_controller.rb @@ -165,24 +165,10 @@ class ApplicationController < ActionController::Base end def find_by_contents(asset, scope, query, paginate_options={:page => 1}, options={}) - plugins.dispatch_first(:find_by_contents, asset, scope, query, paginate_options, options) || - fallback_find_by_contents(asset, scope, query, paginate_options, options) + plugins.dispatch_first(:find_by_contents, asset, scope, query, paginate_options, options) end def find_suggestions(asset, query, options={}) - plugins.dispatch_first(:find_suggestions, asset, query, options) || - fallback_find_suggestions(asset, query, options) - end - - private - - def fallback_find_by_contents(asset, scope, query, paginate_options, options) - scope = scope.like_search(query) unless query.blank? - scope = scope.send(options[:filter]) unless options[:filter].blank? - {:results => scope.paginate(paginate_options)} - end - - def fallback_find_suggestions(asset, query, options) - #TODO Implement fallback suggestions solution + plugins.dispatch_first(:find_suggestions, asset, query, options) end end diff --git a/lib/noosfero/plugin.rb b/lib/noosfero/plugin.rb index 9e56689..02582cf 100644 --- a/lib/noosfero/plugin.rb +++ b/lib/noosfero/plugin.rb @@ -505,6 +505,9 @@ class Noosfero::Plugin # P.S.: The plugin might add other informations on the return hash for its # own use in specific views def find_by_contents(asset, scope, query, paginate_options={}, options={}) + scope = scope.like_search(query) unless query.blank? + scope = scope.send(options[:filter]) unless options[:filter].blank? + {:results => scope.paginate(paginate_options)} end # -> Suggests terms based on asset and query -- libgit2 0.21.2