Clone
module Comfy
module Generators
class CmsGenerator < Rails::Generators::Base
require 'rails/generators/active_record'
include Rails::Generators::Migration
include Thor::Actions
source_root File.expand_path('../../../../..', __FILE__)
def generate_migration
destination = File.expand_path('db/migrate/01_create_cms.rb', self.destination_root)
migration_dir = File.dirname(destination)
destination = self.class.migration_exists?(migration_dir, 'create_cms')
if destination
puts "\e[0m\e[31mFound existing cms_create.rb migration. Remove it if you want to regenerate.\e[0m"
else
migration_template 'db/migrate/01_create_cms.rb', 'db/migrate/create_cms.rb'
end
end
def generate_initialization
copy_file 'config/initializers/comfortable_mexican_sofa.rb',
'config/initializers/comfortable_mexican_sofa.rb'
end
def generate_public_assets
return if ComfortableMexicanSofa.asset_pipeline_enabled?
directory 'app/assets/stylesheets/comfortable_mexican_sofa',
'public/stylesheets/comfortable_mexican_sofa'
directory 'app/assets/javascripts/comfortable_mexican_sofa',
'public/javascripts/comfortable_mexican_sofa'
directory 'app/assets/images/comfortable_mexican_sofa',
'public/images/comfortable_mexican_sofa'
files_to_be_changed = [
'public/stylesheets/comfortable_mexican_sofa/content.css',
'public/stylesheets/comfortable_mexican_sofa/widgets.css',
'public/stylesheets/comfortable_mexican_sofa/jquery_ui.css',
'public/stylesheets/comfortable_mexican_sofa/elrte.css',
'public/stylesheets/comfortable_mexican_sofa/files.css'
]
files_to_be_changed.each do |file_path|
gsub_file file_path, '/assets/comfortable_mexican_sofa/', '/images/comfortable_mexican_sofa/'
end
end
def generate_cms_seeds
directory 'db/cms_fixtures', 'db/cms_fixtures'
end
def show_readme
readme 'lib/generators/comfy/cms/README'
end
def self.next_migration_number(dirname)
ActiveRecord::Generators::Base.next_migration_number(dirname)
end
end
end
end