blob: 1ebb5a68745fd897bd1926e9e8efc02a7c46a7ce (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
|
class UsersController < ApplicationController
def show
tweet_id = Integer(params[:id])
@item = Tweet.find(tweet_id)
@user = @item.user
helpers = ApplicationController.helpers
@title = "\"#{helpers.strip_tags(helpers.format_tweet_text(@item.text))[0...30]}\" from @#{@item.user.screen_name}"
respond_to do |format|
format.html do
prepare_info
end
format.json do
@trim_user = params[:trim_user] == "true"
end
end
end
def best
user = render_timeline(params) do |tweets, user|
tweets.of(user).reacted.order_by_reactions
end
@title = "@#{user.screen_name}'s Best Tweets"
end
def recent
user = render_timeline(params) do |tweets, user|
tweets.of(user).recent.reacted.order_by_reactions
end
@title = "@#{user.screen_name}'s Recent Best Tweets"
end
def timeline
user = render_timeline(params) do |tweets, user|
if params[:tweets] == "all"
tweets.of(user).order_by_id
else
tweets.of(user).reacted.order_by_id
end
end
@title = "@#{user.screen_name}'s Newest Tweets"
if user.protected
raise Exception # FIXME
end
end
def my
user = render_timeline(params) do |tweets, user|
tweets.discovered(user).order_by_id
end
@title = "@#{user.screen_name}'s Recent Discoveries"
end
private
def render_timeline(params, &g)
page = get_page_number(params)
screen_name = params[:screen_name]
@user = User.where(:screen_name => screen_name).first
unless @user
raise ActiveRecord::RecordNotFound.new(screen_name)
end
@items = g.call(Tweet, @user)
.page(page)
.per(Settings.page_per)
respond_to do |format|
format.html do
prepare_info
end
format.json do
@trim_user = params[:trim_user] == "true"
end
end
return @user
end
end
|