diff --git a/config/routes.rb b/config/routes.rb index 9bfc37d..8ab67b9 100644 --- a/config/routes.rb +++ b/config/routes.rb @@ -36,10 +36,8 @@ ActionController::Routing::Routes.draw do |map| map.connect 'cat', :controller => 'category', :action => 'index' map.category 'cat/*path', :controller => 'category', :action => 'view' - ## controllers for blocks - # FIXME this path didn't works Leandro comments this line and the reference to the controller path on - # /lib/noosfero.rg file. - #map.controllers 'block/:controller/:action/:id', :controller => Noosfero.pattern_for_controllers_from_design_blocks + # controllers for blocks + map.controllers 'block/:controller/:action/:id', :controller => Noosfero.pattern_for_controllers_from_design_blocks ###################################################### ## Controllers that are profile-specific (for profile admins ) diff --git a/lib/noosfero.rb b/lib/noosfero.rb index 5f5232d..34b6719 100644 --- a/lib/noosfero.rb +++ b/lib/noosfero.rb @@ -9,21 +9,18 @@ module Noosfero Regexp.new(pattern) end -# FIXME This path is not working. I put a line deteach on the 'controllers_in_directory' method to meka the blocks -# works -# def self.pattern_for_controllers_from_design_blocks -# items = Dir.glob(File.join(RAILS_ROOT, 'app', 'design_blocks', '*', 'controllers', '*_controller.rb')).map do |item| -# item.gsub(/^.*\/([^\/]+)_controller.rb$/, '\1') -# end.join('|') -# Regexp.new(items.blank? ? '' : ('(' + items + ')')) -# end + def self.pattern_for_controllers_from_design_blocks + items = Dir.glob(File.join(RAILS_ROOT, 'app', 'design_blocks', '*', 'controllers', '*_controller.rb')).map do |item| + item.gsub(/^.*\/([^\/]+)_controller.rb$/, '\1') + end.join('|') + Regexp.new(items.blank? ? '' : ('(' + items + ')')) + end private def self.controllers_in_directory(dir) app_controller_path = Dir.glob(File.join(RAILS_ROOT, 'app', 'controllers', dir, '*_controller.rb')) - items = Dir.glob(File.join(RAILS_ROOT, 'app', 'design_blocks', '*', 'controllers', '*_controller.rb')) # FIXME line added to blocks works - (app_controller_path + items).map do |item| + app_controller_path.map do |item| item.gsub(/^.*\/([^\/]+)_controller.rb$/, '\1') end end -- libgit2 0.21.2