Class: EffectiveOrders::Generators::InstallGenerator
- Inherits:
-
Rails::Generators::Base
- Object
- Rails::Generators::Base
- EffectiveOrders::Generators::InstallGenerator
- Includes:
- Rails::Generators::Migration
- Defined in:
- lib/generators/effective_orders/install_generator.rb
Class Method Summary collapse
Instance Method Summary collapse
- #copy_initializer ⇒ Object
- #copy_mailer_layout ⇒ Object
- #copy_mailer_preview ⇒ Object
- #copy_mailer_templates ⇒ Object
- #create_migration_file ⇒ Object
- #install_effective_addresses ⇒ Object
Class Method Details
.next_migration_number(dirname) ⇒ Object
10 11 12 13 14 15 16 |
# File 'lib/generators/effective_orders/install_generator.rb', line 10 def self.next_migration_number(dirname) unless ActiveRecord::Base. Time.new.utc.strftime("%Y%m%d%H%M%S") else "%.3d" % (current_migration_number(dirname) + 1) end end |
Instance Method Details
#copy_initializer ⇒ Object
22 23 24 |
# File 'lib/generators/effective_orders/install_generator.rb', line 22 def copy_initializer template ('../' * 3) + 'config/effective_orders.rb', 'config/initializers/effective_orders.rb' end |
#copy_mailer_layout ⇒ Object
26 27 28 29 |
# File 'lib/generators/effective_orders/install_generator.rb', line 26 def copy_mailer_layout layout = 'app/views/layouts/effective_orders_mailer_layout.html.haml' template ('../' * 3) + layout, layout end |
#copy_mailer_preview ⇒ Object
39 40 41 42 43 44 45 46 47 |
# File 'lib/generators/effective_orders/install_generator.rb', line 39 def copy_mailer_preview mailer_preview_path = (Rails.application.config.action_mailer.preview_path rescue nil) if mailer_preview_path.present? template 'effective_orders_mailer_preview.rb', File.join(mailer_preview_path, 'effective_orders_mailer_preview.rb') else puts "couldn't find action_mailer.preview_path. Skipping effective_orders_mailer_preview." end end |
#copy_mailer_templates ⇒ Object
31 32 33 34 35 36 37 |
# File 'lib/generators/effective_orders/install_generator.rb', line 31 def copy_mailer_templates path = 'app/views/effective/orders_mailer/' Dir["#{source_paths.first}/../../../#{path}**"].map { |file| file.split('/').last }.each do |name| template (('../' * 3) + path + name), (path + name) end end |
#create_migration_file ⇒ Object
49 50 51 |
# File 'lib/generators/effective_orders/install_generator.rb', line 49 def create_migration_file migration_template ('../' * 3) + 'db/migrate/101_create_effective_orders.rb', 'db/migrate/create_effective_orders.rb' end |
#install_effective_addresses ⇒ Object
18 19 20 |
# File 'lib/generators/effective_orders/install_generator.rb', line 18 def install_effective_addresses run 'rails generate effective_addresses:install' end |