File tree 6 files changed +45
-50
lines changed
6 files changed +45
-50
lines changed Original file line number Diff line number Diff line change 1
1
< ul class = "relative z-10 flex items-center gap-4 px-4 sm:px-6 lg:px-8 justify-end " >
2
2
<%= if @ current_player do %>
3
3
< li class = "text-[0.8125rem] leading-6 text-white " >
4
- Player: < strong > { @ current_player . username } </ strong >
4
+ Player: < strong > { @ current_player . username } </ strong >
5
5
</ li >
6
6
< li >
7
7
< . link
202
202
< main class = "px-4 py-10 sm:px-6 lg:px-8 text-white " >
203
203
< div class = "mx-auto max-w-6xl " >
204
204
< . flash_group flash = { @ flash } />
205
- { @ inner_content }
205
+ { @ inner_content }
206
206
</ div >
207
207
</ main >
208
208
</ div >
Original file line number Diff line number Diff line change 1
1
defmodule GalaxiesWeb.FacilitiesLive do
2
+ alias GalaxiesWeb.Numbers
2
3
alias GalaxiesWeb.CommonComponents
3
4
use GalaxiesWeb , :live_view
4
5
@@ -122,29 +123,17 @@ defmodule GalaxiesWeb.FacilitiesLive do
122
123
~H"""
123
124
Requirements:
124
125
<%= if @ metal > 0 do %>
125
- Metal: < strong > { format_number ( @ metal ) } </ strong >
126
+ Metal: < strong > { Numbers . format_number ( @ metal ) } </ strong >
126
127
<% end %>
127
128
<%= if @ crystal > 0 do %>
128
- Crystal: < strong > { format_number ( @ crystal ) } </ strong >
129
+ Crystal: < strong > { Numbers . format_number ( @ crystal ) } </ strong >
129
130
<% end %>
130
131
<%= if @ deuterium > 0 do %>
131
- Deuterium: < strong > { format_number ( @ deuterium ) } </ strong >
132
+ Deuterium: < strong > { Numbers . format_number ( @ deuterium ) } </ strong >
132
133
<% end %>
133
134
<%= if @ energy > 0 do %>
134
- Energy: < strong > { format_number ( @ energy ) } </ strong >
135
+ Energy: < strong > { Numbers . format_number ( @ energy ) } </ strong >
135
136
<% end %>
136
137
"""
137
138
end
138
-
139
- defp format_number ( number ) when number < 1000 , do: "#{ number } "
140
-
141
- defp format_number ( number ) do
142
- number
143
- |> Kernel . to_string ( )
144
- |> String . reverse ( )
145
- |> String . split ( "" , trim: true )
146
- |> Enum . chunk_every ( 3 )
147
- |> Enum . join ( "." )
148
- |> String . reverse ( )
149
- end
150
139
end
Original file line number Diff line number Diff line change 1
1
defmodule GalaxiesWeb.ResearchLive do
2
+ alias GalaxiesWeb.Numbers
2
3
use GalaxiesWeb , :live_view
3
4
4
5
alias Galaxies.Accounts
@@ -126,29 +127,17 @@ defmodule GalaxiesWeb.ResearchLive do
126
127
~H"""
127
128
Requirements:
128
129
<%= if @ metal > 0 do %>
129
- Metal: < strong > { format_number ( @ metal ) } </ strong >
130
+ Metal: < strong > { Numbers . format_number ( @ metal ) } </ strong >
130
131
<% end %>
131
132
<%= if @ crystal > 0 do %>
132
- Crystal: < strong > { format_number ( @ crystal ) } </ strong >
133
+ Crystal: < strong > { Numbers . format_number ( @ crystal ) } </ strong >
133
134
<% end %>
134
135
<%= if @ deuterium > 0 do %>
135
- Deuterium: < strong > { format_number ( @ deuterium ) } </ strong >
136
+ Deuterium: < strong > { Numbers . format_number ( @ deuterium ) } </ strong >
136
137
<% end %>
137
138
<%= if @ energy > 0 do %>
138
- Energy: < strong > { format_number ( @ energy ) } </ strong >
139
+ Energy: < strong > { Numbers . format_number ( @ energy ) } </ strong >
139
140
<% end %>
140
141
"""
141
142
end
142
-
143
- defp format_number ( number ) when number < 1000 , do: "#{ number } "
144
-
145
- defp format_number ( number ) do
146
- number
147
- |> Kernel . to_string ( )
148
- |> String . reverse ( )
149
- |> String . split ( "" , trim: true )
150
- |> Enum . chunk_every ( 3 )
151
- |> Enum . join ( "." )
152
- |> String . reverse ( )
153
- end
154
143
end
Original file line number Diff line number Diff line change 1
1
defmodule GalaxiesWeb.ResourcesLive do
2
+ alias GalaxiesWeb.Numbers
2
3
alias GalaxiesWeb.CommonComponents
3
4
use GalaxiesWeb , :live_view
4
5
@@ -122,29 +123,17 @@ defmodule GalaxiesWeb.ResourcesLive do
122
123
~H"""
123
124
Requirements:
124
125
<%= if @ metal > 0 do %>
125
- Metal: < strong > { format_number ( @ metal ) } </ strong >
126
+ Metal: < strong > { Numbers . format_number ( @ metal ) } </ strong >
126
127
<% end %>
127
128
<%= if @ crystal > 0 do %>
128
- Crystal: < strong > { format_number ( @ crystal ) } </ strong >
129
+ Crystal: < strong > { Numbers . format_number ( @ crystal ) } </ strong >
129
130
<% end %>
130
131
<%= if @ deuterium > 0 do %>
131
- Deuterium: < strong > { format_number ( @ deuterium ) } </ strong >
132
+ Deuterium: < strong > { Numbers . format_number ( @ deuterium ) } </ strong >
132
133
<% end %>
133
134
<%= if @ energy > 0 do %>
134
- Energy: < strong > { format_number ( @ energy ) } </ strong >
135
+ Energy: < strong > { Numbers . format_number ( @ energy ) } </ strong >
135
136
<% end %>
136
137
"""
137
138
end
138
-
139
- defp format_number ( number ) when number < 1000 , do: "#{ number } "
140
-
141
- defp format_number ( number ) do
142
- number
143
- |> Kernel . to_string ( )
144
- |> String . reverse ( )
145
- |> String . split ( "" , trim: true )
146
- |> Enum . chunk_every ( 3 )
147
- |> Enum . join ( "." )
148
- |> String . reverse ( )
149
- end
150
139
end
Original file line number Diff line number Diff line change @@ -31,4 +31,19 @@ defmodule GalaxiesWeb.Numbers do
31
31
"#{ seconds } s"
32
32
end
33
33
end
34
+
35
+ @ doc """
36
+ Formats a number by separating thousands with a dot.
37
+ """
38
+ def format_number ( number ) when number < 1000 , do: to_string ( number )
39
+
40
+ def format_number ( number ) do
41
+ number
42
+ |> Kernel . to_string ( )
43
+ |> String . reverse ( )
44
+ |> String . split ( "" , trim: true )
45
+ |> Enum . chunk_every ( 3 )
46
+ |> Enum . join ( "." )
47
+ |> String . reverse ( )
48
+ end
34
49
end
Original file line number Diff line number Diff line change @@ -31,4 +31,17 @@ defmodule GalaxiesWeb.NumbersTest do
31
31
assert GalaxiesWeb.Numbers . format_countdown ( 172_799 ) == "1d 23h 59m 59s"
32
32
end
33
33
end
34
+
35
+ describe "format_number/1" do
36
+ test "when number is less than 1000" do
37
+ assert GalaxiesWeb.Numbers . format_number ( 0 ) == "0"
38
+ assert GalaxiesWeb.Numbers . format_number ( 999 ) == "999"
39
+ end
40
+
41
+ test "when number is greater than 1000" do
42
+ assert GalaxiesWeb.Numbers . format_number ( 1_000 ) == "1.000"
43
+ assert GalaxiesWeb.Numbers . format_number ( 1_000_000 ) == "1.000.000"
44
+ assert GalaxiesWeb.Numbers . format_number ( 1_000_000_000 ) == "1.000.000.000"
45
+ end
46
+ end
34
47
end
You can’t perform that action at this time.
0 commit comments