123456789101112131415161718192021222324252627 |
- module WeiboConcern
- extend ActiveSupport::Concern
- included do
- gem_dependency_check { defined?(WeiboOAuth2) }
- self.validate :validate_weibo_options
- end
- def validate_weibo_options
- unless options['app_key'].present? &&
- options['app_secret'].present? &&
- options['access_token'].present?
- errors.add(:base, "app_key, app_secret and access_token are required")
- end
- end
- def weibo_client
- unless @weibo_client
- WeiboOAuth2::Config.api_key = options['app_key'] # WEIBO_APP_KEY
- WeiboOAuth2::Config.api_secret = options['app_secret'] # WEIBO_APP_SECRET
- @weibo_client = WeiboOAuth2::Client.new
- @weibo_client.get_token_from_hash :access_token => options['access_token']
- end
- @weibo_client
- end
- end
|