From 4a09c2df8df3db979049ee8d98b202ad9f2125a8 Mon Sep 17 00:00:00 2001 From: luca-marie Date: Thu, 8 Sep 2016 18:25:41 +0200 Subject: Helper has caching of name and tweets included now \o/ --- app/helpers/twitter_helper.rb | 29 ++++++++++++++++++++++++++--- 1 file changed, 26 insertions(+), 3 deletions(-) (limited to 'app/helpers/twitter_helper.rb') diff --git a/app/helpers/twitter_helper.rb b/app/helpers/twitter_helper.rb index 834e5c6..fd3f82c 100644 --- a/app/helpers/twitter_helper.rb +++ b/app/helpers/twitter_helper.rb @@ -1,6 +1,8 @@ module TwitterHelper def twitter_enabled - Rails.application.secrets.twitter['enabled'] == true + if Rails.application.secrets.twitter + Rails.application.secrets.twitter['enabled'] == true + end end def twitter_client @@ -13,11 +15,32 @@ module TwitterHelper Rails.application.secrets.twitter['twitter_handle'] end + def 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 + if twitter_user_info[0] == nil + update_twitter_info + else + if Time.now > twitter_user_info[0] + 15.minutes + update_twitter_info + end + end + twitter_user_info + end + def twitter_name - twitter_client.user(twitter_handle).name + cached_info[1] end def tweets - twitter_client.user_timeline(twitter_handle).select{ |tweet| tweet.text.start_with?('RT','@')==false}.take(3) + cached_info[2] end end -- cgit v1.2.3 From 2ef8707a7539622007b6d679a7708a5979594ff3 Mon Sep 17 00:00:00 2001 From: luca-marie Date: Tue, 13 Sep 2016 12:20:12 +0200 Subject: Cleaning CSS &view code, updating twitter helper with develop --- app/helpers/twitter_helper.rb | 39 +++++++++++++++++++++++++-------------- 1 file changed, 25 insertions(+), 14 deletions(-) (limited to 'app/helpers/twitter_helper.rb') 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 -- cgit v1.2.3 From 782be39862394c05a069eab9b7dd8f6779354917 Mon Sep 17 00:00:00 2001 From: luca-marie Date: Tue, 13 Sep 2016 17:26:51 +0200 Subject: Change in code for caching --- app/helpers/twitter_helper.rb | 37 +++++++++++++------------------------ 1 file changed, 13 insertions(+), 24 deletions(-) (limited to 'app/helpers/twitter_helper.rb') 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 -- cgit v1.2.3