external_person.rb
550 Bytes
require_dependency 'external_person'
class ExternalPerson
has_one :oauth_auth, foreign_key: :external_person_id, class_name: 'OauthClientPlugin::Auth', dependent: :destroy
has_one :oauth_provider, through: :oauth_auth, source: :provider
def avatar
self.oauth_auth.image_url
end
def image
ExternalPerson::Image.new(oauth_auth)
end
class ExternalPerson::Image
def initialize(oauth_auth)
@oauth_auth = oauth_auth
end
def public_filename(size = nil)
URI(@oauth_auth.image_url(size))
end
end
end