Class: G5Authenticatable::InstallGenerator

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

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.next_migration_number(dirname) ⇒ Object

Required for Rails::Generators::Migrations



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

def self.next_migration_number(dirname)
  next_migration_number = current_migration_number(dirname) + 1
  ActiveRecord::Migration.next_migration_number(next_migration_number)
end

Instance Method Details

#create_403_error_pageObject



46
47
48
# File 'lib/generators/g5_authenticatable/install/install_generator.rb', line 46

def create_403_error_page
  template '403.html', 'public/403.html'
end

#create_application_policyObject



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

def create_application_policy
  template 'application_policy.rb', 'app/policies/application_policy.rb'
end

#create_initializerObject



19
20
21
# File 'lib/generators/g5_authenticatable/install/install_generator.rb', line 19

def create_initializer
  template 'initializer.rb', 'config/initializers/g5_authenticatable.rb'
end

#create_roles_migrationObject



31
32
33
# File 'lib/generators/g5_authenticatable/install/install_generator.rb', line 31

def create_roles_migration
  copy_migration('create_g5_authenticatable_roles')
end

#create_users_migrationObject



23
24
25
# File 'lib/generators/g5_authenticatable/install/install_generator.rb', line 23

def create_users_migration
  copy_migration('create_g5_authenticatable_users')
end

#include_authorizationObject



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

def include_authorization
  inject_into_file 'app/controllers/application_controller.rb',
    after: "class ApplicationController < ActionController::Base\n" do
    "  include G5Authenticatable::Authorization\n"
  end
end

#mount_engineObject



15
16
17
# File 'lib/generators/g5_authenticatable/install/install_generator.rb', line 15

def mount_engine
  route "mount G5Authenticatable::Engine => '/g5_auth'"
end

#users_contact_info_migrationObject



27
28
29
# File 'lib/generators/g5_authenticatable/install/install_generator.rb', line 27

def users_contact_info_migration
  copy_migration('add_g5_authenticatable_users_contact_info')
end