Class: Clearance::Generators::InstallGenerator

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

Instance Method Summary collapse

Instance Method Details

#create_clearance_initializerObject



10
11
12
# File 'lib/generators/clearance/install/install_generator.rb', line 10

def create_clearance_initializer
  copy_file 'clearance.rb', 'config/initializers/clearance.rb'
end

#create_clearance_migrationObject



34
35
36
37
38
39
40
# File 'lib/generators/clearance/install/install_generator.rb', line 34

def create_clearance_migration
  if users_table_exists?
    create_add_columns_migration
  else
    copy_migration 'create_users.rb'
  end
end

#create_or_inject_clearance_into_user_modelObject



22
23
24
25
26
27
28
29
30
31
32
# File 'lib/generators/clearance/install/install_generator.rb', line 22

def create_or_inject_clearance_into_user_model
  if File.exists? 'app/models/user.rb'
    inject_into_file(
      'app/models/user.rb',
      "include Clearance::User\n\n",
      after: "class User < ActiveRecord::Base\n"
    )
  else
    copy_file 'user.rb', 'app/models/user.rb'
  end
end

#display_readme_in_terminalObject



42
43
44
# File 'lib/generators/clearance/install/install_generator.rb', line 42

def display_readme_in_terminal
  readme 'README'
end

#inject_clearance_into_application_controllerObject



14
15
16
17
18
19
20
# File 'lib/generators/clearance/install/install_generator.rb', line 14

def inject_clearance_into_application_controller
  inject_into(
    ApplicationController,
    'app/controllers/application_controller.rb',
    'include Clearance::Controller'
  )
end