Class: SpreeCmCommissioner::Generators::InstallGenerator

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

Instance Method Summary collapse

Instance Method Details

#add_migrationsObject



13
14
15
16
17
# File 'lib/generators/spree_cm_commissioner/install/install_generator.rb', line 13

def add_migrations
  run 'bundle exec rake railties:install:migrations FROM=spree_multi_vendor'
  run 'bundle exec rake railties:install:migrations FROM=spree_cm_commissioner'
  run 'bundle exec rails generate paper_trail:install'
end

#copy_nationalities_dataObject

it copy nationalities.yml to config/data before running the migration



9
10
11
# File 'lib/generators/spree_cm_commissioner/install/install_generator.rb', line 9

def copy_nationalities_data
  template 'config/data/nationalities.yml'
end

#install_adminObject



28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
# File 'lib/generators/spree_cm_commissioner/install/install_generator.rb', line 28

def install_admin
  return unless Spree::Core::Engine.backend_available?

  inject_into_file 'vendor/assets/stylesheets/spree/backend/all.css', "\n *= require spree_cm_commissioner/backend",
                   after: %r{ *= require spree/backend}, verbose: true

  inject_into_file 'vendor/assets/javascripts/spree/backend/all.js', "\n//= require spree_cm_commissioner/backend",
                   after: %r{//= require spree/backend}, verbose: true

  # For NPM support
  if File.exist?(File.join(destination_root, 'app/javascript/spree_dashboard'))
    template 'app/javascript/spree_dashboard/spree_cm_commissioner/utilities.js'
    inject_into_file 'app/javascript/spree_dashboard/spree-dashboard.js', "\nimport \"./spree_cm_commissioner/utilities.js\"",
                     after: %r{import "@spree/dashboard"}, verbose: true
  else
    Logger.new($stdout).debug "      SpreeCmCommissioner: JavaScript files for the dashboard are missing.\n      Please move your JavaScript files to the appropriate location in\n      app/javascript/spree_dashboard.\n    MSG\n  end\nend\n"

#install_telegram_web_botObject



51
52
53
54
# File 'lib/generators/spree_cm_commissioner/install/install_generator.rb', line 51

def install_telegram_web_bot
  template 'vendor/assets/javascript/spree_cm_commissioner/telegram/all.js'
  template 'vendor/assets/stylesheets/spree_cm_commissioner/telegram/all.css'
end

#run_migrationsObject



19
20
21
22
23
24
25
26
# File 'lib/generators/spree_cm_commissioner/install/install_generator.rb', line 19

def run_migrations
  run_migrations = options[:migrate] || ['', 'y', 'Y'].include?(ask('Would you like to run the migrations now? [Y/n]'))
  if run_migrations
    run 'bundle exec rails db:migrate'
  else
    Rails.logger.debug 'Skipping rails db:migrate, don\'t forget to run it!'
  end
end