annotate app/helpers/application_helper.rb @ 204:70e90ea4b870

Fix uri for nil user
author nanaya <me@nanaya.pro>
date Mon, 19 Oct 2020 04:08:30 +0900
parents 52252ae4b580
children 12287b32fbda
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
a1c9fadc0904 Initial.
edogawaconan <me@myconan.net>
parents:
diff changeset
1 module ApplicationHelper
150
950849c40d42 Update all the things, including rails 5.2
nanaya <me@nanaya.pro>
parents: 103
diff changeset
2 include Twitter::TwitterText::Autolink
80
448a368f7344 More useful title?
nanaya <me@myconan.net>
parents: 15
diff changeset
3
94
0c8a8b390145 Now with epic caching
nanaya <me@myconan.net>
parents: 82
diff changeset
4 def atom_id(id)
175
52252ae4b580 Static tag because it's supposed to be the same across rsstweet installs
nanaya <me@nanaya.pro>
parents: 172
diff changeset
5 "tag:rsstweet@nanaya.pro,2014:#{id}"
94
0c8a8b390145 Now with epic caching
nanaya <me@myconan.net>
parents: 82
diff changeset
6 end
98
c5c095f6981e Expand the urls
nanaya <me@myconan.net>
parents: 94
diff changeset
7
103
1251b3d6ec5d Use included url data instead of expanding using embiggen
nanaya <me@myconan.net>
parents: 98
diff changeset
8 def expand_url(text, *urls)
1251b3d6ec5d Use included url data instead of expanding using embiggen
nanaya <me@myconan.net>
parents: 98
diff changeset
9 urls.flatten!
1251b3d6ec5d Use included url data instead of expanding using embiggen
nanaya <me@myconan.net>
parents: 98
diff changeset
10
1251b3d6ec5d Use included url data instead of expanding using embiggen
nanaya <me@myconan.net>
parents: 98
diff changeset
11 urls = urls.reduce({}) do |result, u|
1251b3d6ec5d Use included url data instead of expanding using embiggen
nanaya <me@myconan.net>
parents: 98
diff changeset
12 if u.try(:[], :url)
1251b3d6ec5d Use included url data instead of expanding using embiggen
nanaya <me@myconan.net>
parents: 98
diff changeset
13 result[u[:url]] = u[:expanded_url]
1251b3d6ec5d Use included url data instead of expanding using embiggen
nanaya <me@myconan.net>
parents: 98
diff changeset
14 end
1251b3d6ec5d Use included url data instead of expanding using embiggen
nanaya <me@myconan.net>
parents: 98
diff changeset
15
1251b3d6ec5d Use included url data instead of expanding using embiggen
nanaya <me@myconan.net>
parents: 98
diff changeset
16 result
1251b3d6ec5d Use included url data instead of expanding using embiggen
nanaya <me@myconan.net>
parents: 98
diff changeset
17 end
1251b3d6ec5d Use included url data instead of expanding using embiggen
nanaya <me@myconan.net>
parents: 98
diff changeset
18
98
c5c095f6981e Expand the urls
nanaya <me@myconan.net>
parents: 94
diff changeset
19 text.gsub /https?:\/\/t\.co\/[A-Za-z0-9]+/ do |url|
103
1251b3d6ec5d Use included url data instead of expanding using embiggen
nanaya <me@myconan.net>
parents: 98
diff changeset
20 urls[url] || url
98
c5c095f6981e Expand the urls
nanaya <me@myconan.net>
parents: 94
diff changeset
21 end
c5c095f6981e Expand the urls
nanaya <me@myconan.net>
parents: 94
diff changeset
22 end
204
70e90ea4b870 Fix uri for nil user
nanaya <me@nanaya.pro>
parents: 175
diff changeset
23
70e90ea4b870 Fix uri for nil user
nanaya <me@nanaya.pro>
parents: 175
diff changeset
24 def status_url(tweet)
70e90ea4b870 Fix uri for nil user
nanaya <me@nanaya.pro>
parents: 175
diff changeset
25 "https://twitter.com/#{tweet.user.screen_name.presence || '_'}/status/#{tweet.id}"
70e90ea4b870 Fix uri for nil user
nanaya <me@nanaya.pro>
parents: 175
diff changeset
26 end
0
a1c9fadc0904 Initial.
edogawaconan <me@myconan.net>
parents:
diff changeset
27 end