Class: RailsScript::Generators::InstallGenerator

Inherits:
Rails::Generators::Base
  • Object
show all
Defined in:
lib/generators/rails_script/install/install_generator.rb

Instance Method Summary collapse

Instance Method Details

#copy_filesObject



6
7
8
9
# File 'lib/generators/rails_script/install/install_generator.rb', line 6

def copy_files
  template 'base.coffee', 'app/assets/javascripts/base.coffee'
  template 'global.coffee', 'app/assets/javascripts/global.coffee'
end

#insert_layout_javascriptObject



30
31
32
33
34
35
36
37
# File 'lib/generators/rails_script/install/install_generator.rb', line 30

def insert_layout_javascript
  say <<-RUBY
In order to complete installation, you must include the following helper BEFORE the closing body tag in the application layout:

<%= include_rails_script %>

  RUBY
end

#insert_load_orderObject



11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
# File 'lib/generators/rails_script/install/install_generator.rb', line 11

def insert_load_order
  if File.exist?('app/assets/javascripts/application.js')

    if File.readlines('app/assets/javascripts/application.js').grep('//= require_tree .').any?
      inject_into_file 'app/assets/javascripts/application.js',  "//= require rails_script\n", before: '//= require_tree .'
    else
      append_file 'app/assets/javascripts/application.js',  "\n//= require rails_script"
    end

  elsif File.exist?('app/assets/javascripts/application.js.coffee')

    if File.readlines('app/assets/javascripts/application.js.coffee').grep('#= require_tree .').any?
      inject_into_file 'app/assets/javascripts/application.js.coffee', "#= require rails_script\n", before: '#= require_tree .'
    else
      append_file 'app/assets/javascripts/application.js.coffee',  "\n#= require rails_script"
    end
  end
end