class Stackoverfeeds::Generators::InstallGenerator

Public Instance Methods

add_assets() click to toggle source
# File lib/generators/stackoverfeeds/install/install_generator.rb, line 10
def add_assets
  css_manifest = 'app/assets/stylesheets/application.css'

  if File.exist?(css_manifest)
    content = File.read(css_manifest)
    unless content.match(/require_tree\s+\.\s*$/) || content.match(/require stackoverfeeds\/feeds/)
      style_require_block = "\r\n*= require stackoverfeeds/feeds\r\n"
      insert_into_file css_manifest, style_require_block, :before => "*/"
    end
  else
    copy_file 'application.css', 'app/assets/stylesheets/application.css'
  end

  js_manifest = 'app/assets/javascripts/application.js'
  if File.exist?(js_manifest)
    content = File.read(js_manifest)
    unless content.match(/require_tree\s+\.\s*$/) || content.match(/require stackoverfeeds\/feeds/)
      js_require_block = "\r\n//= require stackoverfeeds/feeds"
      append_to_file js_manifest, js_require_block
    end
  else
    copy_file 'application.js', 'app/assets/javascripts/application.js'
  end
end
add_config() click to toggle source
# File lib/generators/stackoverfeeds/install/install_generator.rb, line 47
def add_config
  unless File.read('config/application.rb').match(/stackoverfeeds\/config.yml/)
    conf_manifest = 'config/stackoverfeeds/config.yml'
    env_update = "\r\nENV.update YAML.load(File.read(File.expand_path('../stackoverfeeds/config.yml', __FILE__)))\n"
    copy_file 'config.yml', conf_manifest
    append_to_file 'config/application.rb', env_update
  end
end
add_images() click to toggle source
# File lib/generators/stackoverfeeds/install/install_generator.rb, line 43
def add_images
  copy_file 'sprites.png', 'app/assets/images/stackoverfeeds/sprites.png'
end
add_routes() click to toggle source
# File lib/generators/stackoverfeeds/install/install_generator.rb, line 56
def add_routes
  routes = 'config/routes.rb'
  unless File.read(routes).match(/stackoverfeeds/)
    routes_update = "\r\n\r\n  mount Stackoverfeeds::Engine => '\/stackoverfeeds'\n"
    insert_into_file routes, routes_update, :after => "Application.routes.draw do"
  end
end
add_scripts() click to toggle source
# File lib/generators/stackoverfeeds/install/install_generator.rb, line 39
def add_scripts
  copy_file 'feeds.js', 'app/assets/javascripts/stackoverfeeds/feeds.js'
end
add_styles() click to toggle source
# File lib/generators/stackoverfeeds/install/install_generator.rb, line 35
def add_styles
  copy_file 'feeds.css', 'app/assets/stylesheets/stackoverfeeds/feeds.css'
end
copy_schedule() click to toggle source
# File lib/generators/stackoverfeeds/install/install_generator.rb, line 64
def copy_schedule
  copy_file 'schedule.rb', 'config/stackoverfeeds/schedule.rb'
end
run_tasks() click to toggle source
# File lib/generators/stackoverfeeds/install/install_generator.rb, line 68
def run_tasks
  exec('rake stackoverfeeds:install:migrations')
end