Class: TidaTemplate::Generators::InstallGenerator

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

Overview

:nodoc:

Instance Method Summary collapse

Instance Method Details

#copy_stuffObject

:nodoc:



33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
# File 'lib/generators/tida_template/install_generator.rb', line 33

def copy_stuff #:nodoc:
  # copy layouts
  copy_file 'app/views/layouts/single.html.erb', 'app/views/layouts/single.html.erb'
  copy_file 'app/views/layouts/application.html.erb', 'app/views/layouts/application.html.erb'

  # copy shared
  copy_file 'app/views/shared/components/_article_title.html.erb', 'app/views/shared/components/_article_title.html.erb'
  copy_file 'app/views/shared/components/_date_jumper.html.erb', 'app/views/shared/components/_date_jumper.html.erb'
  copy_file 'app/views/shared/components/_modal.html.erb', 'app/views/shared/components/_modal.html.erb'
  copy_file 'app/views/shared/components/_notification.html.erb', 'app/views/shared/components/_notification.html.erb'
  copy_file 'app/views/shared/components/_page_menu.html.erb', 'app/views/shared/components/_page_menu.html.erb'
  copy_file 'app/views/shared/components/_page_title.html.erb', 'app/views/shared/components/_page_title.html.erb'
  copy_file 'app/views/shared/components/_toolbar.html.erb', 'app/views/shared/components/_toolbar.html.erb'

  # copy renders
  copy_file 'renderers/navigation_bar_renderer.rb', 'lib/tida/renderers/navigation_bar_renderer.rb'
  copy_file 'renderers/component_renderer.rb', 'lib/tida/renderers/component_renderer.rb'

  # copy paperclip attachment access token
  copy_file 'paperclip/attachment_access_token.rb', 'lib/tida/paperclip/attachment_access_token.rb'

  # copy initializers
  copy_file 'config/initializers/navigation_renderers.rb', 'config/initializers/navigation_renderers.rb'
  copy_file 'config/initializers/quiet_assets.rb', 'config/initializers/quiet_assets.rb'

  # copy locales
  copy_file 'config/locales/devise.zh-CN.yml', 'config/locales/devise.zh-CN.yml'
  copy_file 'config/locales/simple_form.zh-CN.yml', 'config/locales/simple_form.zh-CN.yml'
  copy_file 'config/locales/zh-CN.yml', 'config/locales/zh-CN.yml'

  #copy other configurations
  copy_file 'config/application.yml', 'config/application.yml'
  copy_file 'settingslogic/settings.rb', 'lib/settings.rb'

  # copy devise view
  copy_file 'app/views/devise/sessions/new.html.erb', 'app/views/devise/sessions/new.html.erb'

  # copy rails template files
  copy_file 'rails_templates/erb/scaffold/_form.html.erb', 'lib/templates/erb/scaffold/_form.html.erb'
  copy_file 'rails_templates/erb/scaffold/index.html.erb', 'lib/templates/erb/scaffold/index.html.erb'
  copy_file 'rails_templates/erb/scaffold/new.html.erb', 'lib/templates/erb/scaffold/new.html.erb'
  copy_file 'rails_templates/erb/scaffold/edit.html.erb', 'lib/templates/erb/scaffold/edit.html.erb'
  copy_file 'rails_templates/erb/scaffold/show.html.erb', 'lib/templates/erb/scaffold/show.html.erb'
  copy_file 'rails_templates/rails/scaffold_controller/controller.rb', 'lib/templates/rails/scaffold_controller/controller.rb'
end

#modify_some_filesObject



7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
# File 'lib/generators/tida_template/install_generator.rb', line 7

def modify_some_files
  # modify application.rb
  autoload_path_line = 'config.autoload_paths += %W(#{config.root}/extras)'
  gsub_file 'config/application.rb', /(#{Regexp.escape(autoload_path_line)})/mi do |match|
    "#{match}\n\tconfig.autoload_paths += %W(\#{config.root}/lib)\n"
  end

  time_zone_line = "config.time_zone = 'Central Time (US & Canada)'"
  gsub_file 'config/application.rb', /(#{Regexp.escape(time_zone_line)})/mi do |match|
    "#{match}\n\tconfig.time_zone = 'Beijing'\n"
  end

  locale_line = 'config.i18n.default_locale = :de'
  gsub_file 'config/application.rb', /(#{Regexp.escape(locale_line)})/mi do |match|
    "#{match}\n\tconfig.i18n.locale = 'zh-CN'\n\tconfig.i18n.default_locale = 'zh-CN'\n"
  end
end

#run_other_generatorsObject



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

def run_other_generators
  generate 'devise:install'
  generate 'devise user'
  generate 'simple_form:install --bootstrap'
  generate 'wice_grid:install'
  generate 'navigation_config'
end