mirror of
https://github.com/discourse/discourse.git
synced 2024-11-22 09:42:02 +08:00
DEV: Clean up twitter onebox code (#18012)
This commit is contained in:
parent
4e3c688d65
commit
49fa2e93c2
|
@ -461,7 +461,7 @@ module Oneboxer
|
|||
preview_result = Onebox.preview(uri.to_s, onebox_options)
|
||||
result = {
|
||||
onebox: WordWatcher.censor(preview_result.to_s),
|
||||
preview: WordWatcher.censor(preview_result&.placeholder_html.to_s)
|
||||
preview: WordWatcher.censor(preview_result.placeholder_html.to_s)
|
||||
}
|
||||
|
||||
# NOTE: Call preview_result.errors after calling placeholder_html
|
||||
|
|
|
@ -2,10 +2,11 @@
|
|||
|
||||
# lightweight Twitter api calls
|
||||
class TwitterApi
|
||||
|
||||
class << self
|
||||
include ActionView::Helpers::NumberHelper
|
||||
|
||||
BASE_URL = 'https://api.twitter.com'
|
||||
|
||||
def prettify_tweet(tweet)
|
||||
text = tweet["full_text"].dup
|
||||
if (entities = tweet["entities"]) && (urls = entities["urls"])
|
||||
|
@ -74,20 +75,11 @@ class TwitterApi
|
|||
number_to_human(count, format: '%n%u', precision: 2, units: { thousand: 'K', million: 'M', billion: 'B' })
|
||||
end
|
||||
|
||||
def user_timeline(screen_name)
|
||||
JSON.parse(twitter_get(user_timeline_uri_for screen_name))
|
||||
end
|
||||
|
||||
def tweet_for(id)
|
||||
JSON.parse(twitter_get(tweet_uri_for id))
|
||||
JSON.parse(twitter_get(tweet_uri_for(id)))
|
||||
end
|
||||
|
||||
alias_method :status, :tweet_for
|
||||
|
||||
def raw_tweet_for(id)
|
||||
twitter_get(tweet_uri_for id)
|
||||
end
|
||||
|
||||
def twitter_credentials_missing?
|
||||
consumer_key.blank? || consumer_secret.blank?
|
||||
end
|
||||
|
@ -110,18 +102,10 @@ class TwitterApi
|
|||
end.strip
|
||||
end
|
||||
|
||||
def user_timeline_uri_for(screen_name)
|
||||
URI.parse "#{BASE_URL}/1.1/statuses/user_timeline.json?screen_name=#{screen_name}&count=50&include_rts=false&exclude_replies=true"
|
||||
end
|
||||
|
||||
def tweet_uri_for(id)
|
||||
URI.parse "#{BASE_URL}/1.1/statuses/show.json?id=#{id}&tweet_mode=extended"
|
||||
end
|
||||
|
||||
unless defined? BASE_URL
|
||||
BASE_URL = 'https://api.twitter.com'
|
||||
end
|
||||
|
||||
def twitter_get(uri)
|
||||
request = Net::HTTP::Get.new(uri)
|
||||
request.add_field 'Authorization', "Bearer #{bearer_token}"
|
||||
|
@ -172,6 +156,5 @@ class TwitterApi
|
|||
def consumer_secret
|
||||
SiteSetting.twitter_consumer_secret
|
||||
end
|
||||
|
||||
end
|
||||
end
|
||||
|
|
Loading…
Reference in New Issue
Block a user