diff --git a/lib/cannery_web/live/ammo_type_live/index.ex b/lib/cannery_web/live/ammo_type_live/index.ex
index 84bc9c06..c88f3a6e 100644
--- a/lib/cannery_web/live/ammo_type_live/index.ex
+++ b/lib/cannery_web/live/ammo_type_live/index.ex
@@ -10,7 +10,7 @@ defmodule CanneryWeb.AmmoTypeLive.Index do
@impl true
def mount(_params, _session, socket) do
- {:ok, socket |> list_ammo_types()}
+ {:ok, socket |> assign(:show_used, false) |> list_ammo_types()}
end
@impl true
@@ -49,7 +49,12 @@ defmodule CanneryWeb.AmmoTypeLive.Index do
{:noreply, socket |> put_flash(:info, prompt) |> list_ammo_types()}
end
- defp list_ammo_types(%{assigns: %{current_user: current_user}} = socket) do
+ @impl true
+ def handle_event("toggle_show_used", _params, %{assigns: %{show_used: show_used}} = socket) do
+ {:noreply, socket |> assign(:show_used, !show_used) |> list_ammo_types()}
+ end
+
+ defp list_ammo_types(%{assigns: %{current_user: current_user, show_used: show_used}} = socket) do
ammo_types = Ammo.list_ammo_types(current_user)
columns =
@@ -89,8 +94,46 @@ defmodule CanneryWeb.AmmoTypeLive.Index do
end)
end)
|> Kernel.++([
- %{label: gettext("Total # of rounds"), key: :round_count, type: :round_count},
- %{label: gettext("Total # of ammo"), key: :ammo_count, type: :ammo_count},
+ %{label: gettext("Total # of rounds"), key: :round_count, type: :round_count}
+ ])
+ |> Kernel.++(
+ if show_used do
+ [
+ %{
+ label: gettext("Used Total # of rounds"),
+ key: :used_round_count,
+ type: :used_round_count
+ },
+ %{
+ label: gettext("Historical Total # of rounds"),
+ key: :historical_round_count,
+ type: :historical_round_count
+ }
+ ]
+ else
+ []
+ end
+ )
+ |> Kernel.++([%{label: gettext("Total # of ammo"), key: :ammo_count, type: :ammo_count}])
+ |> Kernel.++(
+ if show_used do
+ [
+ %{
+ label: gettext("Used Total # of ammo"),
+ key: :used_ammo_count,
+ type: :used_ammo_count
+ },
+ %{
+ label: gettext("Historical Total # of ammo"),
+ key: :historical_ammo_count,
+ type: :historical_ammo_count
+ }
+ ]
+ else
+ []
+ end
+ )
+ |> Kernel.++([
%{label: gettext("Average Price paid"), key: :avg_price_paid, type: :avg_price_paid},
%{label: nil, key: "actions", type: :actions, sortable: false}
])
@@ -115,6 +158,18 @@ defmodule CanneryWeb.AmmoTypeLive.Index do
defp get_ammo_type_value(:round_count, _key, ammo_type, current_user),
do: ammo_type |> Ammo.get_round_count_for_ammo_type(current_user)
+ defp get_ammo_type_value(:historical_round_count, _key, ammo_type, current_user),
+ do: ammo_type |> Ammo.get_historical_count_for_ammo_type(current_user)
+
+ defp get_ammo_type_value(:used_round_count, _key, ammo_type, current_user),
+ do: ammo_type |> Ammo.get_used_count_for_ammo_type(current_user)
+
+ defp get_ammo_type_value(:historical_ammo_count, _key, ammo_type, current_user),
+ do: ammo_type |> Ammo.get_ammo_groups_count_for_type(current_user, true)
+
+ defp get_ammo_type_value(:used_ammo_count, _key, ammo_type, current_user),
+ do: ammo_type |> Ammo.get_used_ammo_groups_count_for_type(current_user)
+
defp get_ammo_type_value(:ammo_count, _key, ammo_type, current_user),
do: ammo_type |> Ammo.get_ammo_groups_count_for_type(current_user)
diff --git a/lib/cannery_web/live/ammo_type_live/index.html.heex b/lib/cannery_web/live/ammo_type_live/index.html.heex
index f2019267..3eee3849 100644
--- a/lib/cannery_web/live/ammo_type_live/index.html.heex
+++ b/lib/cannery_web/live/ammo_type_live/index.html.heex
@@ -17,6 +17,14 @@
<%= dgettext("actions", "New Ammo type") %>
+
+ <.toggle_button action="toggle_show_used" value={@show_used}>
+
+ <%= gettext("Show used") %>
+
+
+
+
<.live_component
module={CanneryWeb.Components.TableComponent}
id="ammo_types_index_table"
diff --git a/priv/gettext/de/LC_MESSAGES/default.po b/priv/gettext/de/LC_MESSAGES/default.po
index 092be986..fe38fc67 100644
--- a/priv/gettext/de/LC_MESSAGES/default.po
+++ b/priv/gettext/de/LC_MESSAGES/default.po
@@ -58,7 +58,7 @@ msgstr "Munition"
msgid "Ammo type"
msgstr "Munitionsarten"
-#: lib/cannery_web/live/ammo_type_live/index.ex:94
+#: lib/cannery_web/live/ammo_type_live/index.ex:137
#: lib/cannery_web/live/ammo_type_live/show.html.heex:106
#, elixir-autogen, elixir-format
msgid "Average Price paid"
@@ -70,7 +70,7 @@ msgid "Background color"
msgstr "Hintergrundfarbe"
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:140
-#: lib/cannery_web/live/ammo_type_live/index.ex:77
+#: lib/cannery_web/live/ammo_type_live/index.ex:82
#: lib/cannery_web/live/ammo_type_live/show.html.heex:59
#, elixir-autogen, elixir-format
msgid "Blank"
@@ -82,35 +82,35 @@ msgid "Brass"
msgstr "Messing"
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:44
-#: lib/cannery_web/live/ammo_type_live/index.ex:59
+#: lib/cannery_web/live/ammo_type_live/index.ex:64
#: lib/cannery_web/live/ammo_type_live/show.html.heex:45
#, elixir-autogen, elixir-format
msgid "Bullet core"
msgstr "Projektilkern"
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:37
-#: lib/cannery_web/live/ammo_type_live/index.ex:58
+#: lib/cannery_web/live/ammo_type_live/index.ex:63
#: lib/cannery_web/live/ammo_type_live/show.html.heex:44
#, elixir-autogen, elixir-format
msgid "Bullet type"
msgstr "Patronenart"
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:58
-#: lib/cannery_web/live/ammo_type_live/index.ex:61
+#: lib/cannery_web/live/ammo_type_live/index.ex:66
#: lib/cannery_web/live/ammo_type_live/show.html.heex:47
#, elixir-autogen, elixir-format
msgid "Caliber"
msgstr "Kaliber"
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:51
-#: lib/cannery_web/live/ammo_type_live/index.ex:60
+#: lib/cannery_web/live/ammo_type_live/index.ex:65
#: lib/cannery_web/live/ammo_type_live/show.html.heex:46
#, elixir-autogen, elixir-format
msgid "Cartridge"
msgstr "Patrone"
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:65
-#: lib/cannery_web/live/ammo_type_live/index.ex:62
+#: lib/cannery_web/live/ammo_type_live/index.ex:67
#: lib/cannery_web/live/ammo_type_live/show.html.heex:48
#, elixir-autogen, elixir-format
msgid "Case material"
@@ -132,7 +132,7 @@ msgid "Containers"
msgstr "Behälter"
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:144
-#: lib/cannery_web/live/ammo_type_live/index.ex:78
+#: lib/cannery_web/live/ammo_type_live/index.ex:83
#: lib/cannery_web/live/ammo_type_live/show.html.heex:60
#, elixir-autogen, elixir-format
msgid "Corrosive"
@@ -200,14 +200,14 @@ msgid "FMJ"
msgstr "VM"
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:103
-#: lib/cannery_web/live/ammo_type_live/index.ex:71
+#: lib/cannery_web/live/ammo_type_live/index.ex:76
#: lib/cannery_web/live/ammo_type_live/show.html.heex:53
#, elixir-autogen, elixir-format
msgid "Grains"
msgstr "Körner"
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:136
-#: lib/cannery_web/live/ammo_type_live/index.ex:76
+#: lib/cannery_web/live/ammo_type_live/index.ex:81
#: lib/cannery_web/live/ammo_type_live/show.html.heex:58
#, elixir-autogen, elixir-format
msgid "Incendiary"
@@ -259,7 +259,7 @@ msgid "Magazine, Clip, Ammo Box, etc"
msgstr "Magazin, Ladestreifen, Munitionskiste usw."
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:148
-#: lib/cannery_web/live/ammo_type_live/index.ex:79
+#: lib/cannery_web/live/ammo_type_live/index.ex:84
#: lib/cannery_web/live/ammo_type_live/show.html.heex:61
#, elixir-autogen, elixir-format
msgid "Manufacturer"
@@ -276,7 +276,7 @@ msgid "My cool ammo can"
msgstr "Meine coole Munitionskiste"
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:20
-#: lib/cannery_web/live/ammo_type_live/index.ex:57
+#: lib/cannery_web/live/ammo_type_live/index.ex:62
#: lib/cannery_web/live/container_live/form_component.html.heex:20
#: lib/cannery_web/live/container_live/index.ex:121
#: lib/cannery_web/live/invite_live/form_component.html.heex:20
@@ -359,7 +359,7 @@ msgid "On the bookshelf"
msgstr "Auf dem Bücherregal"
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:111
-#: lib/cannery_web/live/ammo_type_live/index.ex:72
+#: lib/cannery_web/live/ammo_type_live/index.ex:77
#: lib/cannery_web/live/ammo_type_live/show.html.heex:54
#, elixir-autogen, elixir-format
msgid "Pressure"
@@ -377,7 +377,7 @@ msgid "Price paid:"
msgstr "Kaufpreis:"
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:118
-#: lib/cannery_web/live/ammo_type_live/index.ex:73
+#: lib/cannery_web/live/ammo_type_live/index.ex:78
#: lib/cannery_web/live/ammo_type_live/show.html.heex:55
#, elixir-autogen, elixir-format
msgid "Primer type"
@@ -450,7 +450,7 @@ msgid "The self-hosted firearm tracker website"
msgstr "Die selbst-gehostete Website zur Verwaltung von Schusswaffen"
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:132
-#: lib/cannery_web/live/ammo_type_live/index.ex:75
+#: lib/cannery_web/live/ammo_type_live/index.ex:80
#: lib/cannery_web/live/ammo_type_live/show.html.heex:57
#, elixir-autogen, elixir-format
msgid "Tracer"
@@ -599,7 +599,7 @@ msgstr "Schießkladde"
#: lib/cannery_web/live/ammo_group_live/index.ex:151
#: lib/cannery_web/live/ammo_group_live/show.html.heex:37
#: lib/cannery_web/live/ammo_group_live/show.html.heex:44
-#: lib/cannery_web/live/ammo_type_live/index.ex:124
+#: lib/cannery_web/live/ammo_type_live/index.ex:179
#: lib/cannery_web/live/ammo_type_live/show.html.heex:110
#, elixir-autogen, elixir-format
msgid "$%{amount}"
@@ -611,35 +611,35 @@ msgid "Bimetal"
msgstr "Bimetall"
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:72
-#: lib/cannery_web/live/ammo_type_live/index.ex:63
+#: lib/cannery_web/live/ammo_type_live/index.ex:68
#: lib/cannery_web/live/ammo_type_live/show.html.heex:49
#, elixir-autogen, elixir-format
msgid "Jacket type"
msgstr "Patronenhülse"
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:79
-#: lib/cannery_web/live/ammo_type_live/index.ex:64
+#: lib/cannery_web/live/ammo_type_live/index.ex:69
#: lib/cannery_web/live/ammo_type_live/show.html.heex:50
#, elixir-autogen, elixir-format
msgid "Muzzle velocity"
msgstr "Mündungsgeschwindigkeit"
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:93
-#: lib/cannery_web/live/ammo_type_live/index.ex:67
+#: lib/cannery_web/live/ammo_type_live/index.ex:72
#: lib/cannery_web/live/ammo_type_live/show.html.heex:52
#, elixir-autogen, elixir-format
msgid "Powder grains per charge"
msgstr "Pulverkörner pro Ladung"
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:89
-#: lib/cannery_web/live/ammo_type_live/index.ex:65
+#: lib/cannery_web/live/ammo_type_live/index.ex:70
#: lib/cannery_web/live/ammo_type_live/show.html.heex:51
#, elixir-autogen, elixir-format
msgid "Powder type"
msgstr "Pulverart"
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:152
-#: lib/cannery_web/live/ammo_type_live/index.ex:80
+#: lib/cannery_web/live/ammo_type_live/index.ex:85
#: lib/cannery_web/live/ammo_type_live/show.html.heex:62
#, elixir-autogen, elixir-format
msgid "UPC"
@@ -672,7 +672,7 @@ msgid "Unstage"
msgstr "Demarkiert"
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:125
-#: lib/cannery_web/live/ammo_type_live/index.ex:74
+#: lib/cannery_web/live/ammo_type_live/index.ex:79
#: lib/cannery_web/live/ammo_type_live/show.html.heex:56
#, elixir-autogen, elixir-format
msgid "Firing type"
@@ -711,7 +711,7 @@ msgstr "Patronen:"
msgid "Show %{name}"
msgstr "Zeige %{name}"
-#: lib/cannery_web/live/ammo_type_live/index.ex:123
+#: lib/cannery_web/live/ammo_type_live/index.ex:178
#: lib/cannery_web/live/ammo_type_live/show.html.heex:116
#, elixir-autogen, elixir-format
msgid "No cost information"
@@ -752,7 +752,7 @@ msgstr "Patronen verbraucht"
msgid "Current # of rounds:"
msgstr "Derzeitige # an Patronen:"
-#: lib/cannery_web/live/ammo_type_live/index.ex:92
+#: lib/cannery_web/live/ammo_type_live/index.ex:97
#, elixir-autogen, elixir-format
msgid "Total # of rounds"
msgstr "Summe aller Patronen"
@@ -916,7 +916,7 @@ msgstr ""
msgid "Leave \"Uses left\" blank to make invite unlimited"
msgstr ""
-#: lib/cannery_web/live/ammo_type_live/index.ex:93
+#: lib/cannery_web/live/ammo_type_live/index.ex:117
#, elixir-autogen, elixir-format, fuzzy
msgid "Total # of ammo"
msgstr "Summe aller Patronen"
@@ -927,6 +927,7 @@ msgid "Container:"
msgstr "Behälter"
#: lib/cannery_web/live/ammo_group_live/index.html.heex:48
+#: lib/cannery_web/live/ammo_type_live/index.html.heex:23
#: lib/cannery_web/live/ammo_type_live/show.html.heex:126
#, elixir-autogen, elixir-format
msgid "Show used"
@@ -987,3 +988,23 @@ msgstr "Patronen:"
#, elixir-autogen, elixir-format
msgid "View as table"
msgstr ""
+
+#: lib/cannery_web/live/ammo_type_live/index.ex:127
+#, elixir-autogen, elixir-format
+msgid "Historical Total # of ammo"
+msgstr ""
+
+#: lib/cannery_web/live/ammo_type_live/index.ex:108
+#, elixir-autogen, elixir-format
+msgid "Historical Total # of rounds"
+msgstr ""
+
+#: lib/cannery_web/live/ammo_type_live/index.ex:122
+#, elixir-autogen, elixir-format, fuzzy
+msgid "Used Total # of ammo"
+msgstr "Summe aller Patronen"
+
+#: lib/cannery_web/live/ammo_type_live/index.ex:103
+#, elixir-autogen, elixir-format, fuzzy
+msgid "Used Total # of rounds"
+msgstr "Summe aller Patronen"
diff --git a/priv/gettext/de/LC_MESSAGES/prompts.po b/priv/gettext/de/LC_MESSAGES/prompts.po
index 8ace73ff..5558eb7d 100644
--- a/priv/gettext/de/LC_MESSAGES/prompts.po
+++ b/priv/gettext/de/LC_MESSAGES/prompts.po
@@ -293,7 +293,7 @@ msgid_plural "Ammo added successfully"
msgstr[0] "Munitionsgruppe erfolgreich aktualisiert"
msgstr[1] "Munitionsgruppe erfolgreich aktualisiert"
-#: lib/cannery_web/live/ammo_type_live/index.ex:177
+#: lib/cannery_web/live/ammo_type_live/index.ex:232
#: lib/cannery_web/live/ammo_type_live/show.html.heex:28
#, elixir-autogen, elixir-format, fuzzy
msgid "Are you sure you want to delete %{name}? This will delete all %{name} type ammo as well!"
diff --git a/priv/gettext/default.pot b/priv/gettext/default.pot
index 75e72ceb..01aef069 100644
--- a/priv/gettext/default.pot
+++ b/priv/gettext/default.pot
@@ -43,7 +43,7 @@ msgstr ""
msgid "Ammo type"
msgstr ""
-#: lib/cannery_web/live/ammo_type_live/index.ex:94
+#: lib/cannery_web/live/ammo_type_live/index.ex:137
#: lib/cannery_web/live/ammo_type_live/show.html.heex:106
#, elixir-autogen, elixir-format
msgid "Average Price paid"
@@ -55,7 +55,7 @@ msgid "Background color"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:140
-#: lib/cannery_web/live/ammo_type_live/index.ex:77
+#: lib/cannery_web/live/ammo_type_live/index.ex:82
#: lib/cannery_web/live/ammo_type_live/show.html.heex:59
#, elixir-autogen, elixir-format
msgid "Blank"
@@ -67,35 +67,35 @@ msgid "Brass"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:44
-#: lib/cannery_web/live/ammo_type_live/index.ex:59
+#: lib/cannery_web/live/ammo_type_live/index.ex:64
#: lib/cannery_web/live/ammo_type_live/show.html.heex:45
#, elixir-autogen, elixir-format
msgid "Bullet core"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:37
-#: lib/cannery_web/live/ammo_type_live/index.ex:58
+#: lib/cannery_web/live/ammo_type_live/index.ex:63
#: lib/cannery_web/live/ammo_type_live/show.html.heex:44
#, elixir-autogen, elixir-format
msgid "Bullet type"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:58
-#: lib/cannery_web/live/ammo_type_live/index.ex:61
+#: lib/cannery_web/live/ammo_type_live/index.ex:66
#: lib/cannery_web/live/ammo_type_live/show.html.heex:47
#, elixir-autogen, elixir-format
msgid "Caliber"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:51
-#: lib/cannery_web/live/ammo_type_live/index.ex:60
+#: lib/cannery_web/live/ammo_type_live/index.ex:65
#: lib/cannery_web/live/ammo_type_live/show.html.heex:46
#, elixir-autogen, elixir-format
msgid "Cartridge"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:65
-#: lib/cannery_web/live/ammo_type_live/index.ex:62
+#: lib/cannery_web/live/ammo_type_live/index.ex:67
#: lib/cannery_web/live/ammo_type_live/show.html.heex:48
#, elixir-autogen, elixir-format
msgid "Case material"
@@ -117,7 +117,7 @@ msgid "Containers"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:144
-#: lib/cannery_web/live/ammo_type_live/index.ex:78
+#: lib/cannery_web/live/ammo_type_live/index.ex:83
#: lib/cannery_web/live/ammo_type_live/show.html.heex:60
#, elixir-autogen, elixir-format
msgid "Corrosive"
@@ -185,14 +185,14 @@ msgid "FMJ"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:103
-#: lib/cannery_web/live/ammo_type_live/index.ex:71
+#: lib/cannery_web/live/ammo_type_live/index.ex:76
#: lib/cannery_web/live/ammo_type_live/show.html.heex:53
#, elixir-autogen, elixir-format
msgid "Grains"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:136
-#: lib/cannery_web/live/ammo_type_live/index.ex:76
+#: lib/cannery_web/live/ammo_type_live/index.ex:81
#: lib/cannery_web/live/ammo_type_live/show.html.heex:58
#, elixir-autogen, elixir-format
msgid "Incendiary"
@@ -244,7 +244,7 @@ msgid "Magazine, Clip, Ammo Box, etc"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:148
-#: lib/cannery_web/live/ammo_type_live/index.ex:79
+#: lib/cannery_web/live/ammo_type_live/index.ex:84
#: lib/cannery_web/live/ammo_type_live/show.html.heex:61
#, elixir-autogen, elixir-format
msgid "Manufacturer"
@@ -261,7 +261,7 @@ msgid "My cool ammo can"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:20
-#: lib/cannery_web/live/ammo_type_live/index.ex:57
+#: lib/cannery_web/live/ammo_type_live/index.ex:62
#: lib/cannery_web/live/container_live/form_component.html.heex:20
#: lib/cannery_web/live/container_live/index.ex:121
#: lib/cannery_web/live/invite_live/form_component.html.heex:20
@@ -344,7 +344,7 @@ msgid "On the bookshelf"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:111
-#: lib/cannery_web/live/ammo_type_live/index.ex:72
+#: lib/cannery_web/live/ammo_type_live/index.ex:77
#: lib/cannery_web/live/ammo_type_live/show.html.heex:54
#, elixir-autogen, elixir-format
msgid "Pressure"
@@ -362,7 +362,7 @@ msgid "Price paid:"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:118
-#: lib/cannery_web/live/ammo_type_live/index.ex:73
+#: lib/cannery_web/live/ammo_type_live/index.ex:78
#: lib/cannery_web/live/ammo_type_live/show.html.heex:55
#, elixir-autogen, elixir-format
msgid "Primer type"
@@ -433,7 +433,7 @@ msgid "The self-hosted firearm tracker website"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:132
-#: lib/cannery_web/live/ammo_type_live/index.ex:75
+#: lib/cannery_web/live/ammo_type_live/index.ex:80
#: lib/cannery_web/live/ammo_type_live/show.html.heex:57
#, elixir-autogen, elixir-format
msgid "Tracer"
@@ -582,7 +582,7 @@ msgstr ""
#: lib/cannery_web/live/ammo_group_live/index.ex:151
#: lib/cannery_web/live/ammo_group_live/show.html.heex:37
#: lib/cannery_web/live/ammo_group_live/show.html.heex:44
-#: lib/cannery_web/live/ammo_type_live/index.ex:124
+#: lib/cannery_web/live/ammo_type_live/index.ex:179
#: lib/cannery_web/live/ammo_type_live/show.html.heex:110
#, elixir-autogen, elixir-format
msgid "$%{amount}"
@@ -594,35 +594,35 @@ msgid "Bimetal"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:72
-#: lib/cannery_web/live/ammo_type_live/index.ex:63
+#: lib/cannery_web/live/ammo_type_live/index.ex:68
#: lib/cannery_web/live/ammo_type_live/show.html.heex:49
#, elixir-autogen, elixir-format
msgid "Jacket type"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:79
-#: lib/cannery_web/live/ammo_type_live/index.ex:64
+#: lib/cannery_web/live/ammo_type_live/index.ex:69
#: lib/cannery_web/live/ammo_type_live/show.html.heex:50
#, elixir-autogen, elixir-format
msgid "Muzzle velocity"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:93
-#: lib/cannery_web/live/ammo_type_live/index.ex:67
+#: lib/cannery_web/live/ammo_type_live/index.ex:72
#: lib/cannery_web/live/ammo_type_live/show.html.heex:52
#, elixir-autogen, elixir-format
msgid "Powder grains per charge"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:89
-#: lib/cannery_web/live/ammo_type_live/index.ex:65
+#: lib/cannery_web/live/ammo_type_live/index.ex:70
#: lib/cannery_web/live/ammo_type_live/show.html.heex:51
#, elixir-autogen, elixir-format
msgid "Powder type"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:152
-#: lib/cannery_web/live/ammo_type_live/index.ex:80
+#: lib/cannery_web/live/ammo_type_live/index.ex:85
#: lib/cannery_web/live/ammo_type_live/show.html.heex:62
#, elixir-autogen, elixir-format
msgid "UPC"
@@ -655,7 +655,7 @@ msgid "Unstage"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:125
-#: lib/cannery_web/live/ammo_type_live/index.ex:74
+#: lib/cannery_web/live/ammo_type_live/index.ex:79
#: lib/cannery_web/live/ammo_type_live/show.html.heex:56
#, elixir-autogen, elixir-format
msgid "Firing type"
@@ -694,7 +694,7 @@ msgstr ""
msgid "Show %{name}"
msgstr ""
-#: lib/cannery_web/live/ammo_type_live/index.ex:123
+#: lib/cannery_web/live/ammo_type_live/index.ex:178
#: lib/cannery_web/live/ammo_type_live/show.html.heex:116
#, elixir-autogen, elixir-format
msgid "No cost information"
@@ -735,7 +735,7 @@ msgstr ""
msgid "Current # of rounds:"
msgstr ""
-#: lib/cannery_web/live/ammo_type_live/index.ex:92
+#: lib/cannery_web/live/ammo_type_live/index.ex:97
#, elixir-autogen, elixir-format
msgid "Total # of rounds"
msgstr ""
@@ -899,7 +899,7 @@ msgstr ""
msgid "Leave \"Uses left\" blank to make invite unlimited"
msgstr ""
-#: lib/cannery_web/live/ammo_type_live/index.ex:93
+#: lib/cannery_web/live/ammo_type_live/index.ex:117
#, elixir-autogen, elixir-format
msgid "Total # of ammo"
msgstr ""
@@ -910,6 +910,7 @@ msgid "Container:"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/index.html.heex:48
+#: lib/cannery_web/live/ammo_type_live/index.html.heex:23
#: lib/cannery_web/live/ammo_type_live/show.html.heex:126
#, elixir-autogen, elixir-format
msgid "Show used"
@@ -970,3 +971,23 @@ msgstr ""
#, elixir-autogen, elixir-format
msgid "View as table"
msgstr ""
+
+#: lib/cannery_web/live/ammo_type_live/index.ex:127
+#, elixir-autogen, elixir-format
+msgid "Historical Total # of ammo"
+msgstr ""
+
+#: lib/cannery_web/live/ammo_type_live/index.ex:108
+#, elixir-autogen, elixir-format
+msgid "Historical Total # of rounds"
+msgstr ""
+
+#: lib/cannery_web/live/ammo_type_live/index.ex:122
+#, elixir-autogen, elixir-format
+msgid "Used Total # of ammo"
+msgstr ""
+
+#: lib/cannery_web/live/ammo_type_live/index.ex:103
+#, elixir-autogen, elixir-format
+msgid "Used Total # of rounds"
+msgstr ""
diff --git a/priv/gettext/en/LC_MESSAGES/default.po b/priv/gettext/en/LC_MESSAGES/default.po
index c9d8e2ab..0d99b197 100644
--- a/priv/gettext/en/LC_MESSAGES/default.po
+++ b/priv/gettext/en/LC_MESSAGES/default.po
@@ -44,7 +44,7 @@ msgstr ""
msgid "Ammo type"
msgstr ""
-#: lib/cannery_web/live/ammo_type_live/index.ex:94
+#: lib/cannery_web/live/ammo_type_live/index.ex:137
#: lib/cannery_web/live/ammo_type_live/show.html.heex:106
#, elixir-autogen, elixir-format
msgid "Average Price paid"
@@ -56,7 +56,7 @@ msgid "Background color"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:140
-#: lib/cannery_web/live/ammo_type_live/index.ex:77
+#: lib/cannery_web/live/ammo_type_live/index.ex:82
#: lib/cannery_web/live/ammo_type_live/show.html.heex:59
#, elixir-autogen, elixir-format
msgid "Blank"
@@ -68,35 +68,35 @@ msgid "Brass"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:44
-#: lib/cannery_web/live/ammo_type_live/index.ex:59
+#: lib/cannery_web/live/ammo_type_live/index.ex:64
#: lib/cannery_web/live/ammo_type_live/show.html.heex:45
#, elixir-autogen, elixir-format
msgid "Bullet core"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:37
-#: lib/cannery_web/live/ammo_type_live/index.ex:58
+#: lib/cannery_web/live/ammo_type_live/index.ex:63
#: lib/cannery_web/live/ammo_type_live/show.html.heex:44
#, elixir-autogen, elixir-format
msgid "Bullet type"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:58
-#: lib/cannery_web/live/ammo_type_live/index.ex:61
+#: lib/cannery_web/live/ammo_type_live/index.ex:66
#: lib/cannery_web/live/ammo_type_live/show.html.heex:47
#, elixir-autogen, elixir-format
msgid "Caliber"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:51
-#: lib/cannery_web/live/ammo_type_live/index.ex:60
+#: lib/cannery_web/live/ammo_type_live/index.ex:65
#: lib/cannery_web/live/ammo_type_live/show.html.heex:46
#, elixir-autogen, elixir-format
msgid "Cartridge"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:65
-#: lib/cannery_web/live/ammo_type_live/index.ex:62
+#: lib/cannery_web/live/ammo_type_live/index.ex:67
#: lib/cannery_web/live/ammo_type_live/show.html.heex:48
#, elixir-autogen, elixir-format
msgid "Case material"
@@ -118,7 +118,7 @@ msgid "Containers"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:144
-#: lib/cannery_web/live/ammo_type_live/index.ex:78
+#: lib/cannery_web/live/ammo_type_live/index.ex:83
#: lib/cannery_web/live/ammo_type_live/show.html.heex:60
#, elixir-autogen, elixir-format
msgid "Corrosive"
@@ -186,14 +186,14 @@ msgid "FMJ"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:103
-#: lib/cannery_web/live/ammo_type_live/index.ex:71
+#: lib/cannery_web/live/ammo_type_live/index.ex:76
#: lib/cannery_web/live/ammo_type_live/show.html.heex:53
#, elixir-autogen, elixir-format
msgid "Grains"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:136
-#: lib/cannery_web/live/ammo_type_live/index.ex:76
+#: lib/cannery_web/live/ammo_type_live/index.ex:81
#: lib/cannery_web/live/ammo_type_live/show.html.heex:58
#, elixir-autogen, elixir-format
msgid "Incendiary"
@@ -245,7 +245,7 @@ msgid "Magazine, Clip, Ammo Box, etc"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:148
-#: lib/cannery_web/live/ammo_type_live/index.ex:79
+#: lib/cannery_web/live/ammo_type_live/index.ex:84
#: lib/cannery_web/live/ammo_type_live/show.html.heex:61
#, elixir-autogen, elixir-format
msgid "Manufacturer"
@@ -262,7 +262,7 @@ msgid "My cool ammo can"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:20
-#: lib/cannery_web/live/ammo_type_live/index.ex:57
+#: lib/cannery_web/live/ammo_type_live/index.ex:62
#: lib/cannery_web/live/container_live/form_component.html.heex:20
#: lib/cannery_web/live/container_live/index.ex:121
#: lib/cannery_web/live/invite_live/form_component.html.heex:20
@@ -345,7 +345,7 @@ msgid "On the bookshelf"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:111
-#: lib/cannery_web/live/ammo_type_live/index.ex:72
+#: lib/cannery_web/live/ammo_type_live/index.ex:77
#: lib/cannery_web/live/ammo_type_live/show.html.heex:54
#, elixir-autogen, elixir-format
msgid "Pressure"
@@ -363,7 +363,7 @@ msgid "Price paid:"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:118
-#: lib/cannery_web/live/ammo_type_live/index.ex:73
+#: lib/cannery_web/live/ammo_type_live/index.ex:78
#: lib/cannery_web/live/ammo_type_live/show.html.heex:55
#, elixir-autogen, elixir-format
msgid "Primer type"
@@ -434,7 +434,7 @@ msgid "The self-hosted firearm tracker website"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:132
-#: lib/cannery_web/live/ammo_type_live/index.ex:75
+#: lib/cannery_web/live/ammo_type_live/index.ex:80
#: lib/cannery_web/live/ammo_type_live/show.html.heex:57
#, elixir-autogen, elixir-format
msgid "Tracer"
@@ -583,7 +583,7 @@ msgstr ""
#: lib/cannery_web/live/ammo_group_live/index.ex:151
#: lib/cannery_web/live/ammo_group_live/show.html.heex:37
#: lib/cannery_web/live/ammo_group_live/show.html.heex:44
-#: lib/cannery_web/live/ammo_type_live/index.ex:124
+#: lib/cannery_web/live/ammo_type_live/index.ex:179
#: lib/cannery_web/live/ammo_type_live/show.html.heex:110
#, elixir-autogen, elixir-format
msgid "$%{amount}"
@@ -595,35 +595,35 @@ msgid "Bimetal"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:72
-#: lib/cannery_web/live/ammo_type_live/index.ex:63
+#: lib/cannery_web/live/ammo_type_live/index.ex:68
#: lib/cannery_web/live/ammo_type_live/show.html.heex:49
#, elixir-autogen, elixir-format
msgid "Jacket type"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:79
-#: lib/cannery_web/live/ammo_type_live/index.ex:64
+#: lib/cannery_web/live/ammo_type_live/index.ex:69
#: lib/cannery_web/live/ammo_type_live/show.html.heex:50
#, elixir-autogen, elixir-format
msgid "Muzzle velocity"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:93
-#: lib/cannery_web/live/ammo_type_live/index.ex:67
+#: lib/cannery_web/live/ammo_type_live/index.ex:72
#: lib/cannery_web/live/ammo_type_live/show.html.heex:52
#, elixir-autogen, elixir-format
msgid "Powder grains per charge"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:89
-#: lib/cannery_web/live/ammo_type_live/index.ex:65
+#: lib/cannery_web/live/ammo_type_live/index.ex:70
#: lib/cannery_web/live/ammo_type_live/show.html.heex:51
#, elixir-autogen, elixir-format
msgid "Powder type"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:152
-#: lib/cannery_web/live/ammo_type_live/index.ex:80
+#: lib/cannery_web/live/ammo_type_live/index.ex:85
#: lib/cannery_web/live/ammo_type_live/show.html.heex:62
#, elixir-autogen, elixir-format
msgid "UPC"
@@ -656,7 +656,7 @@ msgid "Unstage"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:125
-#: lib/cannery_web/live/ammo_type_live/index.ex:74
+#: lib/cannery_web/live/ammo_type_live/index.ex:79
#: lib/cannery_web/live/ammo_type_live/show.html.heex:56
#, elixir-autogen, elixir-format
msgid "Firing type"
@@ -695,7 +695,7 @@ msgstr ""
msgid "Show %{name}"
msgstr ""
-#: lib/cannery_web/live/ammo_type_live/index.ex:123
+#: lib/cannery_web/live/ammo_type_live/index.ex:178
#: lib/cannery_web/live/ammo_type_live/show.html.heex:116
#, elixir-autogen, elixir-format
msgid "No cost information"
@@ -736,7 +736,7 @@ msgstr ""
msgid "Current # of rounds:"
msgstr ""
-#: lib/cannery_web/live/ammo_type_live/index.ex:92
+#: lib/cannery_web/live/ammo_type_live/index.ex:97
#, elixir-autogen, elixir-format
msgid "Total # of rounds"
msgstr ""
@@ -900,7 +900,7 @@ msgstr ""
msgid "Leave \"Uses left\" blank to make invite unlimited"
msgstr ""
-#: lib/cannery_web/live/ammo_type_live/index.ex:93
+#: lib/cannery_web/live/ammo_type_live/index.ex:117
#, elixir-autogen, elixir-format, fuzzy
msgid "Total # of ammo"
msgstr ""
@@ -911,6 +911,7 @@ msgid "Container:"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/index.html.heex:48
+#: lib/cannery_web/live/ammo_type_live/index.html.heex:23
#: lib/cannery_web/live/ammo_type_live/show.html.heex:126
#, elixir-autogen, elixir-format
msgid "Show used"
@@ -971,3 +972,23 @@ msgstr ""
#, elixir-autogen, elixir-format
msgid "View as table"
msgstr ""
+
+#: lib/cannery_web/live/ammo_type_live/index.ex:127
+#, elixir-autogen, elixir-format
+msgid "Historical Total # of ammo"
+msgstr ""
+
+#: lib/cannery_web/live/ammo_type_live/index.ex:108
+#, elixir-autogen, elixir-format
+msgid "Historical Total # of rounds"
+msgstr ""
+
+#: lib/cannery_web/live/ammo_type_live/index.ex:122
+#, elixir-autogen, elixir-format, fuzzy
+msgid "Used Total # of ammo"
+msgstr ""
+
+#: lib/cannery_web/live/ammo_type_live/index.ex:103
+#, elixir-autogen, elixir-format, fuzzy
+msgid "Used Total # of rounds"
+msgstr ""
diff --git a/priv/gettext/en/LC_MESSAGES/prompts.po b/priv/gettext/en/LC_MESSAGES/prompts.po
index 05e89bac..612565f3 100644
--- a/priv/gettext/en/LC_MESSAGES/prompts.po
+++ b/priv/gettext/en/LC_MESSAGES/prompts.po
@@ -273,7 +273,7 @@ msgid_plural "Ammo added successfully"
msgstr[0] ""
msgstr[1] ""
-#: lib/cannery_web/live/ammo_type_live/index.ex:177
+#: lib/cannery_web/live/ammo_type_live/index.ex:232
#: lib/cannery_web/live/ammo_type_live/show.html.heex:28
#, elixir-autogen, elixir-format, fuzzy
msgid "Are you sure you want to delete %{name}? This will delete all %{name} type ammo as well!"
diff --git a/priv/gettext/es/LC_MESSAGES/default.po b/priv/gettext/es/LC_MESSAGES/default.po
index 00b61b29..61923cfb 100644
--- a/priv/gettext/es/LC_MESSAGES/default.po
+++ b/priv/gettext/es/LC_MESSAGES/default.po
@@ -58,7 +58,7 @@ msgstr ""
msgid "Ammo type"
msgstr ""
-#: lib/cannery_web/live/ammo_type_live/index.ex:94
+#: lib/cannery_web/live/ammo_type_live/index.ex:137
#: lib/cannery_web/live/ammo_type_live/show.html.heex:106
#, elixir-autogen, elixir-format
msgid "Average Price paid"
@@ -70,7 +70,7 @@ msgid "Background color"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:140
-#: lib/cannery_web/live/ammo_type_live/index.ex:77
+#: lib/cannery_web/live/ammo_type_live/index.ex:82
#: lib/cannery_web/live/ammo_type_live/show.html.heex:59
#, elixir-autogen, elixir-format
msgid "Blank"
@@ -82,35 +82,35 @@ msgid "Brass"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:44
-#: lib/cannery_web/live/ammo_type_live/index.ex:59
+#: lib/cannery_web/live/ammo_type_live/index.ex:64
#: lib/cannery_web/live/ammo_type_live/show.html.heex:45
#, elixir-autogen, elixir-format
msgid "Bullet core"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:37
-#: lib/cannery_web/live/ammo_type_live/index.ex:58
+#: lib/cannery_web/live/ammo_type_live/index.ex:63
#: lib/cannery_web/live/ammo_type_live/show.html.heex:44
#, elixir-autogen, elixir-format
msgid "Bullet type"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:58
-#: lib/cannery_web/live/ammo_type_live/index.ex:61
+#: lib/cannery_web/live/ammo_type_live/index.ex:66
#: lib/cannery_web/live/ammo_type_live/show.html.heex:47
#, elixir-autogen, elixir-format
msgid "Caliber"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:51
-#: lib/cannery_web/live/ammo_type_live/index.ex:60
+#: lib/cannery_web/live/ammo_type_live/index.ex:65
#: lib/cannery_web/live/ammo_type_live/show.html.heex:46
#, elixir-autogen, elixir-format
msgid "Cartridge"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:65
-#: lib/cannery_web/live/ammo_type_live/index.ex:62
+#: lib/cannery_web/live/ammo_type_live/index.ex:67
#: lib/cannery_web/live/ammo_type_live/show.html.heex:48
#, elixir-autogen, elixir-format
msgid "Case material"
@@ -132,7 +132,7 @@ msgid "Containers"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:144
-#: lib/cannery_web/live/ammo_type_live/index.ex:78
+#: lib/cannery_web/live/ammo_type_live/index.ex:83
#: lib/cannery_web/live/ammo_type_live/show.html.heex:60
#, elixir-autogen, elixir-format
msgid "Corrosive"
@@ -200,14 +200,14 @@ msgid "FMJ"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:103
-#: lib/cannery_web/live/ammo_type_live/index.ex:71
+#: lib/cannery_web/live/ammo_type_live/index.ex:76
#: lib/cannery_web/live/ammo_type_live/show.html.heex:53
#, elixir-autogen, elixir-format
msgid "Grains"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:136
-#: lib/cannery_web/live/ammo_type_live/index.ex:76
+#: lib/cannery_web/live/ammo_type_live/index.ex:81
#: lib/cannery_web/live/ammo_type_live/show.html.heex:58
#, elixir-autogen, elixir-format
msgid "Incendiary"
@@ -259,7 +259,7 @@ msgid "Magazine, Clip, Ammo Box, etc"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:148
-#: lib/cannery_web/live/ammo_type_live/index.ex:79
+#: lib/cannery_web/live/ammo_type_live/index.ex:84
#: lib/cannery_web/live/ammo_type_live/show.html.heex:61
#, elixir-autogen, elixir-format
msgid "Manufacturer"
@@ -276,7 +276,7 @@ msgid "My cool ammo can"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:20
-#: lib/cannery_web/live/ammo_type_live/index.ex:57
+#: lib/cannery_web/live/ammo_type_live/index.ex:62
#: lib/cannery_web/live/container_live/form_component.html.heex:20
#: lib/cannery_web/live/container_live/index.ex:121
#: lib/cannery_web/live/invite_live/form_component.html.heex:20
@@ -359,7 +359,7 @@ msgid "On the bookshelf"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:111
-#: lib/cannery_web/live/ammo_type_live/index.ex:72
+#: lib/cannery_web/live/ammo_type_live/index.ex:77
#: lib/cannery_web/live/ammo_type_live/show.html.heex:54
#, elixir-autogen, elixir-format
msgid "Pressure"
@@ -377,7 +377,7 @@ msgid "Price paid:"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:118
-#: lib/cannery_web/live/ammo_type_live/index.ex:73
+#: lib/cannery_web/live/ammo_type_live/index.ex:78
#: lib/cannery_web/live/ammo_type_live/show.html.heex:55
#, elixir-autogen, elixir-format
msgid "Primer type"
@@ -448,7 +448,7 @@ msgid "The self-hosted firearm tracker website"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:132
-#: lib/cannery_web/live/ammo_type_live/index.ex:75
+#: lib/cannery_web/live/ammo_type_live/index.ex:80
#: lib/cannery_web/live/ammo_type_live/show.html.heex:57
#, elixir-autogen, elixir-format
msgid "Tracer"
@@ -597,7 +597,7 @@ msgstr ""
#: lib/cannery_web/live/ammo_group_live/index.ex:151
#: lib/cannery_web/live/ammo_group_live/show.html.heex:37
#: lib/cannery_web/live/ammo_group_live/show.html.heex:44
-#: lib/cannery_web/live/ammo_type_live/index.ex:124
+#: lib/cannery_web/live/ammo_type_live/index.ex:179
#: lib/cannery_web/live/ammo_type_live/show.html.heex:110
#, elixir-autogen, elixir-format
msgid "$%{amount}"
@@ -609,35 +609,35 @@ msgid "Bimetal"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:72
-#: lib/cannery_web/live/ammo_type_live/index.ex:63
+#: lib/cannery_web/live/ammo_type_live/index.ex:68
#: lib/cannery_web/live/ammo_type_live/show.html.heex:49
#, elixir-autogen, elixir-format
msgid "Jacket type"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:79
-#: lib/cannery_web/live/ammo_type_live/index.ex:64
+#: lib/cannery_web/live/ammo_type_live/index.ex:69
#: lib/cannery_web/live/ammo_type_live/show.html.heex:50
#, elixir-autogen, elixir-format
msgid "Muzzle velocity"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:93
-#: lib/cannery_web/live/ammo_type_live/index.ex:67
+#: lib/cannery_web/live/ammo_type_live/index.ex:72
#: lib/cannery_web/live/ammo_type_live/show.html.heex:52
#, elixir-autogen, elixir-format
msgid "Powder grains per charge"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:89
-#: lib/cannery_web/live/ammo_type_live/index.ex:65
+#: lib/cannery_web/live/ammo_type_live/index.ex:70
#: lib/cannery_web/live/ammo_type_live/show.html.heex:51
#, elixir-autogen, elixir-format
msgid "Powder type"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:152
-#: lib/cannery_web/live/ammo_type_live/index.ex:80
+#: lib/cannery_web/live/ammo_type_live/index.ex:85
#: lib/cannery_web/live/ammo_type_live/show.html.heex:62
#, elixir-autogen, elixir-format
msgid "UPC"
@@ -670,7 +670,7 @@ msgid "Unstage"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:125
-#: lib/cannery_web/live/ammo_type_live/index.ex:74
+#: lib/cannery_web/live/ammo_type_live/index.ex:79
#: lib/cannery_web/live/ammo_type_live/show.html.heex:56
#, elixir-autogen, elixir-format
msgid "Firing type"
@@ -709,7 +709,7 @@ msgstr ""
msgid "Show %{name}"
msgstr ""
-#: lib/cannery_web/live/ammo_type_live/index.ex:123
+#: lib/cannery_web/live/ammo_type_live/index.ex:178
#: lib/cannery_web/live/ammo_type_live/show.html.heex:116
#, elixir-autogen, elixir-format
msgid "No cost information"
@@ -750,7 +750,7 @@ msgstr ""
msgid "Current # of rounds:"
msgstr ""
-#: lib/cannery_web/live/ammo_type_live/index.ex:92
+#: lib/cannery_web/live/ammo_type_live/index.ex:97
#, elixir-autogen, elixir-format
msgid "Total # of rounds"
msgstr ""
@@ -914,7 +914,7 @@ msgstr ""
msgid "Leave \"Uses left\" blank to make invite unlimited"
msgstr ""
-#: lib/cannery_web/live/ammo_type_live/index.ex:93
+#: lib/cannery_web/live/ammo_type_live/index.ex:117
#, elixir-autogen, elixir-format, fuzzy
msgid "Total # of ammo"
msgstr ""
@@ -925,6 +925,7 @@ msgid "Container:"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/index.html.heex:48
+#: lib/cannery_web/live/ammo_type_live/index.html.heex:23
#: lib/cannery_web/live/ammo_type_live/show.html.heex:126
#, elixir-autogen, elixir-format
msgid "Show used"
@@ -985,3 +986,23 @@ msgstr ""
#, elixir-autogen, elixir-format
msgid "View as table"
msgstr ""
+
+#: lib/cannery_web/live/ammo_type_live/index.ex:127
+#, elixir-autogen, elixir-format
+msgid "Historical Total # of ammo"
+msgstr ""
+
+#: lib/cannery_web/live/ammo_type_live/index.ex:108
+#, elixir-autogen, elixir-format
+msgid "Historical Total # of rounds"
+msgstr ""
+
+#: lib/cannery_web/live/ammo_type_live/index.ex:122
+#, elixir-autogen, elixir-format, fuzzy
+msgid "Used Total # of ammo"
+msgstr ""
+
+#: lib/cannery_web/live/ammo_type_live/index.ex:103
+#, elixir-autogen, elixir-format, fuzzy
+msgid "Used Total # of rounds"
+msgstr ""
diff --git a/priv/gettext/es/LC_MESSAGES/prompts.po b/priv/gettext/es/LC_MESSAGES/prompts.po
index c8e72cf3..fb149702 100644
--- a/priv/gettext/es/LC_MESSAGES/prompts.po
+++ b/priv/gettext/es/LC_MESSAGES/prompts.po
@@ -292,7 +292,7 @@ msgid_plural "Ammo added successfully"
msgstr[0] ""
msgstr[1] ""
-#: lib/cannery_web/live/ammo_type_live/index.ex:177
+#: lib/cannery_web/live/ammo_type_live/index.ex:232
#: lib/cannery_web/live/ammo_type_live/show.html.heex:28
#, elixir-autogen, elixir-format, fuzzy
msgid "Are you sure you want to delete %{name}? This will delete all %{name} type ammo as well!"
diff --git a/priv/gettext/fr/LC_MESSAGES/default.po b/priv/gettext/fr/LC_MESSAGES/default.po
index 1c9fd747..2533ea19 100644
--- a/priv/gettext/fr/LC_MESSAGES/default.po
+++ b/priv/gettext/fr/LC_MESSAGES/default.po
@@ -58,7 +58,7 @@ msgstr "Munition"
msgid "Ammo type"
msgstr "Type de munition"
-#: lib/cannery_web/live/ammo_type_live/index.ex:94
+#: lib/cannery_web/live/ammo_type_live/index.ex:137
#: lib/cannery_web/live/ammo_type_live/show.html.heex:106
#, elixir-autogen, elixir-format
msgid "Average Price paid"
@@ -70,7 +70,7 @@ msgid "Background color"
msgstr "Couleur de fond"
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:140
-#: lib/cannery_web/live/ammo_type_live/index.ex:77
+#: lib/cannery_web/live/ammo_type_live/index.ex:82
#: lib/cannery_web/live/ammo_type_live/show.html.heex:59
#, elixir-autogen, elixir-format
msgid "Blank"
@@ -82,35 +82,35 @@ msgid "Brass"
msgstr "Cuivre"
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:44
-#: lib/cannery_web/live/ammo_type_live/index.ex:59
+#: lib/cannery_web/live/ammo_type_live/index.ex:64
#: lib/cannery_web/live/ammo_type_live/show.html.heex:45
#, elixir-autogen, elixir-format
msgid "Bullet core"
msgstr "Noyau de balle"
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:37
-#: lib/cannery_web/live/ammo_type_live/index.ex:58
+#: lib/cannery_web/live/ammo_type_live/index.ex:63
#: lib/cannery_web/live/ammo_type_live/show.html.heex:44
#, elixir-autogen, elixir-format
msgid "Bullet type"
msgstr "Type de balle"
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:58
-#: lib/cannery_web/live/ammo_type_live/index.ex:61
+#: lib/cannery_web/live/ammo_type_live/index.ex:66
#: lib/cannery_web/live/ammo_type_live/show.html.heex:47
#, elixir-autogen, elixir-format
msgid "Caliber"
msgstr "Calibre"
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:51
-#: lib/cannery_web/live/ammo_type_live/index.ex:60
+#: lib/cannery_web/live/ammo_type_live/index.ex:65
#: lib/cannery_web/live/ammo_type_live/show.html.heex:46
#, elixir-autogen, elixir-format
msgid "Cartridge"
msgstr "Cartouche"
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:65
-#: lib/cannery_web/live/ammo_type_live/index.ex:62
+#: lib/cannery_web/live/ammo_type_live/index.ex:67
#: lib/cannery_web/live/ammo_type_live/show.html.heex:48
#, elixir-autogen, elixir-format
msgid "Case material"
@@ -132,7 +132,7 @@ msgid "Containers"
msgstr "Conteneurs"
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:144
-#: lib/cannery_web/live/ammo_type_live/index.ex:78
+#: lib/cannery_web/live/ammo_type_live/index.ex:83
#: lib/cannery_web/live/ammo_type_live/show.html.heex:60
#, elixir-autogen, elixir-format
msgid "Corrosive"
@@ -200,14 +200,14 @@ msgid "FMJ"
msgstr "FMJ"
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:103
-#: lib/cannery_web/live/ammo_type_live/index.ex:71
+#: lib/cannery_web/live/ammo_type_live/index.ex:76
#: lib/cannery_web/live/ammo_type_live/show.html.heex:53
#, elixir-autogen, elixir-format
msgid "Grains"
msgstr "Graines"
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:136
-#: lib/cannery_web/live/ammo_type_live/index.ex:76
+#: lib/cannery_web/live/ammo_type_live/index.ex:81
#: lib/cannery_web/live/ammo_type_live/show.html.heex:58
#, elixir-autogen, elixir-format
msgid "Incendiary"
@@ -259,7 +259,7 @@ msgid "Magazine, Clip, Ammo Box, etc"
msgstr "Chargeur, lame-chargeur, boite de munition, etc."
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:148
-#: lib/cannery_web/live/ammo_type_live/index.ex:79
+#: lib/cannery_web/live/ammo_type_live/index.ex:84
#: lib/cannery_web/live/ammo_type_live/show.html.heex:61
#, elixir-autogen, elixir-format
msgid "Manufacturer"
@@ -276,7 +276,7 @@ msgid "My cool ammo can"
msgstr "Ma superbe boite de munition"
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:20
-#: lib/cannery_web/live/ammo_type_live/index.ex:57
+#: lib/cannery_web/live/ammo_type_live/index.ex:62
#: lib/cannery_web/live/container_live/form_component.html.heex:20
#: lib/cannery_web/live/container_live/index.ex:121
#: lib/cannery_web/live/invite_live/form_component.html.heex:20
@@ -359,7 +359,7 @@ msgid "On the bookshelf"
msgstr "Sur l’étagère"
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:111
-#: lib/cannery_web/live/ammo_type_live/index.ex:72
+#: lib/cannery_web/live/ammo_type_live/index.ex:77
#: lib/cannery_web/live/ammo_type_live/show.html.heex:54
#, elixir-autogen, elixir-format
msgid "Pressure"
@@ -377,7 +377,7 @@ msgid "Price paid:"
msgstr "Prix payé :"
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:118
-#: lib/cannery_web/live/ammo_type_live/index.ex:73
+#: lib/cannery_web/live/ammo_type_live/index.ex:78
#: lib/cannery_web/live/ammo_type_live/show.html.heex:55
#, elixir-autogen, elixir-format
msgid "Primer type"
@@ -452,7 +452,7 @@ msgid "The self-hosted firearm tracker website"
msgstr "Le site web de suivi d’arme à feux auto-hébergé"
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:132
-#: lib/cannery_web/live/ammo_type_live/index.ex:75
+#: lib/cannery_web/live/ammo_type_live/index.ex:80
#: lib/cannery_web/live/ammo_type_live/show.html.heex:57
#, elixir-autogen, elixir-format
msgid "Tracer"
@@ -601,7 +601,7 @@ msgstr "Évènements de tir"
#: lib/cannery_web/live/ammo_group_live/index.ex:151
#: lib/cannery_web/live/ammo_group_live/show.html.heex:37
#: lib/cannery_web/live/ammo_group_live/show.html.heex:44
-#: lib/cannery_web/live/ammo_type_live/index.ex:124
+#: lib/cannery_web/live/ammo_type_live/index.ex:179
#: lib/cannery_web/live/ammo_type_live/show.html.heex:110
#, elixir-autogen, elixir-format
msgid "$%{amount}"
@@ -613,35 +613,35 @@ msgid "Bimetal"
msgstr "Bi-métal"
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:72
-#: lib/cannery_web/live/ammo_type_live/index.ex:63
+#: lib/cannery_web/live/ammo_type_live/index.ex:68
#: lib/cannery_web/live/ammo_type_live/show.html.heex:49
#, elixir-autogen, elixir-format
msgid "Jacket type"
msgstr "Type de douille"
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:79
-#: lib/cannery_web/live/ammo_type_live/index.ex:64
+#: lib/cannery_web/live/ammo_type_live/index.ex:69
#: lib/cannery_web/live/ammo_type_live/show.html.heex:50
#, elixir-autogen, elixir-format
msgid "Muzzle velocity"
msgstr "Vélocité du canon"
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:93
-#: lib/cannery_web/live/ammo_type_live/index.ex:67
+#: lib/cannery_web/live/ammo_type_live/index.ex:72
#: lib/cannery_web/live/ammo_type_live/show.html.heex:52
#, elixir-autogen, elixir-format
msgid "Powder grains per charge"
msgstr "Graines de poudre par charge"
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:89
-#: lib/cannery_web/live/ammo_type_live/index.ex:65
+#: lib/cannery_web/live/ammo_type_live/index.ex:70
#: lib/cannery_web/live/ammo_type_live/show.html.heex:51
#, elixir-autogen, elixir-format
msgid "Powder type"
msgstr "Type de poudre"
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:152
-#: lib/cannery_web/live/ammo_type_live/index.ex:80
+#: lib/cannery_web/live/ammo_type_live/index.ex:85
#: lib/cannery_web/live/ammo_type_live/show.html.heex:62
#, elixir-autogen, elixir-format
msgid "UPC"
@@ -674,7 +674,7 @@ msgid "Unstage"
msgstr "Désélectionner"
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:125
-#: lib/cannery_web/live/ammo_type_live/index.ex:74
+#: lib/cannery_web/live/ammo_type_live/index.ex:79
#: lib/cannery_web/live/ammo_type_live/show.html.heex:56
#, elixir-autogen, elixir-format
msgid "Firing type"
@@ -713,7 +713,7 @@ msgstr "Cartouches :"
msgid "Show %{name}"
msgstr "Montrer %{name}"
-#: lib/cannery_web/live/ammo_type_live/index.ex:123
+#: lib/cannery_web/live/ammo_type_live/index.ex:178
#: lib/cannery_web/live/ammo_type_live/show.html.heex:116
#, elixir-autogen, elixir-format
msgid "No cost information"
@@ -754,7 +754,7 @@ msgstr "Cartouches utilisées"
msgid "Current # of rounds:"
msgstr "Quantité actuelle de cartouches :"
-#: lib/cannery_web/live/ammo_type_live/index.ex:92
+#: lib/cannery_web/live/ammo_type_live/index.ex:97
#, elixir-autogen, elixir-format
msgid "Total # of rounds"
msgstr "Quantité de cartouches"
@@ -919,7 +919,7 @@ msgid "Leave \"Uses left\" blank to make invite unlimited"
msgstr ""
"Laissez \"Utilisations restantes\" vide pour rendre l'invitation illimitée"
-#: lib/cannery_web/live/ammo_type_live/index.ex:93
+#: lib/cannery_web/live/ammo_type_live/index.ex:117
#, elixir-autogen, elixir-format, fuzzy
msgid "Total # of ammo"
msgstr "Quantité de cartouches"
@@ -930,6 +930,7 @@ msgid "Container:"
msgstr "Conteneur"
#: lib/cannery_web/live/ammo_group_live/index.html.heex:48
+#: lib/cannery_web/live/ammo_type_live/index.html.heex:23
#: lib/cannery_web/live/ammo_type_live/show.html.heex:126
#, elixir-autogen, elixir-format
msgid "Show used"
@@ -990,3 +991,23 @@ msgstr "Cartouches :"
#, elixir-autogen, elixir-format
msgid "View as table"
msgstr ""
+
+#: lib/cannery_web/live/ammo_type_live/index.ex:127
+#, elixir-autogen, elixir-format
+msgid "Historical Total # of ammo"
+msgstr ""
+
+#: lib/cannery_web/live/ammo_type_live/index.ex:108
+#, elixir-autogen, elixir-format
+msgid "Historical Total # of rounds"
+msgstr ""
+
+#: lib/cannery_web/live/ammo_type_live/index.ex:122
+#, elixir-autogen, elixir-format, fuzzy
+msgid "Used Total # of ammo"
+msgstr "Quantité de cartouches"
+
+#: lib/cannery_web/live/ammo_type_live/index.ex:103
+#, elixir-autogen, elixir-format, fuzzy
+msgid "Used Total # of rounds"
+msgstr "Quantité de cartouches"
diff --git a/priv/gettext/fr/LC_MESSAGES/prompts.po b/priv/gettext/fr/LC_MESSAGES/prompts.po
index 3ae6e012..20001f6c 100644
--- a/priv/gettext/fr/LC_MESSAGES/prompts.po
+++ b/priv/gettext/fr/LC_MESSAGES/prompts.po
@@ -294,7 +294,7 @@ msgid_plural "Ammo added successfully"
msgstr[0] "Groupe de munition mis à jour avec succès"
msgstr[1] "Groupe de munition mis à jour avec succès"
-#: lib/cannery_web/live/ammo_type_live/index.ex:177
+#: lib/cannery_web/live/ammo_type_live/index.ex:232
#: lib/cannery_web/live/ammo_type_live/show.html.heex:28
#, elixir-autogen, elixir-format, fuzzy
msgid "Are you sure you want to delete %{name}? This will delete all %{name} type ammo as well!"
diff --git a/priv/gettext/ga/LC_MESSAGES/default.po b/priv/gettext/ga/LC_MESSAGES/default.po
index 7db13509..c5cca75b 100644
--- a/priv/gettext/ga/LC_MESSAGES/default.po
+++ b/priv/gettext/ga/LC_MESSAGES/default.po
@@ -54,7 +54,7 @@ msgstr ""
msgid "Ammo type"
msgstr ""
-#: lib/cannery_web/live/ammo_type_live/index.ex:94
+#: lib/cannery_web/live/ammo_type_live/index.ex:137
#: lib/cannery_web/live/ammo_type_live/show.html.heex:106
#, elixir-autogen, elixir-format
msgid "Average Price paid"
@@ -66,7 +66,7 @@ msgid "Background color"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:140
-#: lib/cannery_web/live/ammo_type_live/index.ex:77
+#: lib/cannery_web/live/ammo_type_live/index.ex:82
#: lib/cannery_web/live/ammo_type_live/show.html.heex:59
#, elixir-autogen, elixir-format
msgid "Blank"
@@ -78,35 +78,35 @@ msgid "Brass"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:44
-#: lib/cannery_web/live/ammo_type_live/index.ex:59
+#: lib/cannery_web/live/ammo_type_live/index.ex:64
#: lib/cannery_web/live/ammo_type_live/show.html.heex:45
#, elixir-autogen, elixir-format
msgid "Bullet core"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:37
-#: lib/cannery_web/live/ammo_type_live/index.ex:58
+#: lib/cannery_web/live/ammo_type_live/index.ex:63
#: lib/cannery_web/live/ammo_type_live/show.html.heex:44
#, elixir-autogen, elixir-format
msgid "Bullet type"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:58
-#: lib/cannery_web/live/ammo_type_live/index.ex:61
+#: lib/cannery_web/live/ammo_type_live/index.ex:66
#: lib/cannery_web/live/ammo_type_live/show.html.heex:47
#, elixir-autogen, elixir-format
msgid "Caliber"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:51
-#: lib/cannery_web/live/ammo_type_live/index.ex:60
+#: lib/cannery_web/live/ammo_type_live/index.ex:65
#: lib/cannery_web/live/ammo_type_live/show.html.heex:46
#, elixir-autogen, elixir-format
msgid "Cartridge"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:65
-#: lib/cannery_web/live/ammo_type_live/index.ex:62
+#: lib/cannery_web/live/ammo_type_live/index.ex:67
#: lib/cannery_web/live/ammo_type_live/show.html.heex:48
#, elixir-autogen, elixir-format
msgid "Case material"
@@ -128,7 +128,7 @@ msgid "Containers"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:144
-#: lib/cannery_web/live/ammo_type_live/index.ex:78
+#: lib/cannery_web/live/ammo_type_live/index.ex:83
#: lib/cannery_web/live/ammo_type_live/show.html.heex:60
#, elixir-autogen, elixir-format
msgid "Corrosive"
@@ -196,14 +196,14 @@ msgid "FMJ"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:103
-#: lib/cannery_web/live/ammo_type_live/index.ex:71
+#: lib/cannery_web/live/ammo_type_live/index.ex:76
#: lib/cannery_web/live/ammo_type_live/show.html.heex:53
#, elixir-autogen, elixir-format
msgid "Grains"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:136
-#: lib/cannery_web/live/ammo_type_live/index.ex:76
+#: lib/cannery_web/live/ammo_type_live/index.ex:81
#: lib/cannery_web/live/ammo_type_live/show.html.heex:58
#, elixir-autogen, elixir-format
msgid "Incendiary"
@@ -255,7 +255,7 @@ msgid "Magazine, Clip, Ammo Box, etc"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:148
-#: lib/cannery_web/live/ammo_type_live/index.ex:79
+#: lib/cannery_web/live/ammo_type_live/index.ex:84
#: lib/cannery_web/live/ammo_type_live/show.html.heex:61
#, elixir-autogen, elixir-format
msgid "Manufacturer"
@@ -272,7 +272,7 @@ msgid "My cool ammo can"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:20
-#: lib/cannery_web/live/ammo_type_live/index.ex:57
+#: lib/cannery_web/live/ammo_type_live/index.ex:62
#: lib/cannery_web/live/container_live/form_component.html.heex:20
#: lib/cannery_web/live/container_live/index.ex:121
#: lib/cannery_web/live/invite_live/form_component.html.heex:20
@@ -355,7 +355,7 @@ msgid "On the bookshelf"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:111
-#: lib/cannery_web/live/ammo_type_live/index.ex:72
+#: lib/cannery_web/live/ammo_type_live/index.ex:77
#: lib/cannery_web/live/ammo_type_live/show.html.heex:54
#, elixir-autogen, elixir-format
msgid "Pressure"
@@ -373,7 +373,7 @@ msgid "Price paid:"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:118
-#: lib/cannery_web/live/ammo_type_live/index.ex:73
+#: lib/cannery_web/live/ammo_type_live/index.ex:78
#: lib/cannery_web/live/ammo_type_live/show.html.heex:55
#, elixir-autogen, elixir-format
msgid "Primer type"
@@ -444,7 +444,7 @@ msgid "The self-hosted firearm tracker website"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:132
-#: lib/cannery_web/live/ammo_type_live/index.ex:75
+#: lib/cannery_web/live/ammo_type_live/index.ex:80
#: lib/cannery_web/live/ammo_type_live/show.html.heex:57
#, elixir-autogen, elixir-format
msgid "Tracer"
@@ -593,7 +593,7 @@ msgstr ""
#: lib/cannery_web/live/ammo_group_live/index.ex:151
#: lib/cannery_web/live/ammo_group_live/show.html.heex:37
#: lib/cannery_web/live/ammo_group_live/show.html.heex:44
-#: lib/cannery_web/live/ammo_type_live/index.ex:124
+#: lib/cannery_web/live/ammo_type_live/index.ex:179
#: lib/cannery_web/live/ammo_type_live/show.html.heex:110
#, elixir-autogen, elixir-format
msgid "$%{amount}"
@@ -605,35 +605,35 @@ msgid "Bimetal"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:72
-#: lib/cannery_web/live/ammo_type_live/index.ex:63
+#: lib/cannery_web/live/ammo_type_live/index.ex:68
#: lib/cannery_web/live/ammo_type_live/show.html.heex:49
#, elixir-autogen, elixir-format
msgid "Jacket type"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:79
-#: lib/cannery_web/live/ammo_type_live/index.ex:64
+#: lib/cannery_web/live/ammo_type_live/index.ex:69
#: lib/cannery_web/live/ammo_type_live/show.html.heex:50
#, elixir-autogen, elixir-format
msgid "Muzzle velocity"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:93
-#: lib/cannery_web/live/ammo_type_live/index.ex:67
+#: lib/cannery_web/live/ammo_type_live/index.ex:72
#: lib/cannery_web/live/ammo_type_live/show.html.heex:52
#, elixir-autogen, elixir-format
msgid "Powder grains per charge"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:89
-#: lib/cannery_web/live/ammo_type_live/index.ex:65
+#: lib/cannery_web/live/ammo_type_live/index.ex:70
#: lib/cannery_web/live/ammo_type_live/show.html.heex:51
#, elixir-autogen, elixir-format
msgid "Powder type"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:152
-#: lib/cannery_web/live/ammo_type_live/index.ex:80
+#: lib/cannery_web/live/ammo_type_live/index.ex:85
#: lib/cannery_web/live/ammo_type_live/show.html.heex:62
#, elixir-autogen, elixir-format
msgid "UPC"
@@ -666,7 +666,7 @@ msgid "Unstage"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:125
-#: lib/cannery_web/live/ammo_type_live/index.ex:74
+#: lib/cannery_web/live/ammo_type_live/index.ex:79
#: lib/cannery_web/live/ammo_type_live/show.html.heex:56
#, elixir-autogen, elixir-format
msgid "Firing type"
@@ -705,7 +705,7 @@ msgstr ""
msgid "Show %{name}"
msgstr ""
-#: lib/cannery_web/live/ammo_type_live/index.ex:123
+#: lib/cannery_web/live/ammo_type_live/index.ex:178
#: lib/cannery_web/live/ammo_type_live/show.html.heex:116
#, elixir-autogen, elixir-format
msgid "No cost information"
@@ -746,7 +746,7 @@ msgstr ""
msgid "Current # of rounds:"
msgstr ""
-#: lib/cannery_web/live/ammo_type_live/index.ex:92
+#: lib/cannery_web/live/ammo_type_live/index.ex:97
#, elixir-autogen, elixir-format
msgid "Total # of rounds"
msgstr ""
@@ -910,7 +910,7 @@ msgstr ""
msgid "Leave \"Uses left\" blank to make invite unlimited"
msgstr ""
-#: lib/cannery_web/live/ammo_type_live/index.ex:93
+#: lib/cannery_web/live/ammo_type_live/index.ex:117
#, elixir-autogen, elixir-format
msgid "Total # of ammo"
msgstr ""
@@ -921,6 +921,7 @@ msgid "Container:"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/index.html.heex:48
+#: lib/cannery_web/live/ammo_type_live/index.html.heex:23
#: lib/cannery_web/live/ammo_type_live/show.html.heex:126
#, elixir-autogen, elixir-format
msgid "Show used"
@@ -981,3 +982,23 @@ msgstr ""
#, elixir-autogen, elixir-format
msgid "View as table"
msgstr ""
+
+#: lib/cannery_web/live/ammo_type_live/index.ex:127
+#, elixir-autogen, elixir-format
+msgid "Historical Total # of ammo"
+msgstr ""
+
+#: lib/cannery_web/live/ammo_type_live/index.ex:108
+#, elixir-autogen, elixir-format
+msgid "Historical Total # of rounds"
+msgstr ""
+
+#: lib/cannery_web/live/ammo_type_live/index.ex:122
+#, elixir-autogen, elixir-format, fuzzy
+msgid "Used Total # of ammo"
+msgstr ""
+
+#: lib/cannery_web/live/ammo_type_live/index.ex:103
+#, elixir-autogen, elixir-format, fuzzy
+msgid "Used Total # of rounds"
+msgstr ""
diff --git a/priv/gettext/ga/LC_MESSAGES/prompts.po b/priv/gettext/ga/LC_MESSAGES/prompts.po
index 3485eae9..23a3a868 100644
--- a/priv/gettext/ga/LC_MESSAGES/prompts.po
+++ b/priv/gettext/ga/LC_MESSAGES/prompts.po
@@ -283,7 +283,7 @@ msgid_plural "Ammo added successfully"
msgstr[0] ""
msgstr[1] ""
-#: lib/cannery_web/live/ammo_type_live/index.ex:177
+#: lib/cannery_web/live/ammo_type_live/index.ex:232
#: lib/cannery_web/live/ammo_type_live/show.html.heex:28
#, elixir-autogen, elixir-format
msgid "Are you sure you want to delete %{name}? This will delete all %{name} type ammo as well!"
diff --git a/priv/gettext/prompts.pot b/priv/gettext/prompts.pot
index 4b8e29e7..b1244204 100644
--- a/priv/gettext/prompts.pot
+++ b/priv/gettext/prompts.pot
@@ -272,7 +272,7 @@ msgid_plural "Ammo added successfully"
msgstr[0] ""
msgstr[1] ""
-#: lib/cannery_web/live/ammo_type_live/index.ex:177
+#: lib/cannery_web/live/ammo_type_live/index.ex:232
#: lib/cannery_web/live/ammo_type_live/show.html.heex:28
#, elixir-autogen, elixir-format
msgid "Are you sure you want to delete %{name}? This will delete all %{name} type ammo as well!"
diff --git a/test/cannery_web/live/ammo_type_live_test.exs b/test/cannery_web/live/ammo_type_live_test.exs
index c7c87540..f00dcea4 100644
--- a/test/cannery_web/live/ammo_type_live_test.exs
+++ b/test/cannery_web/live/ammo_type_live_test.exs
@@ -181,6 +181,40 @@ defmodule CanneryWeb.AmmoTypeLiveTest do
end
end
+ describe "Index with ammo group" do
+ setup [:register_and_log_in_user, :create_ammo_type, :create_ammo_group]
+
+ test "shows additional ammo type info on toggle",
+ %{conn: conn, ammo_group: ammo_group, current_user: current_user} do
+ {:ok, show_live, html} = live(conn, Routes.ammo_type_index_path(conn, :index))
+
+ assert html =~ dgettext("actions", "Show used")
+ refute html =~ gettext("Used Total # of rounds")
+ refute html =~ gettext("Historical Total # of rounds")
+ refute html =~ gettext("Used Total # of ammo")
+ refute html =~ gettext("Historical Total # of ammo")
+
+ html = show_live |> element("[data-qa=\"toggle_show_used\"]") |> render_click()
+
+ assert html =~ gettext("Used Total # of rounds")
+ assert html =~ gettext("Historical Total # of rounds")
+ assert html =~ gettext("Used Total # of ammo")
+ assert html =~ gettext("Historical Total # of ammo")
+
+ assert html =~ "20"
+ assert html =~ "0"
+ assert html =~ "1"
+
+ shot_group_fixture(%{"count" => 5}, current_user, ammo_group)
+
+ {:ok, show_live, _html} = live(conn, Routes.ammo_type_index_path(conn, :index))
+ html = show_live |> element("[data-qa=\"toggle_show_used\"]") |> render_click()
+
+ assert html =~ "15"
+ assert html =~ "5"
+ end
+ end
+
describe "Show ammo type" do
setup [:register_and_log_in_user, :create_ammo_type]