Mercurial > rsstweet
view app/controllers/tweets_controller.rb @ 233:0f0cc55ff11b
Character class, not literal D
author | nanaya <me@nanaya.net> |
---|---|
date | Fri, 14 Jul 2023 01:45:40 +0900 |
parents | f9fd9d9cab97 |
children | 7a773720d81f |
line wrap: on
line source
class TweetsController < ApplicationController def index return redirect if params[:id].present? || params[:name].present? end def show return redirect if params[:id][/\D/].present? client = Tweet.new(params[:id].to_i) @user = client.user return redirect if normalized_screen_name != params[:name] @tweets = client.timeline rescue Twitter::Error::Forbidden head :forbidden rescue Twitter::Error::NotFound head :not_found rescue Twitter::Error::Unauthorized head :forbidden end def redirect @user ||= Tweet.new(params[:id].presence || params[:name]).user redirect_to tweet_path(@user.id, normalized_screen_name) rescue Twitter::Error::Forbidden head :forbidden rescue Twitter::Error::NotFound head :not_found rescue Twitter::Error::Unauthorized head :forbidden end private def normalized_screen_name @user.screen_name.presence || '_' end end