Class: ProxES::Permission
- Inherits:
-
Sequel::Model
- Object
- Sequel::Model
- ProxES::Permission
- Includes:
- Ditty::Base
- Defined in:
- lib/proxes/models/permission.rb
Class Method Summary collapse
Instance Method Summary collapse
Class Method Details
.from_audit_log(audit_log) ⇒ Object
61 62 63 64 65 66 67 68 69 70 71 |
# File 'lib/proxes/models/permission.rb', line 61 def from_audit_log(audit_log) return {} if audit_log.details.nil? match = audit_log.details.match(/^(\w)+ (\S+)/) return {} if match.nil? { verb: match[1], path: match[2] } end |
.verbs ⇒ Object
57 58 59 |
# File 'lib/proxes/models/permission.rb', line 57 def verbs %w[GET POST PUT DELETE HEAD OPTIONS TRACE] end |
Instance Method Details
#index_regex ⇒ Object
41 42 43 |
# File 'lib/proxes/models/permission.rb', line 41 def index_regex regex index end |
#pattern_regex ⇒ Object
37 38 39 |
# File 'lib/proxes/models/permission.rb', line 37 def pattern_regex regex pattern end |
#validate ⇒ Object
29 30 31 32 33 34 35 |
# File 'lib/proxes/models/permission.rb', line 29 def validate super validates_presence %i[verb pattern] validates_presence :role_id unless user_id validates_presence :user_id unless role_id validates_includes self.class.verbs, :verb end |