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.js.coffee', 'app/assets/javascripts/base.js.coffee'
  template 'global.js.coffee', 'app/assets/javascripts/global.js.coffee'
end

#create_directoriesObject



11
12
13
14
# File 'lib/generators/rails_script/install/install_generator.rb', line 11

def create_directories
  directory 'utilities/', 'app/assets/javascripts/utilities'
  directory 'elements/', 'app/assets/javascripts/elements'
end

#insert_layout_javascriptObject



35
36
37
38
39
40
41
42
# File 'lib/generators/rails_script/install/install_generator.rb', line 35

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



16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
# File 'lib/generators/rails_script/install/install_generator.rb', line 16

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',  "\n//= require base\n//= require_tree ./utilities\n//= require_tree ./elements", before: "\n//= require_tree ."
    else
      append_file 'app/assets/javascripts/application.js',  "\n//= require base\n//= require_tree ./utilities\n//= require_tree ./elements\n//= require_tree ."
    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', "\n#= require base\n#= require_tree ./utilities\n#= require_tree ./elements", before: "\n#= require_tree ."
    else
      append_file 'app/assets/javascripts/application.js.coffee',  "\n#= require base\n#= require_tree ./utilities\n#= require_tree ./elements\n#= require_tree ."
    end
  end
end