Module: ExpressTemplates::Components::Capabilities::Suppressable

Included in:
ExpressTemplates::Component
Defined in:
lib/express_templates/components/capabilities/suppressable.rb

Overview

For compononets that only display themselves conditionally

Class Method Summary collapse

Class Method Details

.included(base) ⇒ Object



8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
# File 'lib/express_templates/components/capabilities/suppressable.rb', line 8

def self.included(base)
  base.class_eval do

    class_attribute :suppression_condition_name
    self.suppression_condition_name = nil

    class_attribute :reverse_suppression_condition
    self.reverse_suppression_condition = false

    def self.emits_unless(name)
      self.suppression_condition_name = name
      self.reverse_suppression_condition = true
      include OverrideMethods
    end

    def self.emits_if(name)
      self.suppression_condition_name = name
      include OverrideMethods
    end
  end
end