Sha256: 0fe53c75b352b5923b0132dcf8473c9b1d03f2872c320ea34d37b28dbcf136f1
Contents?: true
Size: 728 Bytes
Versions: 4
Compression:
Stored size: 728 Bytes
Contents
# frozen_string_literal: true module DeviseTokenAuth::Concerns::UserOmniauthCallbacks extend ActiveSupport::Concern included do validates :email, presence: true,if: :email_provider? validates :email, email: true, allow_nil: true, allow_blank: true, if: :email_provider? validates_presence_of :uid, unless: :email_provider? # only validate unique emails among email registration users validates :email, uniqueness: { scope: :provider }, on: :create, if: :email_provider? # keep uid in sync with email before_save :sync_uid before_create :sync_uid end protected def email_provider? provider == 'email' end def sync_uid self.uid = email if provider == 'email' end end
Version data entries
4 entries across 4 versions & 1 rubygems