Reviewed-By: Jacob Helwig
Signed-off-by: Pieter van de Bruggen <[email protected]>
---
Local-branch: tickets/next/6989
app/views/reports/_report.html.haml | 10 +++++-----
lib/registry.rb | 10 ++++++----
2 files changed, 11 insertions(+), 9 deletions(-)
diff --git a/app/views/reports/_report.html.haml
b/app/views/reports/_report.html.haml
index 102b03d..6455aa4 100644
--- a/app/views/reports/_report.html.haml
+++ b/app/views/reports/_report.html.haml
@@ -10,10 +10,10 @@
.item
- user_facing = { '600_resource_statuses' => 'Events', '700_log' => 'Log',
'800_metrics' => 'Metrics' }
%ul#report-tabs
- - Registry.each_callback :core, :report_view_widgets do |widget|
+ - Registry.each_callback :core, :report_view_widgets do |name, widget|
%li
- %a{ :href => "##{user_facing[widget.name].downcase}" }
- = user_facing[widget.name]
- - Registry.each_callback :core, :report_view_widgets do |widget|
- %div(id="#{user_facing[widget.name].downcase}")
+ %a{ :href => "##{user_facing[name].downcase}" }
+ = user_facing[name]
+ - Registry.each_callback :core, :report_view_widgets do |name, widget|
+ %div(id="#{user_facing[name].downcase}")
= widget.call self, report
diff --git a/lib/registry.rb b/lib/registry.rb
index bf94f37..7916857 100644
--- a/lib/registry.rb
+++ b/lib/registry.rb
@@ -15,16 +15,18 @@ class Registry
raise "Cannot redefine callback
[#{feature_name.inspect},#{hook_name.inspect},#{callback_name}]"
end
- (class << block; self; end).send(:define_method, :name) { callback_name }
-
@registry[feature_name][hook_name][callback_name] = value || block
end
end
- def each_callback( feature_name, hook_name )
+ def each_callback( feature_name, hook_name, &block )
hook = @registry[feature_name][hook_name]
hook.sort.each do |callback_name,callback|
- yield( callback )
+ if block.arity == 2
+ yield( callback_name, callback )
+ else
+ yield( callback )
+ end
end
nil
end
--
1.7.4.1
--
You received this message because you are subscribed to the Google Groups
"Puppet Developers" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/puppet-dev?hl=en.