evernote_concern.rb 1.1KB

    module EvernoteConcern extend ActiveSupport::Concern included do include Oauthable validate :validate_evernote_options valid_oauth_providers :evernote gem_dependency_check { defined?(EvernoteOAuth) && Devise.omniauth_providers.include?(:evernote) } end def evernote_client EvernoteOAuth::Client.new( token: evernote_oauth_token, consumer_key: evernote_consumer_key, consumer_secret: evernote_consumer_secret, sandbox: use_sandbox? ) end private def use_sandbox? ENV["USE_EVERNOTE_SANDBOX"] == "true" end def validate_evernote_options unless evernote_consumer_key.present? && evernote_consumer_secret.present? && evernote_oauth_token.present? errors.add(:base, "Evernote ENV variables and a Service are required") end end def evernote_consumer_key (config = Devise.omniauth_configs[:evernote]) && config.strategy.consumer_key end def evernote_consumer_secret (config = Devise.omniauth_configs[:evernote]) && config.strategy.consumer_secret end def evernote_oauth_token service && service.token end end