Sha256: 7a15af0e0a21ffdfbc08e953c939e172589af912ddb1244d407beb8b446c9009

Contents?: true

Size: 1.46 KB

Versions: 4

Compression:

Stored size: 1.46 KB

Contents

class Spud::SetupGenerator < ::Rails::Generators::Base
  desc 'Base setup for a new TB application'
  source_root File.expand_path('../templates', __FILE__)

  def setup
    if ask('NOTICE: Setup will now attempt to delete and/or overwrite existing files. Continue?', :limited_to => ['y', 'n']) == 'n'
      return
    end

    template "views/layouts/application.html.erb", "app/views/layouts/application.html.erb"
    template "application_controller.rb", "app/controllers/application_controller.rb"
    template 'assets/admin.css.scss', 'app/assets/stylesheets/admin/application.css.scss'

    remove_file 'app/assets/stylesheets/application.css'
    template 'assets/application.css.scss', 'app/assets/stylesheets/application.css.scss'
    template 'assets/application.js', 'app/assets/javascripts/application.js'
    template 'assets/admin/application.js', 'app/assets/javascripts/admin/application.js'

    environment(spud_core_configs())
    rake('railties:install:migrations')

    if ask("Migrate the database?", :limited_to => ['y', 'n']).downcase == 'y'
      rake('db:migrate')
    end
  end

private

  def spud_core_configs
    site_name = application_name().titleize
    domain_name = application_name().dasherize
    return <<EOF
Spud::Core.configure do |config|
      config.site_name = "#{site_name}"
      config.from_address = "no-reply@#{domain_name}.com"
    end
EOF
  end

  def application_name
    Rails.application.class.name.split('::').first.underscore
  end

end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
tb_core-1.3.1 lib/generators/spud/setup_generator.rb
tb_core-1.3.0 lib/generators/spud/setup_generator.rb
tb_core-1.3.0.beta2 lib/generators/spud/setup_generator.rb
tb_core-1.3.0.beta1 lib/generators/spud/setup_generator.rb