class G5Authenticatable::InstallGenerator

Public Class Methods

next_migration_number(dirname) click to toggle source

Required for Rails::Generators::Migrations

# 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

Public Instance Methods

create_403_error_page() click to toggle source
# 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_policy() click to toggle source
# 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_initializer() click to toggle source
# 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_migration() click to toggle source
# File lib/generators/g5_authenticatable/install/install_generator.rb, line 31
def create_roles_migration
  copy_migration('create_g5_authenticatable_roles')
end
create_users_migration() click to toggle source
# File lib/generators/g5_authenticatable/install/install_generator.rb, line 23
def create_users_migration
  copy_migration('create_g5_authenticatable_users')
end
include_authorization() click to toggle source
# 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_engine() click to toggle source
# File lib/generators/g5_authenticatable/install/install_generator.rb, line 15
def mount_engine
  route "mount G5Authenticatable::Engine => '/g5_auth'"
end
users_contact_info_migration() click to toggle source
# 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

Private Instance Methods

copy_migration(name) click to toggle source
# File lib/generators/g5_authenticatable/install/install_generator.rb, line 52
def copy_migration(name)
  migration_template("migrate/#{name}.rb",
                     "db/migrate/#{name}.rb",
                     migration_version: migration_version)
end
migration_version() click to toggle source
# File lib/generators/g5_authenticatable/install/install_generator.rb, line 58
def migration_version
  return unless Rails.version.starts_with?('5')
  "[#{Rails::VERSION::MAJOR}.#{Rails::VERSION::MINOR}]"
end