Mercurial > rsstweet
annotate app/controllers/tweets_controller.rb @ 166:469df6354341
A more robust check
author | nanaya <me@nanaya.pro> |
---|---|
date | Fri, 03 Aug 2018 02:39:09 +0900 |
parents | 5af9b537db86 |
children | af84c9f23263 |
rev | line source |
---|---|
15 | 1 class TweetsController < ApplicationController |
38
9e03bbbb1d43
Move static#index to tweet#index.
edogawaconan <me@myconan.net>
parents:
28
diff
changeset
|
2 def index |
166 | 3 return redirect if params[:id].present? || params[:name].present? |
38
9e03bbbb1d43
Move static#index to tweet#index.
edogawaconan <me@myconan.net>
parents:
28
diff
changeset
|
4 end |
9e03bbbb1d43
Move static#index to tweet#index.
edogawaconan <me@myconan.net>
parents:
28
diff
changeset
|
5 |
15 | 6 def show |
165 | 7 return redirect if params[:id][/D/].present? |
8 | |
9 client = Tweet.new(params[:id].to_i) | |
10 @user = client.user | |
11 | |
12 return redirect if @user.screen_name != params[:name] | |
13 | |
86
5bfc986200db
The caching becomes a bit confusing because of parameters
nanaya <me@myconan.net>
parents:
81
diff
changeset
|
14 @tweets = client.timeline |
25 | 15 rescue Twitter::Error::NotFound |
16 head :not_found | |
17 rescue Twitter::Error::Unauthorized | |
18 head :forbidden | |
15 | 19 end |
55
8f68ca606099
Add twitter id to the url so it'll be consistent.
nanaya <me@myconan.net>
parents:
48
diff
changeset
|
20 |
165 | 21 def redirect |
166 | 22 @user ||= Tweet.new(params[:id].presence || params[:name]).user |
165 | 23 redirect_to tweet_path(@user.id, @user.screen_name) |
55
8f68ca606099
Add twitter id to the url so it'll be consistent.
nanaya <me@myconan.net>
parents:
48
diff
changeset
|
24 rescue Twitter::Error::NotFound |
8f68ca606099
Add twitter id to the url so it'll be consistent.
nanaya <me@myconan.net>
parents:
48
diff
changeset
|
25 head :not_found |
87
b01b5265e6d1
Whoops, forgot to rescue somewhere else
nanaya <me@myconan.net>
parents:
86
diff
changeset
|
26 rescue Twitter::Error::Unauthorized |
b01b5265e6d1
Whoops, forgot to rescue somewhere else
nanaya <me@myconan.net>
parents:
86
diff
changeset
|
27 head :forbidden |
55
8f68ca606099
Add twitter id to the url so it'll be consistent.
nanaya <me@myconan.net>
parents:
48
diff
changeset
|
28 end |
15 | 29 end |