From 460129e5965751127bb6cb363a661afb7c7d5ab4 Mon Sep 17 00:00:00 2001 From: thea Date: Wed, 21 Sep 2016 14:08:38 +0200 Subject: included error-handling: twitter-helper includes rescue and error message for fourth value in array. there will always be an empty array that view (text and each - method) does not break. if empty array in view the error-message is shown. (its WIP) --- app/helpers/twitter_helper.rb | 24 ++++++++++++++++++++++++ app/views/twitter/_index.html.erb | 15 ++++++++------- 2 files changed, 32 insertions(+), 7 deletions(-) (limited to 'app') diff --git a/app/helpers/twitter_helper.rb b/app/helpers/twitter_helper.rb index f824a03..8503f24 100644 --- a/app/helpers/twitter_helper.rb +++ b/app/helpers/twitter_helper.rb @@ -23,6 +23,26 @@ module TwitterHelper 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) + if twitter_user_info[2] == nil + error_handling + twitter_user_info[3] = "The twitter-handle does not exist or the account is private. Please change it or contact your provider-admin." + end + rescue Twitter::Error::BadRequest + error_handling + rescue Twitter::Error::Unauthorized + error_handling + rescue Twitter::Error::Forbidden + error_handling + rescue Twitter::Error::NotAcceptable + error_handling + rescue Twitter::Error::TooManyRequests + error_handling + end + + def error_handling + twitter_user_info[2] = [] + twitter_user_info[3] = "The twitter-handle does not exist or the account is private. Please change it or contact your provider-admin." + return twitter_user_info end def cached_info @@ -43,4 +63,8 @@ module TwitterHelper def tweets cached_info[2] end + + def error_message + cached_info[3] + end end diff --git a/app/views/twitter/_index.html.erb b/app/views/twitter/_index.html.erb index a7ebd1b..8529b83 100644 --- a/app/views/twitter/_index.html.erb +++ b/app/views/twitter/_index.html.erb @@ -9,14 +9,15 @@
- <% tweets.each do |e| %> -
-
<%= " #{e.text}" %> + <%if tweets == [] then%><%= error_message %><% end %> + <% tweets.each do |e| %> +
+
<%= " #{e.text}" %> +
+
tweeted on <% t = e.created_at%> <%= t.strftime("%m/%d/%y").to_s %> +
-
tweeted on <% t = e.created_at%> <%= t.strftime("%m/%d/%y").to_s %> -
-
- <% end %> + <% end %>