Sha256: e8a36f45a7a883d88f75e5600a675ded06eda9ae3a7c536f3669bfa6832652ac
Contents?: true
Size: 882 Bytes
Versions: 125
Compression:
Stored size: 882 Bytes
Contents
class TrustyCms::AdminUI::RegionSet def initialize @regions = Hash.new do |h,k| h[k] = [] end yield self if block_given? end def [](region) @regions[region.to_sym] end def add(region=nil, partial=nil, options={}) raise ArgumentError, "You must specify a region and a partial" unless region and partial if options[:before] index = @regions[region].empty? ? 0 : (@regions[region].index(options[:before]) || @regions[region].size) self[region].insert(index, partial) elsif options[:after] index = @regions[region].empty? ? 0 : (@regions[region].index(options[:after]) || @regions[region].size - 1) self[region].insert(index + 1, partial) else self[region] << partial end end def method_missing(method, *args, &block) if args.empty? self[method] else super end end end
Version data entries
125 entries across 125 versions & 1 rubygems