Skip to content

Commit dc6d267

Browse files
committed
Add hyperlinks in messages
1 parent f6c0a3a commit dc6d267

File tree

4 files changed

+23
-6
lines changed

4 files changed

+23
-6
lines changed

CHANGELOG.md

+2
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,8 @@
33
### Fixes and improvements
44

55
- Improve performance of presentation to load slides faster
6+
- Fix manager layout on small screens
7+
- Add clickable hyperlinks in messages
68

79
### v.2.3.0
810

lib/claper_web/helpers.ex

+17
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
defmodule ClaperWeb.Helpers do
2+
def format_body(body) do
3+
url_regex = ~r/(https?:\/\/[^\s]+)/
4+
5+
body
6+
|> String.split(url_regex, include_captures: true)
7+
|> Enum.map(fn
8+
"http" <> _rest = url ->
9+
Phoenix.HTML.raw(
10+
~s(<a href="#{url}" target="_blank" class="cursor-pointer text-primary-500 hover:underline font-medium">#{url}</a>)
11+
)
12+
13+
text ->
14+
text
15+
end)
16+
end
17+
end

lib/claper_web/live/event_live/manageable_post_component.ex

+1-1
Original file line numberDiff line numberDiff line change
@@ -119,7 +119,7 @@ defmodule ClaperWeb.EventLive.ManageablePostComponent do
119119
<% end %>
120120
121121
<p class="text-xl">
122-
<%= @post.body %>
122+
<%= ClaperWeb.Helpers.format_body(@post.body) %>
123123
</p>
124124
</div>
125125
</div>

lib/claper_web/live/event_live/post_component.ex

+3-5
Original file line numberDiff line numberDiff line change
@@ -76,7 +76,7 @@ defmodule ClaperWeb.EventLive.PostComponent do
7676
) %>
7777
</span>
7878
</div>
79-
<p><%= @post.body %></p>
79+
<p><%= ClaperWeb.Helpers.format_body(@post.body) %></p>
8080
8181
<div class="flex h-6 text-sm float-right text-white space-x-2">
8282
<%= if @post.like_count > 0 do %>
@@ -176,7 +176,7 @@ defmodule ClaperWeb.EventLive.PostComponent do
176176
</div>
177177
<% end %>
178178
179-
<p><%= @post.body %></p>
179+
<p><%= ClaperWeb.Helpers.format_body(@post.body) %></p>
180180
181181
<div class="flex h-6 text-xs float-right space-x-2">
182182
<%= if @reaction_enabled do %>
@@ -273,7 +273,5 @@ defmodule ClaperWeb.EventLive.PostComponent do
273273
end))
274274
end
275275

276-
defp pinned?(post) do
277-
post.pinned == true
278-
end
276+
defp pinned?(post), do: post.pinned
279277
end

0 commit comments

Comments
 (0)