Skip to content

Commit 17693aa

Browse files
committed
fix: double initialization of preview user and org
1 parent 738b6cf commit 17693aa

File tree

1 file changed

+13
-17
lines changed

1 file changed

+13
-17
lines changed

lib/algora_web/live/org/preview_nav.ex

Lines changed: 13 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,9 @@ defmodule AlgoraWeb.Org.PreviewNav do
1919
|> assign(:contacts, [])
2020
|> attach_hook(:active_tab, :handle_params, &handle_active_tab_params/3)
2121

22-
if current_context && current_context.last_context == "repo/#{repo_owner}/#{repo_name}" do
22+
# checking if the socket is connected to avoid redirect loop that prevents og image from being fetched
23+
if (current_context && current_context.last_context == "repo/#{repo_owner}/#{repo_name}") ||
24+
not connected?(socket) do
2325
{:cont, socket}
2426
else
2527
preview_user =
@@ -40,25 +42,19 @@ defmodule AlgoraWeb.Org.PreviewNav do
4042
user
4143
end
4244

43-
cond do
44-
is_nil(preview_user) ->
45-
{:cont, put_flash(socket, :error, "Failed to fetch repo")}
45+
if is_nil(preview_user) do
46+
{:cont, put_flash(socket, :error, "Failed to fetch repo")}
47+
else
48+
token = AlgoraWeb.UserAuth.sign_preview_code(preview_user.id)
4649

47-
# this is needed to avoid redirect loop that prevents og image from being fetched
48-
not connected?(socket) ->
49-
{:cont, socket}
50+
return_to =
51+
if params["email"],
52+
do: ~p"/go/#{repo_owner}/#{repo_name}?email=#{params["email"]}",
53+
else: ~p"/go/#{repo_owner}/#{repo_name}"
5054

51-
true ->
52-
token = AlgoraWeb.UserAuth.sign_preview_code(preview_user.id)
55+
preview_path = AlgoraWeb.UserAuth.preview_path(preview_user.id, token, return_to)
5356

54-
return_to =
55-
if params["email"],
56-
do: ~p"/go/#{repo_owner}/#{repo_name}?email=#{params["email"]}",
57-
else: ~p"/go/#{repo_owner}/#{repo_name}"
58-
59-
preview_path = AlgoraWeb.UserAuth.preview_path(preview_user.id, token, return_to)
60-
61-
{:halt, redirect(socket, to: preview_path)}
57+
{:halt, redirect(socket, to: preview_path)}
6258
end
6359
end
6460
end

0 commit comments

Comments
 (0)