Mercurial > rsstweet
view app/controllers/tweets_controller.rb @ 162:3ff631612493
Simplified id check. Now it's mostly string
author | nanaya <me@nanaya.pro> |
---|---|
date | Fri, 03 Aug 2018 02:03:21 +0900 |
parents | 32c8c150cd80 |
children | 59a4645fd24c |
line wrap: on
line source
class TweetsController < ApplicationController before_action :validate_id, :only => :show def index return try_redirect if params[:id] end def show client = Tweet.new(params[:id]) @tweets = client.timeline @user = client.user rescue Twitter::Error::NotFound head :not_found rescue Twitter::Error::Unauthorized head :forbidden end private def validate_id id = params[:id].split("/")[0] if id.to_i == id params[:id] = id else try_redirect end end def try_redirect user = Tweet.new(params[:id]).user redirect_to tweet_path("#{user.id}/#{user.screen_name}") rescue Twitter::Error::NotFound head :not_found rescue Twitter::Error::Unauthorized head :forbidden end end