module ExpressTemplates::Components::Capabilities::Suppressable

For compononets that only display themselves conditionally

Public Class Methods

emits_if(name) click to toggle source
# File lib/express_templates/components/capabilities/suppressable.rb, line 23
def self.emits_if(name)
  self.suppression_condition_name = name
  include OverrideMethods
end
emits_unless(name) click to toggle source
# File lib/express_templates/components/capabilities/suppressable.rb, line 17
def self.emits_unless(name)
  self.suppression_condition_name = name
  self.reverse_suppression_condition = true
  include OverrideMethods
end
included(base) click to toggle source
# 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