module Maglove::Engine

Constants

VERSION

Public Class Methods

config() click to toggle source
# File lib/maglove/engine.rb, line 14
def self.config
  Configuration.instance
end
configure() { |instance| ... } click to toggle source
# File lib/maglove/engine.rb, line 18
def self.configure(&block)
  yield Configuration.instance if block_given?
  Configuration.instance
end
register_widget(identifier, klass) click to toggle source
# File lib/maglove/engine.rb, line 35
def self.register_widget(identifier, klass)
  Registry.instance.register_widget(identifier, klass)
end
register_widgets() click to toggle source
# File lib/maglove/engine.rb, line 39
def self.register_widgets
  path = File.join(File.dirname(__FILE__), "/widget/*.rb")
  Dir[path].each do |file|
    require file
    identifier = File.basename(file).split(".").first
    klass_name = identifier.camelcase
    Maglove::Engine.register_widget(identifier.to_sym, "Maglove::Widget::#{klass_name}".constantize)
    Maglove::Engine.register_widget("legacy_#{identifier}".to_sym, "Maglove::Widget::Legacy#{klass_name}".constantize)
  end
end
render(haml, variables = {}) click to toggle source
# File lib/maglove/engine.rb, line 27
def self.render(haml, variables = {})
  engine = Haml::Engine.new(haml, remove_whitespace: true)
  scope = Scope.new(variables)
  engine.render(scope)
rescue StandardError => e
  raise RenderError.new(e.message, e)
end
widget(identifier, options = {}, scope) click to toggle source
# File lib/maglove/engine.rb, line 23
def self.widget(identifier, options = {}, scope)
  Maglove::Engine::Registry.instance.widgets[identifier].new(scope, options)
end