diff --git a/app/helpers/macros_helper.rb b/app/helpers/macros_helper.rb
index 32bb648..8cf8bbf 100644
--- a/app/helpers/macros_helper.rb
+++ b/app/helpers/macros_helper.rb
@@ -67,13 +67,12 @@ module MacrosHelper
def macro_default_generator(macro)
code = "var params = {};"
- macro_name = macro.name.undescore
configuration = macro_configuration(macro)
configuration[:params].map do |field|
code += "params.#{field[:name]} = jQuery('*[name=#{field[:name]}]', dialog).val();"
end
code + "
- var html = jQuery('
'+#{macro_title(macro).to_json}+'
')[0];
+ var html = jQuery(''+#{macro_title(macro).to_json}+'
')[0];
for(key in params) html.setAttribute('data-macro-'+key,params[key]);
return html.outerHTML;
"
diff --git a/app/views/shared/tiny_mce.rhtml b/app/views/shared/tiny_mce.rhtml
index 1ec8bc5..28d5024 100644
--- a/app/views/shared/tiny_mce.rhtml
+++ b/app/views/shared/tiny_mce.rhtml
@@ -12,7 +12,7 @@
first_line = "print,separator,copy,paste,separator,undo,redo,separator,search,replace,separator,forecolor,fontsizeselect,formatselect"
second_line = "bold,italic,underline,strikethrough,separator,bullist,numlist,separator,justifyleft,justifycenter,justifyright,justifyfull,separator,link,unlink,image,table,separator,cleanup,code,macros"
<% macros_with_buttons.each do |macro| %>
- second_line += ',<%=macro.name.underscore %>'
+ second_line += ',<%=macro.identifier %>'
<% end %>
<% end %>
@@ -76,7 +76,7 @@ tinyMCE.init({
entity_encoding: 'raw',
setup : function(ed) {
<% macros_with_buttons.each do |macro| %>
- ed.addButton('<%= macro.name.underscore %>', {
+ ed.addButton('<%= macro.identifier %>', {
title: <%= macro_title(macro).to_json %>,
onclick: <%= generate_macro_config_dialog(macro) %>,
image : '<%= macro.configuration[:icon_path]%>'
diff --git a/lib/noosfero/plugin/macro.rb b/lib/noosfero/plugin/macro.rb
index aedf374..13a1868 100644
--- a/lib/noosfero/plugin/macro.rb
+++ b/lib/noosfero/plugin/macro.rb
@@ -2,12 +2,18 @@ class Noosfero::Plugin::Macro
attr_accessor :context
- def self.configuration
-# {:generator => ''}
- end
+ class << self
+ def configuration
+ # {:generator => ''}
+ end
- def self.plugin
- name.split('::')[0...-1].join('::').constantize
+ def plugin
+ name.split('::')[0...-1].join('::').constantize
+ end
+
+ def identifier
+ name.underscore
+ end
end
def initialize(context=nil)
diff --git a/lib/noosfero/plugin/manager.rb b/lib/noosfero/plugin/manager.rb
index 184ae31..987f049 100644
--- a/lib/noosfero/plugin/manager.rb
+++ b/lib/noosfero/plugin/manager.rb
@@ -66,7 +66,7 @@ class Noosfero::Plugin::Manager
def enabled_macros
@enabled_macros ||= dispatch(:macros).inject({}) do |memo, macro|
- memo.merge!(macro.name.underscore => macro.new(context))
+ memo.merge!(macro.identifier => macro.new(context))
end.merge('default' => Noosfero::Plugin::Macro.new(context))
end
diff --git a/test/unit/application_helper_test.rb b/test/unit/application_helper_test.rb
index 8fa22bb..4cc0fdd 100644
--- a/test/unit/application_helper_test.rb
+++ b/test/unit/application_helper_test.rb
@@ -678,8 +678,8 @@ class ApplicationHelperTest < ActiveSupport::TestCase
environment = Environment.default
environment.enable_plugin(Plugin1)
@plugins = Noosfero::Plugin::Manager.new(environment, self)
- macro1_name = Plugin1::Macro1.name.underscore
- macro2_name = Plugin1::Macro2.name.underscore
+ macro1_name = Plugin1::Macro1.identifier
+ macro2_name = Plugin1::Macro2.identifier
html = "
diff --git a/test/unit/plugin_manager_test.rb b/test/unit/plugin_manager_test.rb
index 78cbc10..47e9678 100644
--- a/test/unit/plugin_manager_test.rb
+++ b/test/unit/plugin_manager_test.rb
@@ -190,8 +190,8 @@ class PluginManagerTest < ActiveSupport::TestCase
environment.enable_plugin(Plugin1)
macro = 'My name is %{name}!'
- assert_equal 'My name is Macro1!', manager.parse_macro(Plugin1::Macro1.name.underscore, macro)
- assert_equal 'My name is Macro2!', manager.parse_macro(Plugin1::Macro2.name.underscore, macro)
+ assert_equal 'My name is Macro1!', manager.parse_macro(Plugin1::Macro1.identifier, macro)
+ assert_equal 'My name is Macro2!', manager.parse_macro(Plugin1::Macro2.identifier, macro)
end
end
--
libgit2 0.21.2