Class: Venus::Generators::InitGenerator
- Inherits:
-
Base
- Object
- Rails::Generators::Base
- Base
- Venus::Generators::InitGenerator
show all
- Defined in:
- lib/generators/venus/init/init_generator.rb
Instance Method Summary
collapse
Methods inherited from Base
next_migration_number, source_root
Instance Method Details
#asked_gems ⇒ Object
72
73
74
75
76
77
78
|
# File 'lib/generators/venus/init/init_generator.rb', line 72
def asked_gems
generate 'venus:paginate' if @paginate
generate 'venus:cron' if @whenever
generate "venus:simple_form" if @simple_form
generate "venus:better_errors" if @better_errors
generate "venus:rails_panel" if @rails_panel
end
|
#asks ⇒ Object
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
# File 'lib/generators/venus/init/init_generator.rb', line 10
def asks
@paginate = ask?('install paginate gem "kaminari"?', true) unless has_gem?('kaminari')
@whenever = ask?('install scheduling gem "whenever"?', true) unless has_gem?('whenever')
@simple_form = ask?('install gem "simple_form"?', true) unless has_gem?('simple_form')
@better_errors = ask?("install gem 'better_errors'", true)
@rails_panel = ask?("install gem 'rails_panel'", true)
@remove_gems = []
["coffee-rails", "sass-rails"].each do |gem_name|
@remove_gems << gem_name unless ask?("use gem '#{gem_name}'", true)
end
@assets_gems = {}
["execjs", "therubyracer", "turbo-sprockets-rails3"].each do |gem_name|
@assets_gems[gem_name] = ask?("gem '#{gem_name}' for assets", true)
end
@remove_require_tree = ask?("remove 'require_tree .' in application.css/js", true)
end
|
#assets_gems ⇒ Object
51
52
53
54
55
56
57
58
|
# File 'lib/generators/venus/init/init_generator.rb', line 51
def assets_gems
if @assets_gems.select{|gem_name,y|y}.size > 0
@assets_gems.each do |gem_name,y|
opts = (gem_name == "therubyracer") ? { :platforms => :ruby } : {}
append_gem_into_group(:assets, gem_name, opts) if y
end
end
end
|
#enable_email_delivery_error ⇒ Object
35
36
37
38
39
40
|
# File 'lib/generators/venus/init/init_generator.rb', line 35
def enable_email_delivery_error
file = 'config/environments/development.rb'
find = 'raise_delivery_errors = false'
replace = 'raise_delivery_errors = true'
replace_in_file(file, find, replace) if file_has_content?(file, find)
end
|
#gitignore ⇒ Object
60
61
62
63
|
# File 'lib/generators/venus/init/init_generator.rb', line 60
def gitignore
add_gitignore ".DS_Store"
add_gitignore "/public/assets"
end
|
#name ⇒ Object
6
7
8
|
# File 'lib/generators/venus/init/init_generator.rb', line 6
def name
"initalize"
end
|
#remove_gems ⇒ Object
42
43
44
45
46
47
48
49
|
# File 'lib/generators/venus/init/init_generator.rb', line 42
def remove_gems
if @remove_gems.size > 0
@remove_gems.each do |gem_name|
gsub_file("Gemfile", /\n.*?gem.+?#{gem_name}.+?\n/, "\n")
end
bundle_install
end
end
|
#remove_require_tree ⇒ Object
65
66
67
68
69
70
|
# File 'lib/generators/venus/init/init_generator.rb', line 65
def remove_require_tree
if @remove_require_tree
remove_line_from_file("app/assets/javascripts/application.js", "require_tree .")
remove_line_from_file("app/assets/stylesheets/application.css", "require_tree .")
end
end
|
#remove_usless_file ⇒ Object
30
31
32
33
|
# File 'lib/generators/venus/init/init_generator.rb', line 30
def remove_usless_file
remove_file 'public/index.html'
remove_file 'app/assets/images/rails.png'
end
|