class PermissionGenerator

Public Instance Methods

copy_ability() click to toggle source
# File lib/generators/permission/permission_generator.rb, line 44
def copy_ability
      copy_file "ability_model.rb","app/models/ability.rb"
end
copy_module_action_migration() click to toggle source
# File lib/generators/permission/permission_generator.rb, line 16
def copy_module_action_migration
      if (behavior == :invoke && model_exists?("module_action")) || (behavior == :revoke && role_migration_exists?)
    migration_template "module_action_migration_existing.rb", "db/migrate/add_name_to_module_action.rb", migration_version: migration_version
  else
    migration_template "module_action_migration.rb", "db/migrate/create_module_action.rb", migration_version: migration_version
  end
end
copy_module_action_model() click to toggle source
# File lib/generators/permission/permission_generator.rb, line 32
def copy_module_action_model
  copy_file "module_action_model.rb","app/models/module_action.rb"
end
copy_module_group_migration() click to toggle source
# File lib/generators/permission/permission_generator.rb, line 8
def copy_module_group_migration
      if (behavior == :invoke && model_exists?("module_group")) || (behavior == :revoke && role_migration_exists?)
    migration_template "module_group_migration_existing.rb", "db/migrate/add_name_to_module_group.rb", migration_version: migration_version
  else
    migration_template "module_group_migration.rb", "db/migrate/create_module_group.rb", migration_version: migration_version
  end
end
copy_module_group_model() click to toggle source
# File lib/generators/permission/permission_generator.rb, line 36
def copy_module_group_model
  copy_file "module_group_model.rb","app/models/module_group.rb"
end
copy_module_permission_migration() click to toggle source
# File lib/generators/permission/permission_generator.rb, line 24
def copy_module_permission_migration
      if (behavior == :invoke && model_exists?("module_permission")) || (behavior == :revoke && role_migration_exists?)
    migration_template "module_permission_migration_existing.rb", "db/migrate/add_group_action_to_module_permission.rb", migration_version: migration_version
  else
    migration_template "module_permission_migration.rb", "db/migrate/create_module_permission.rb", migration_version: migration_version
  end
end
copy_module_permission_model() click to toggle source
# File lib/generators/permission/permission_generator.rb, line 40
def copy_module_permission_model
  copy_file "module_permission_model.rb","app/models/module_permission.rb"
end

Private Instance Methods

migration_path() click to toggle source
# File lib/generators/permission/permission_generator.rb, line 61
def migration_path
  @migration_path ||= File.join("db", "migrate")
end
migration_version() click to toggle source
# File lib/generators/permission/permission_generator.rb, line 69
def migration_version
 if rails5?
   "[#{Rails::VERSION::MAJOR}.#{Rails::VERSION::MINOR}]"
 end
end
model_exists?(model_name) click to toggle source
# File lib/generators/permission/permission_generator.rb, line 49
def model_exists?(model_name)
  File.exist?(File.join(destination_root, model_path(model_name)))
end
model_path(model_name) click to toggle source
# File lib/generators/permission/permission_generator.rb, line 65
def model_path(model_name)
  File.join("app", "models", "#{model_name}.rb")
end
module_action_migration_data() click to toggle source
# File lib/generators/permission/permission_generator.rb, line 86
      def module_action_migration_data
<<RUBY
                t.string :name

RUBY
      end
module_group_migration_data() click to toggle source
# File lib/generators/permission/permission_generator.rb, line 79
      def module_group_migration_data
<<RUBY
                t.string :name

RUBY
      end
module_permission_migration_data() click to toggle source
# File lib/generators/permission/permission_generator.rb, line 93
       def module_permission_migration_data
<<RUBY
                        t.belongs_to :module_group
                        t.belongs_to :module_action
                        t.belongs_to :role   
RUBY
       end
rails5?() click to toggle source
# File lib/generators/permission/permission_generator.rb, line 75
def rails5?
  Rails.version.start_with? '5'
end
role_migration_exists?() click to toggle source
# File lib/generators/permission/permission_generator.rb, line 53
def role_migration_exists?
  Dir.glob("#{File.join(destination_root, migration_path)}/[0-9]*_*.rb").grep(/\d+_add_name_to_roles.rb$/).first
end
user_role_migration_exists?() click to toggle source
# File lib/generators/permission/permission_generator.rb, line 57
def user_role_migration_exists?
  Dir.glob("#{File.join(destination_root, migration_path)}/[0-9]*_*.rb").grep(/\d+_add_user_roles_association_to_user_roles.rb$/).first
end