Class: Stackoverfeeds::Generators::InstallGenerator
- Inherits:
-
Rails::Generators::Base
- Object
- Rails::Generators::Base
- Stackoverfeeds::Generators::InstallGenerator
- Defined in:
- lib/generators/stackoverfeeds/install/install_generator.rb
Instance Method Summary collapse
- #add_assets ⇒ Object
- #add_config ⇒ Object
- #add_images ⇒ Object
- #add_routes ⇒ Object
- #add_scripts ⇒ Object
- #add_styles ⇒ Object
- #copy_schedule ⇒ Object
- #run_tasks ⇒ Object
Instance Method Details
#add_assets ⇒ Object
10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 |
# 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 ⇒ Object
47 48 49 50 51 52 53 54 |
# 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 ⇒ Object
43 44 45 |
# 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 ⇒ Object
56 57 58 59 60 61 62 |
# 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 ⇒ Object
39 40 41 |
# 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 ⇒ Object
35 36 37 |
# 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 ⇒ Object
64 65 66 |
# File 'lib/generators/stackoverfeeds/install/install_generator.rb', line 64 def copy_schedule copy_file 'schedule.rb', 'config/stackoverfeeds/schedule.rb' end |
#run_tasks ⇒ Object
68 69 70 |
# File 'lib/generators/stackoverfeeds/install/install_generator.rb', line 68 def run_tasks exec('rake stackoverfeeds:install:migrations') end |