Class: Refinery::Plugins
- Inherits:
-
Array
- Object
- Array
- Refinery::Plugins
- Defined in:
- vendor/plugins/refinery/lib/refinery/plugins.rb
Class Method Summary collapse
Instance Method Summary collapse
- #[](title) ⇒ Object
- #find_activity_by_model(model) ⇒ Object
- #find_by_model(model) ⇒ Object
- #find_by_title(title) ⇒ Object
- #in_menu ⇒ Object
-
#initialize ⇒ Plugins
constructor
A new instance of Plugins.
- #titles ⇒ Object
Constructor Details
#initialize ⇒ Plugins
Returns a new instance of Plugins.
4 5 6 |
# File 'vendor/plugins/refinery/lib/refinery/plugins.rb', line 4 def initialize @plugins = [] end |
Class Method Details
.active ⇒ Object
37 38 39 |
# File 'vendor/plugins/refinery/lib/refinery/plugins.rb', line 37 def self.active @active_plugins ||= self.new end |
.always_allowed ⇒ Object
41 42 43 |
# File 'vendor/plugins/refinery/lib/refinery/plugins.rb', line 41 def self.always_allowed registered.reject { |p| !p.always_allow_access } end |
.registered ⇒ Object
25 26 27 |
# File 'vendor/plugins/refinery/lib/refinery/plugins.rb', line 25 def self.registered @registered_plugins ||= self.new end |
.set_active(titles) ⇒ Object
45 46 47 48 49 50 |
# File 'vendor/plugins/refinery/lib/refinery/plugins.rb', line 45 def self.set_active(titles) active.clear titles.each do |title| active << registered[title] if registered[title] end end |
Instance Method Details
#[](title) ⇒ Object
21 22 23 |
# File 'vendor/plugins/refinery/lib/refinery/plugins.rb', line 21 def [](title) self.find { |plugin| plugin.title == title } end |
#find_activity_by_model(model) ⇒ Object
16 17 18 19 |
# File 'vendor/plugins/refinery/lib/refinery/plugins.rb', line 16 def find_activity_by_model(model) plugin = find_by_model(model) plugin.activity.reject {|activity| activity.class != model}.first unless plugin.nil? end |
#find_by_model(model) ⇒ Object
12 13 14 |
# File 'vendor/plugins/refinery/lib/refinery/plugins.rb', line 12 def find_by_model(model) self.reject { |plugin| plugin.activity.reject {|activity| activity.class != model }.empty? }.first end |
#find_by_title(title) ⇒ Object
8 9 10 |
# File 'vendor/plugins/refinery/lib/refinery/plugins.rb', line 8 def find_by_title(title) self.reject { |plugin| plugin.title != title }.first end |
#in_menu ⇒ Object
33 34 35 |
# File 'vendor/plugins/refinery/lib/refinery/plugins.rb', line 33 def self.reject{ |p| p. } end |
#titles ⇒ Object
29 30 31 |
# File 'vendor/plugins/refinery/lib/refinery/plugins.rb', line 29 def titles self.collect { |p| p.title } end |