Sha256: 176fd2832df807f98fdf5ece1b66166ce896593055c9408373c04ff91f19d16f
Contents?: true
Size: 1014 Bytes
Versions: 17
Compression:
Stored size: 1014 Bytes
Contents
module KirguduBase module DynamicPages class MenuBuilder < ::KirguduBase::DynamicPages::Builder def initialize(name, &block) self.builder_options.merge!({ is_ajax: :false, elements: nil, name: nil }) self.name( name) super(&block) end def is_ajax(value) self.builder_options[:is_ajax] = value end def name(value) self.builder_options[:name] = value end def items(&block) elements(&block) end def elements(&block) self.builder_options[:elements] ||= [] elmnts = ::KirguduBase::DynamicPages::MenuItemsBlockBuilder.new(&block).to_elements elmnts.each do |element| self.builder_options[:elements] << element end end def to_element element = ::KirguduBase::DynamicPages::Menu.new self.build_element(element) self.validate_generated_element(element) element end end end end
Version data entries
17 entries across 17 versions & 1 rubygems