diff options
Diffstat (limited to 'app')
-rw-r--r-- | app/helpers/twitter_helper.rb | 37 | ||||
-rw-r--r-- | app/views/twitter/_index.html.erb | 2 |
2 files changed, 14 insertions, 25 deletions
diff --git a/app/helpers/twitter_helper.rb b/app/helpers/twitter_helper.rb index 0b8f79c..f824a03 100644 --- a/app/helpers/twitter_helper.rb +++ b/app/helpers/twitter_helper.rb @@ -19,39 +19,28 @@ module TwitterHelper $twitter_user_info ||= [] end - def twitter_name - if twitter_user_info[0] == nil - update_twitter_info - else - if Time.now > twitter_user_info[0] + 120.minutes - update_twitter_info - end - end - twitter_user_info[1] - 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 twitter_tweets - $twitter_tweets ||= [] - end - - def twitter_timeline - if twitter_tweets[0] == nil - update_twitter_timeline + def cached_info + if twitter_user_info[0] == nil + update_twitter_info else - if Time.now > twitter_tweets[0] + 15.minutes - update_twitter_timeline + if Time.now > twitter_user_info[0] + 15.minutes + update_twitter_info end end - twitter_tweets[1] + twitter_user_info + end + + def twitter_name + cached_info[1] end - 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) + def tweets + cached_info[2] end end diff --git a/app/views/twitter/_index.html.erb b/app/views/twitter/_index.html.erb index e31117e..a7ebd1b 100644 --- a/app/views/twitter/_index.html.erb +++ b/app/views/twitter/_index.html.erb @@ -9,7 +9,7 @@ </div> <div class="twitter_list"> - <% twitter_timeline.each do |e| %> + <% tweets.each do |e| %> <div class="tweet"> <div class="tweet_text"><%= " #{e.text}" %> </div> |