Sha256: 71e586cfc40074ca08ff6af87448103103cb19dc0d14a6c9165bb79d7ed65f5a
Contents?: true
Size: 906 Bytes
Versions: 2
Compression:
Stored size: 906 Bytes
Contents
module Oauth2Provider class Scope include Mongoid::Document include Mongoid::Timestamps include Document::Base field :name field :uri field :values, type: Array, default: [] attr_accessible :name validates :name, presence: true validates :values, presence: true validates :uri, url: true def normalize(val) separator = Oauth2Provider.settings["scope_separator"] val = val.split(separator) end def values_pretty separator = Oauth2Provider.settings["scope_separator"] values.join(separator) end class << self # Sync all scopes with the correct exploded scope when a # scope is modified (changed or removed) def sync_scopes_with_scope(scope) scopes_to_sync = any_in(scope: [scope]) scopes_to_sync.each do |client| scope.values = Oauth2Provider.normalize_scope(scope.values) scope.save end end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
oauth2_provider_engine-0.0.2 | app/models/oauth2_provider/scope.rb |
oauth2_provider_engine-0.0.1 | app/models/oauth2_provider/scope.rb |