Module: Lockdown

Extended by:
Helper, References
Defined in:
lib/lockdown.rb,
lib/lockdown/rules.rb,
lib/lockdown/errors.rb,
lib/lockdown/helper.rb,
lib/lockdown/system.rb,
lib/lockdown/context.rb,
lib/lockdown/session.rb,
lib/lockdown/database.rb,
lib/lockdown/permission.rb,
lib/lockdown/references.rb,
lib/lockdown/rspec_helper.rb,
lib/lockdown/frameworks/rails.rb,
lib/lockdown/orms/active_record.rb,
lib/lockdown/frameworks/rails/view.rb,
lib/lockdown/frameworks/rails/controller.rb

Defined Under Namespace

Modules: Frameworks, Helper, Orms, References, RspecHelper, Rules, Session Classes: Context, Controller, ControllerContext, Database, InvalidRuleAssignment, InvalidRuleContext, Model, ModelContext, ModelWhereContext, Permission, PermissionScopeCollision, RootContext, System

Constant Summary collapse

VERSION =

current version is 1.3.0

'1.3.1'

Class Method Summary collapse

Methods included from References

helper, rules, session, system

Methods included from Helper

administrator_group_string, administrator_group_symbol, camelize, class_name_from_file, convert_reference_name, get_string, get_symbol, random_string, user_class, user_group_class, user_group_id_reference, user_group_model_string, user_groups_hbtm_reference, user_id_reference, user_model_string, users_hbtm_reference

Class Method Details

.major_versionObject



27
28
29
# File 'lib/lockdown.rb', line 27

def self.major_version
  version.split('.')[0].to_i
end

.minor_versionObject



31
32
33
# File 'lib/lockdown.rb', line 31

def self.minor_version
  version.split('.')[1].to_i
end

.mixinObject

Mixin Lockdown code to the appropriate framework and ORM



40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
# File 'lib/lockdown.rb', line 40

def self.mixin
  if mixin_resource?("frameworks")
    unless mixin_resource?("orms")
      raise NotImplementedError, "ORM unknown to Lockdown!"
    end

    if File.exists?(Lockdown.init_file)
      puts "=> Requiring Lockdown rules engine: #{Lockdown.init_file} \n"
      require Lockdown.init_file
    else
      puts "=> Note:: Lockdown couldn't find init file: #{Lockdown.init_file}\n"
    end
  else
    puts "=> Note:: Lockdown cannot determine framework and therefore is not active.\n"
  end
end

.patch_versionObject



35
36
37
# File 'lib/lockdown.rb', line 35

def self.patch_version
  version.split('.')[2].to_i
end

.versionObject

Returns the version string for the library.



23
24
25
# File 'lib/lockdown.rb', line 23

def self.version
  VERSION
end