[noosfero/noosfero][next] Accept proc in user_data_extras from plugins
Victor Costa
gitlab at gitlab.com
Thu Mar 19 17:46:11 BRT 2015
Victor Costa pushed to next at Noosfero / noosfero
Commits:
df49d037 by Victor Costa at 2015-03-19T16:59:15Z
Accept proc in user_data_extras from plugins
- - - - -
2 changed files:
- app/controllers/public/account_controller.rb
- test/functional/account_controller_test.rb
Changes:
=====================================
app/controllers/public/account_controller.rb
=====================================
--- a/app/controllers/public/account_controller.rb
+++ b/app/controllers/public/account_controller.rb
@@ -315,7 +315,11 @@ class AccountController < ApplicationController
session[:notice] = nil # consume the notice
end
- @plugins.each { |plugin| user_data.merge!(plugin.user_data_extras) }
+ @plugins.each do |plugin|
+ user_data_extras = plugin.user_data_extras
+ user_data_extras = instance_exec(&user_data_extras) if user_data_extras.kind_of?(Proc)
+ user_data.merge!(user_data_extras)
+ end
render :text => user_data.to_json, :layout => false, :content_type => "application/javascript"
end
=====================================
test/functional/account_controller_test.rb
=====================================
--- a/test/functional/account_controller_test.rb
+++ b/test/functional/account_controller_test.rb
@@ -712,7 +712,9 @@ class AccountControllerTest < ActionController::TestCase
class Plugin2 < Noosfero::Plugin
def user_data_extras
- {:test => 5}
+ proc do
+ {:test => 5}
+ end
end
end
Noosfero::Plugin.stubs(:all).returns([Plugin1.name, Plugin2.name])
View it on GitLab: https://gitlab.com/noosfero/noosfero/commit/df49d0370604ea29397ef74537e75373be1fef9f
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://listas.softwarelivre.org/pipermail/noosfero-dev/attachments/20150319/f3064056/attachment-0001.html>
More information about the Noosfero-dev
mailing list