Sha256: f2d283d6180c9af72f84833be8d1dac599ed2fea3be6aec53213ee8845a7a596
Contents?: true
Size: 1.76 KB
Versions: 3
Compression:
Stored size: 1.76 KB
Contents
require "#{File.dirname(__FILE__)}/shell" module Alchemy class Seeder extend Shell class << self # This seed builds the necessary page structure for alchemy in your database. # Run the alchemy:db:seed rake task to seed your database. def seed! create_default_site create_root_page end private def desc(message) puts "\n#{message}" puts "#{'-' * message.length}\n" end def todo(todo) add_todo todo end def add_todo(todo) todos << todo end def todos @@todos ||= [] end def display_todos if todos.length > 0 log "\nTODOS:", :message log "------\n", :message todos.each_with_index do |todo, i| log "\n#{i+1}. ", :message log todo, :message end end end protected def create_default_site desc "Creating default site" if Alchemy::Site.count == 0 site = Alchemy::Site.new( name: 'Default Site', host: '*' ) if Alchemy::Language.any? site.languages = Alchemy::Language.all end site.save! log "Created default site with default language." else log "Default site was already present.", :skip end end def create_root_page desc "Creating root page" root = Alchemy::Page.find_or_initialize_by_name( :name => 'Root', :do_not_sweep => true ) if root.new_record? if root.save! log "Created page #{root.name}." end else log "Page #{root.name} was already present.", :skip end end end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
alchemy_cms-2.6.3 | lib/alchemy/seeder.rb |
alchemy_cms-2.6.2.1 | lib/alchemy/seeder.rb |
alchemy_cms-2.6.2 | lib/alchemy/seeder.rb |