Commit c4dc49edc75a30f70fead6f3593ff30c67953e72
Exists in
master
and in
21 other branches
Merge remote-tracking branch 'origin/master'
Showing
1 changed file
with
5 additions
and
2 deletions
Show diff stats
lib/noosfero/plugin.rb
| @@ -102,8 +102,11 @@ class Noosfero::Plugin | @@ -102,8 +102,11 @@ class Noosfero::Plugin | ||
| 102 | end | 102 | end |
| 103 | end | 103 | end |
| 104 | 104 | ||
| 105 | - def add_controller_filters controller_class, plugin, filters | ||
| 106 | - Array(filters).each do |plugin_filter| | 105 | + def add_controller_filters(controller_class, plugin, filters) |
| 106 | + unless filters.is_a?(Array) | ||
| 107 | + filters = [filters] | ||
| 108 | + end | ||
| 109 | + filters.each do |plugin_filter| | ||
| 107 | filter_method = (plugin.name.underscore.gsub('/','_') + '_' + plugin_filter[:method_name]).to_sym | 110 | filter_method = (plugin.name.underscore.gsub('/','_') + '_' + plugin_filter[:method_name]).to_sym |
| 108 | controller_class.send(plugin_filter[:type], filter_method, (plugin_filter[:options] || {})) | 111 | controller_class.send(plugin_filter[:type], filter_method, (plugin_filter[:options] || {})) |
| 109 | controller_class.send(:define_method, filter_method) do | 112 | controller_class.send(:define_method, filter_method) do |