summaryrefslogtreecommitdiff
path: root/app
diff options
context:
space:
mode:
authorAzul <azul@riseup.net>2016-09-26 09:55:37 +0200
committerAzul <azul@riseup.net>2016-09-26 09:55:37 +0200
commit917cddbeb6e3adaf346a7c5784fa9e6d70462e03 (patch)
tree7665d638e722be4b17bad33bdfb446c89966445d /app
parent4a73c2ca2938ae748588d7ca72a785af99724c92 (diff)
parent69b182b1bf811e1d09c734debf0f71f8412dd6b7 (diff)
Merge remote-tracking branch 'pr/239' into develop
Diffstat (limited to 'app')
-rw-r--r--app/assets/images/Avatar_Pic.png (renamed from app/assets/images/Twitter_Logo_Blue.png)bin4298 -> 4298 bytes
-rw-r--r--app/assets/stylesheets/twitter.scss1
-rw-r--r--app/helpers/twitter_helper.rb36
-rw-r--r--app/views/home/_content.html.haml22
-rw-r--r--app/views/twitter/_index.html.erb19
5 files changed, 61 insertions, 17 deletions
diff --git a/app/assets/images/Twitter_Logo_Blue.png b/app/assets/images/Avatar_Pic.png
index b5eebc8..b5eebc8 100644
--- a/app/assets/images/Twitter_Logo_Blue.png
+++ b/app/assets/images/Avatar_Pic.png
Binary files differ
diff --git a/app/assets/stylesheets/twitter.scss b/app/assets/stylesheets/twitter.scss
index b2233d0..a67c044 100644
--- a/app/assets/stylesheets/twitter.scss
+++ b/app/assets/stylesheets/twitter.scss
@@ -21,6 +21,7 @@
position: absolute;
left: 0;
top: 0;
+ // background-image: url(/Avatar_Pic.png);
}
.twitter_image_frame > img {
diff --git a/app/helpers/twitter_helper.rb b/app/helpers/twitter_helper.rb
index f824a03..f520286 100644
--- a/app/helpers/twitter_helper.rb
+++ b/app/helpers/twitter_helper.rb
@@ -22,7 +22,37 @@ module TwitterHelper
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)
+ twitter_user_info[2] = twitter_client.user_timeline(twitter_handle, {:count => 200}).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's tweets are protected. Please change the privacy settings accordingly or contact your provider-admin."
+ end
+ rescue Twitter::Error::BadRequest
+ error_handling
+ twitter_user_info[3] = "The request for displaying tweets is invalid or cannot be otherwise served."
+ rescue Twitter::Error::Unauthorized
+ error_handling
+ twitter_user_info[3] = "Your bearer-token is invalid or the account's tweets are protected and cannot be displayed. Please change the privacy settings of the corresponding account, check your bearer-token in the secrets-file or contact your provider-admin to have the tweets shown."
+ rescue Twitter::Error::Forbidden
+ error_handling
+ twitter_user_info[3] = "The request for displaying tweets is understood, but it has been refused or access is not allowed."
+ rescue Twitter::Error::NotAcceptable
+ error_handling
+ twitter_user_info[3] = "An invalid format is specified in the request for displaying tweets."
+ rescue Twitter::Error::TooManyRequests
+ error_handling
+ twitter_user_info[3] = "The rate-limit for accessing the tweets is reached. You should be able to display tweets in a couple of minutes."
+ rescue Twitter::Error::NotFound
+ error_handling
+ twitter_user_info[3] = "The twitter hanlde does not exist."
+ rescue Twitter::Error
+ error_handling
+ twitter_user_info[3] = "An error occured while fetching the tweets."
+ end
+
+ def error_handling
+ twitter_user_info[2] = []
+ return twitter_user_info
end
def cached_info
@@ -43,4 +73,8 @@ module TwitterHelper
def tweets
cached_info[2]
end
+
+ def error_message
+ cached_info[3]
+ end
end
diff --git a/app/views/home/_content.html.haml b/app/views/home/_content.html.haml
index 3f4f36e..45afd92 100644
--- a/app/views/home/_content.html.haml
+++ b/app/views/home/_content.html.haml
@@ -1,4 +1,18 @@
-.col-md-8
+- if twitter_enabled == true
+ .col-md-8
+ .row
+ %h1= t(:welcome, :provider => APP_CONFIG[:domain])
+ .p=t(:welcome_message_html)
+
+ .row
+ = home_page_buttons
+
+ .col-md-1
+
+ .col-md-3
+ .row
+ = render 'twitter/index'
+- else
.row
%h1= t(:welcome, :provider => APP_CONFIG[:domain])
.p=t(:welcome_message_html)
@@ -8,12 +22,6 @@
.row
= render 'home/provider_message'
-.col-md-1
-
-.col-md-3
- .row
- = render 'twitter/index'
-
- if Rails.env == 'development'
.row
%hr
diff --git a/app/views/twitter/_index.html.erb b/app/views/twitter/_index.html.erb
index a7ebd1b..cdfff4b 100644
--- a/app/views/twitter/_index.html.erb
+++ b/app/views/twitter/_index.html.erb
@@ -3,20 +3,21 @@
<div class="twitter_header">
<div class="twitter_id">
- <div class="twitter_image_frame"><%= image_tag("Twitter_Logo_Blue.png") %></div>
- <div class="twitter_name"><%= twitter_name%><br><a href="https://twitter.com/loadtocode">@<%= twitter_handle %></a></div>
+ <div class="twitter_image_frame"><%= image_tag("Avatar_Pic.png") %></div>
+ <div class="twitter_name"><%= twitter_name%><br><a href="https://twitter.com/<%= twitter_handle %>">@<%= twitter_handle %></a></div>
</div>
</div>
<div class="twitter_list">
- <% tweets.each do |e| %>
- <div class="tweet">
- <div class="tweet_text"><%= " #{e.text}" %>
+ <%if tweets == [] then%><%= error_message %><% end %>
+ <% tweets.each do |e| %>
+ <div class="tweet">
+ <div class="tweet_text"><%= sanitize(e.text) %>
+ </div>
+ <div class="tweet_text_date">tweeted on <% t = e.created_at%> <%= t.strftime("%m/%d/%y").to_s %>
+ </div>
</div>
- <div class="tweet_text_date">tweeted on <% t = e.created_at%> <%= t.strftime("%m/%d/%y").to_s %>
- </div>
- </div>
- <% end %>
+ <% end %>
</div>
<div class="twitter_footer">