Class: Perspectives::Generators::InstallGenerator

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

Instance Method Summary collapse

Instance Method Details

#add_assetsObject



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

def add_assets
  js_manifest = 'app/assets/javascripts/application.js'

  if File.exist?(js_manifest)
    requirements = <<-REQS.strip
//= require mustache-0.8.1
//= require perspectives
//= require perspectives_views
//= require_tree ../../mustaches
    REQS

    gsub_file js_manifest, %r{^//= require turbolinks$}, ''

    insert_into_file js_manifest, "#{requirements}", :after => "jquery_ujs\n"
    insert_into_file js_manifest, "\n$(function() { $(document).perspectives('a', 'body') })\n", :after => "//= require_tree .\n"
  else
    copy_file "application.js", js_manifest
  end
end

#configure_directoriesObject



29
30
31
32
33
34
# File 'lib/generators/perspectives/install.rb', line 29

def configure_directories
  %w(app/mustaches app/perspectives).each do |dir|
    empty_directory dir
    create_file File.join(dir, '.keep')
  end
end