Class: Pinkman::InstallGenerator

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

Instance Method Summary collapse

Instance Method Details

#copy_my_pinkman_app_js_to_railsObject



32
33
34
# File 'lib/generators/pinkman/install_generator.rb', line 32

def copy_my_pinkman_app_js_to_rails
  copy_file "my.pinkman.app.js", Rails.root.join('app','assets','javascripts','my.pinkman.app.js')
end

#create_api_controller_fileObject



36
37
38
# File 'lib/generators/pinkman/install_generator.rb', line 36

def create_api_controller_file
  copy_file "api_controller.rb", Rails.root.join('app','controllers','api_controller.rb')
end

#create_api_routesObject



20
21
22
23
24
# File 'lib/generators/pinkman/install_generator.rb', line 20

def create_api_routes
  inject_into_file 'config/routes.rb', after: ".routes.draw do" do
    ["\n \n \t" + 'namespace :api do',"\tend"].join("\n")
  end
end

#create_app_filesObject



40
41
42
# File 'lib/generators/pinkman/install_generator.rb', line 40

def create_app_files
  generate 'pinkman:app_base'
end

#create_directoriesObject



8
9
10
11
12
13
14
15
16
17
18
# File 'lib/generators/pinkman/install_generator.rb', line 8

def create_directories
  FileUtils.mkdir_p Rails.root.join('app','views','pinkman')
  FileUtils.mkdir_p Rails.root.join('app','assets','javascripts','pinkman','app','models')
  FileUtils.mkdir_p Rails.root.join('app','assets','javascripts','pinkman','app','controllers')
  FileUtils.mkdir_p Rails.root.join('app','assets','javascripts','pinkman','app','mixins')
  FileUtils.mkdir_p Rails.root.join('app','assets','javascripts','pinkman','base')
  FileUtils.mkdir_p Rails.root.join('app','assets','javascripts','pinkman','config')
  FileUtils.mkdir_p Rails.root.join('app','assets','javascripts','pinkman','test')
  FileUtils.mkdir_p Rails.root.join('app','serializers')
  FileUtils.mkdir_p Rails.root.join('app','controllers','api')
end

#create_initializerObject



44
45
46
# File 'lib/generators/pinkman/install_generator.rb', line 44

def create_initializer
  generate 'pinkman:initializer'
end

#install_hello_world_controllerObject



48
49
50
# File 'lib/generators/pinkman/install_generator.rb', line 48

def install_hello_world_controller
  copy_file "hello.controller.coffee.erb", Rails.root.join('app','assets','javascripts','pinkman','app','controllers','hello.coffee')
end

#install_mixin_exampleObject



52
53
54
# File 'lib/generators/pinkman/install_generator.rb', line 52

def install_mixin_example
  copy_file "example.mixin.coffee.erb", Rails.root.join('app','assets','javascripts','pinkman','app','mixins','example.mixin.coffee')
end

#modify_application_jsObject



26
27
28
29
30
# File 'lib/generators/pinkman/install_generator.rb', line 26

def modify_application_js
  append_to_file Rails.root.join('app','assets','javascripts','application.js') do
    "\n//= require my.pinkman.app"
  end
end