lib/geri/config.rb in geri-0.1.1 vs lib/geri/config.rb in geri-0.1.3
- old
+ new
@@ -1,27 +1,43 @@
require_relative './config/menu_item'
+require_relative './config/site'
module Geri
module Config
include ActiveSupport::Configurable
- config_accessor :admin_path # route to the administrative backend
- config_accessor :menu_items # menu item registry
- config_accessor :site_name # name of the site
+ config_accessor :admin_path # route to the administrative backend
+ config_accessor :menu_items # menu item registry
+ config_accessor :sites
# Defaults
self.admin_path = '/admin'
self.menu_items = []
- self.site_name = 'GeriCMS'
+ self.sites = {}
def self.register_menu_item(title, path_or_options=nil, options={})
self.menu_items << item = MenuItem.new(title, path_or_options, options)
yield item if block_given?
self.menu_items.sort! { |a,b| a.priority <=> b.priority }
end
+ def self.register_site(domain, mount_point, &block)
+ site = Site.new(domain, mount_point)
+ yield site
+ sites[domain] = site
+ end
+
# configure override
def self.configure(&block)
+ register_default_site
begin
yield self
+ end
+ end
+
+ private
+
+ def self.register_default_site
+ register_site :default, '/' do |site|
+ site.name = 'GeriCMS'
end
end
end
end
\ No newline at end of file