Class: UserTimeZones::Generators::InstallGenerator

Inherits:
Rails::Generators::Base
  • Object
show all
Includes:
Rails::Generators::Migration, UserTimeZone::Generators::Helpers
Defined in:
lib/generators/user_time_zones/install/install_generator.rb

Instance Method Summary collapse

Constructor Details

#initializeInstallGenerator

Returns a new instance of InstallGenerator.



25
26
27
28
# File 'lib/generators/user_time_zones/install/install_generator.rb', line 25

def initialize(*)
  super
  assign_names!(model_class_name)
end

Instance Method Details

#copy_migration_filesObject



37
38
39
# File 'lib/generators/user_time_zones/install/install_generator.rb', line 37

def copy_migration_files
  copy_migration 'add_time_zone_to_users.rb'
end

#inject_into_application_controllerObject



47
48
49
50
51
52
53
# File 'lib/generators/user_time_zones/install/install_generator.rb', line 47

def inject_into_application_controller
  inject_into_class(
    'app/controllers/application_controller.rb',
    ApplicationController,
    "  include UserTimeZones::Controller\n"
  )
end

#inject_into_user_modelObject



41
42
43
44
45
# File 'lib/generators/user_time_zones/install/install_generator.rb', line 41

def inject_into_user_model
  if File.exist? model_path
    inject_into_class(model_path, model_class_name, "  include UserTimeZones::User\n")
  end
end

#inject_javascriptObject



55
56
57
58
# File 'lib/generators/user_time_zones/install/install_generator.rb', line 55

def inject_javascript
  append_to_file 'app/assets/javascripts/application.js',
                 "//= require user_time_zones\n"
end

#verifyObject



30
31
32
33
34
35
# File 'lib/generators/user_time_zones/install/install_generator.rb', line 30

def verify
  if options[:model] && !File.exist?(model_path)
    puts "Exiting: the model class you specified, #{options[:model]}, is not found."
    exit 1
  end
end