diff options
Diffstat (limited to 'app/helpers')
-rw-r--r-- | app/helpers/twitter_helper.rb | 39 |
1 files changed, 25 insertions, 14 deletions
diff --git a/app/helpers/twitter_helper.rb b/app/helpers/twitter_helper.rb index fd3f82c..0b8f79c 100644 --- a/app/helpers/twitter_helper.rb +++ b/app/helpers/twitter_helper.rb @@ -16,31 +16,42 @@ module TwitterHelper end def twitter_user_info - $twitter_user_info ||= [] + $twitter_user_info ||= [] end - def update_twitter_info - twitter_user_info[0] = Time.now - twitter_user_info[1] = twitter_client.user(twitter_handle).name - twitter_user_info[2] = twitter_client.user_timeline(twitter_handle).select{ |tweet| tweet.text.start_with?('RT','@')==false}.take(3) - end - - def cached_info + def twitter_name if twitter_user_info[0] == nil update_twitter_info else - if Time.now > twitter_user_info[0] + 15.minutes + if Time.now > twitter_user_info[0] + 120.minutes update_twitter_info end end - twitter_user_info + twitter_user_info[1] end - def twitter_name - cached_info[1] + def update_twitter_info + twitter_user_info[0] = Time.now + twitter_user_info[1] = twitter_client.user(twitter_handle).name + end + + def twitter_tweets + $twitter_tweets ||= [] + end + + def twitter_timeline + if twitter_tweets[0] == nil + update_twitter_timeline + else + if Time.now > twitter_tweets[0] + 15.minutes + update_twitter_timeline + end + end + twitter_tweets[1] end - def tweets - cached_info[2] + def update_twitter_timeline + twitter_tweets[0] = Time.now + twitter_tweets[1] = twitter_client.user_timeline(twitter_handle).select{ |tweet| tweet.text.start_with?('RT','@')==false}.take(3) end end |