twitter_concern.rb 913B

    module TwitterConcern extend ActiveSupport::Concern included do self.validate :validate_twitter_options self.after_initialize :configure_twitter end def validate_twitter_options unless options['consumer_key'].present? && options['consumer_secret'].present? && options['oauth_token'].present? && options['oauth_token_secret'].present? errors.add(:base, "consumer_key, consumer_secret, oauth_token and oauth_token_secret are required to authenticate with the Twitter API") end end def configure_twitter Twitter.configure do |config| config.consumer_key = options['consumer_key'] config.consumer_secret = options['consumer_secret'] config.oauth_token = options['oauth_token'] || options['access_key'] config.oauth_token_secret = options['oauth_token_secret'] || options['access_secret'] end end module ClassMethods end end