Sha256: d1a1819daaef3282f47f3d6c63686a464595e6d091e197417875216760d69021
Contents?: true
Size: 922 Bytes
Versions: 1
Compression:
Stored size: 922 Bytes
Contents
module MultiHelper module Navigation module Exceptions class FieldRequired < Exception def initialize(field) @message = "A #{field} is required!" end end end class Group attr_reader :name, :options attr_accessor :items, :logger def initialize(name, options = {}) @name = name @options = options @options[:id] ||= "#{name.to_s.underscore.gsub('_', '-')}-navigation" @options[:class] ||= @options[:id] @items = [] end def add(name, options = {}) item = Item.new(name, options) yield(item) if block_given? @items ||= [] @items << item end def name=(value) raise MultiHelper::Navigation::Exceptions::FieldRequired.new("name") if value.blank? @name = value end def options=(opts) @options = opts end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
lucasefe-multi_helper-0.0.1 | lib/multi_helper/navigation/group.rb |