Skip to content

Commit 5143bd5

Browse files
authored
Hotfix: explorer missing vars throw 500 (#1676)
1 parent 5775e56 commit 5143bd5

3 files changed

Lines changed: 37 additions & 32 deletions

File tree

explorer/lib/explorer_web/live/numbers.ex

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
defmodule Numbers do
2-
def format_number(number) when is_nil(number) do
2+
def format_number(number) when is_nil(number) or number == :empty do
33
nil
44
end
55

explorer/lib/explorer_web/live/pages/home/index.ex

Lines changed: 25 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,18 @@ defmodule ExplorerWeb.Home.Index do
22
require Logger
33
use ExplorerWeb, :live_view
44

5+
defp set_empty_values(socket) do
6+
Logger.info("Setting empty values")
7+
socket |> assign(
8+
verified_batches: :empty,
9+
operators_registered: :empty,
10+
latest_batches: :empty,
11+
verified_proofs: :empty,
12+
restaked_amount_eth: :empty,
13+
restaked_amount_usd: :empty
14+
)
15+
end
16+
517
@impl true
618
def handle_info(_, socket) do
719
verified_batches = Batches.get_amount_of_verified_batches()
@@ -62,44 +74,41 @@ defmodule ExplorerWeb.Home.Index do
6274
)}
6375
rescue
6476
e in Mint.TransportError ->
77+
Logger.error("Error: Mint.TransportError: #{inspect(e)}")
6578
case e do
6679
%Mint.TransportError{reason: :econnrefused} ->
6780
{
6881
:ok,
69-
assign(socket,
70-
verified_batches: :empty,
71-
operators_registered: :empty,
72-
latest_batches: :empty,
73-
verified_proofs: :empty
74-
)
82+
set_empty_values(socket)
7583
|> put_flash(:error, "Could not connect to the backend, please try again later.")
7684
}
7785

7886
_ ->
79-
"Other transport error: #{inspect(e)}" |> Logger.error()
80-
{:ok, socket |> put_flash(:error, "Something went wrong, please try again later.")}
87+
{
88+
:ok,
89+
set_empty_values(socket)
90+
|> put_flash(:error, "Something went wrong, please try again later.")}
8191
end
8292

8393
e in FunctionClauseError ->
94+
Logger.error("Error: FunctionClauseError: #{inspect(e)}")
8495
case e do
8596
%FunctionClauseError{
8697
module: ExplorerWeb.Home.Index
8798
} ->
8899
{
89100
:ok,
90-
assign(socket,
91-
verified_batches: :empty,
92-
operators_registered: :empty,
93-
latest_batches: :empty,
94-
verified_proofs: :empty
95-
)
101+
set_empty_values(socket)
96102
|> put_flash(:error, "Something went wrong with the RPC, please try again later.")
97103
}
98104
end
99105

100106
e ->
101-
Logger.error("Other error: #{inspect(e)}")
102-
{:ok, socket |> put_flash(:error, "Something went wrong, please try again later.")}
107+
Logger.error("Error: other error: #{inspect(e)}")
108+
{
109+
:ok,
110+
set_empty_values(socket)
111+
|> put_flash(:error, "Something went wrong, please try again later.")}
103112
end
104113

105114
embed_templates("*")

explorer/lib/explorer_web/live/pages/home/index.html.heex

Lines changed: 11 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -10,33 +10,29 @@
1010
>
1111
<%= if @operators_registered != :empty do %>
1212
<%= @operators_registered %>
13-
<% else %>
14-
0
1513
<% end %>
1614
</.card_link>
1715
<.card_link
18-
icon="hero-arrow-right-solid"
19-
navigate={~p"/restake"}
20-
title="Total Restaked"
21-
subtitle={"(#{@restaked_amount_eth |> Helpers.format_number()} ETH)"}>
22-
<%= if @restaked_amount_eth != :nil do %>
23-
<%= @restaked_amount_usd |> Helpers.format_number() %> USD
24-
<% else %>
25-
0
26-
<% end %>
16+
icon="hero-arrow-right-solid"
17+
navigate={~p"/restake"}
18+
title="Total Restaked"
19+
subtitle={
20+
if @restaked_amount_eth |> Helpers.format_number() != nil do
21+
"(#{@restaked_amount_eth |> Helpers.format_number()} ETH)"
22+
end
23+
}>
24+
<%= if @restaked_amount_usd |> Helpers.format_number() != nil do %>
25+
<%= @restaked_amount_usd |> Helpers.format_number() %> USD
26+
<% end %>
2727
</.card_link>
2828
<.card title="verified batches">
2929
<%= if @verified_batches != :empty do %>
3030
<%= @verified_batches |> Helpers.format_number() %>
31-
<% else %>
32-
0
3331
<% end %>
3432
</.card>
3533
<.card title="Verified Proofs" class="-mt-0.5 md:mt-0">
3634
<%= if @verified_proofs != :empty do %>
3735
<%= @verified_proofs |> Helpers.format_number() %>
38-
<% else %>
39-
0
4036
<% end %>
4137
</.card>
4238
<.live_component module={ContractsComponent} id="contracts_card" class="sm:col-span-2" />

0 commit comments

Comments
 (0)