Sha256: 3e898b31efc94402e1cad0f07bbf06b3abfb05421cb950971d38d3c5c48b3ea5
Contents?: true
Size: 1.48 KB
Versions: 1
Compression:
Stored size: 1.48 KB
Contents
module Doorkeeper module ApplicationMixin extend ActiveSupport::Concern include OAuth::Helpers include Models::Scopes included do has_many :access_grants, dependent: :destroy, class_name: 'Doorkeeper::AccessGrant' has_many :access_tokens, dependent: :destroy, class_name: 'Doorkeeper::AccessToken' validates :name, :secret, :uid, presence: true validates :uid, uniqueness: true validates :redirect_uri, redirect_uri: true before_validation :generate_uid, :generate_secret, on: :create if ::Rails.version.to_i < 4 || defined?(::ProtectedAttributes) attr_accessible :name, :redirect_uri end end module ClassMethods def by_uid_and_secret(uid, secret) where(uid: uid, secret: secret).first end def by_uid(uid) where(uid: uid).first end end alias_method :original_scopes, :scopes def scopes if has_scopes? original_scopes else fail NameError, "Missing column: `applications.scopes`.", <<-MSG.squish If you are using ActiveRecord run `rails generate doorkeeper:application_scopes && rake db:migrate` to add it. MSG end end private def has_scopes? Doorkeeper.configuration.orm != :active_record || Application.new.attributes.include?("scopes") end def generate_uid self.uid ||= UniqueToken.generate end def generate_secret self.secret ||= UniqueToken.generate end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
doorkeeper-2.0.0.rc2 | lib/doorkeeper/models/application_mixin.rb |