allow filtering ammo types when creating new packs and fix some form errors not displaying on create

This commit is contained in:
shibao 2024-10-26 15:15:14 -04:00
parent 7e14f292a6
commit ab3d3721d6
33 changed files with 404 additions and 266 deletions

View File

@ -1,4 +1,5 @@
# v0.9.12 # v0.9.12
- Allow filtering ammo types when creating new packs
- Add SlimSelect to select elements with user content - Add SlimSelect to select elements with user content
- Fix registration page not offering all translations - Fix registration page not offering all translations
- Update deps - Update deps

View File

@ -959,11 +959,10 @@ defmodule Cannery.Ammo do
defp do_create_packs( defp do_create_packs(
%{"type_id" => type_id, "container_id" => container_id} = attrs, %{"type_id" => type_id, "container_id" => container_id} = attrs,
_multiplier, multiplier,
user user
) )
when is_binary(type_id) and is_binary(container_id) do when is_binary(type_id) and is_binary(container_id) do
changeset =
%Pack{} %Pack{}
|> Pack.create_changeset( |> Pack.create_changeset(
get_type!(type_id, user), get_type!(type_id, user),
@ -971,13 +970,68 @@ defmodule Cannery.Ammo do
user, user,
attrs attrs
) )
|> Changeset.add_error(:multiplier, dgettext("errors", "Invalid multiplier")) |> maybe_add_multiplier_error(multiplier)
|> Changeset.apply_action(:insert)
{:error, changeset}
end end
defp do_create_packs(invalid_attrs, _multiplier, user) do defp do_create_packs(
{:error, %Pack{} |> Pack.create_changeset(nil, nil, user, invalid_attrs)} %{"type_id" => type_id} = attrs,
multiplier,
user
)
when is_binary(type_id) do
%Pack{}
|> Pack.create_changeset(
get_type!(type_id, user),
nil,
user,
attrs
)
|> maybe_add_multiplier_error(multiplier)
|> Changeset.apply_action(:insert)
end
defp do_create_packs(
%{"container_id" => container_id} = attrs,
multiplier,
user
)
when is_binary(container_id) do
%Pack{}
|> Pack.create_changeset(
nil,
Containers.get_container!(container_id, user),
user,
attrs
)
|> maybe_add_multiplier_error(multiplier)
|> Changeset.apply_action(:insert)
end
defp do_create_packs(invalid_attrs, multiplier, user) do
%Pack{}
|> Pack.create_changeset(nil, nil, user, invalid_attrs)
|> maybe_add_multiplier_error(multiplier)
|> Changeset.apply_action(:insert)
end
defp maybe_add_multiplier_error(changeset, multiplier)
when multiplier >= 1 and
multiplier <= @pack_create_limit do
changeset
end
defp maybe_add_multiplier_error(changeset, multiplier) do
changeset
|> Changeset.add_error(
:multiplier,
dgettext(
"errors",
"Invalid number of copies, must be between 1 and %{max}. Was %{multiplier}",
max: @pack_create_limit,
multiplier: multiplier
)
)
end end
@spec preload_pack(Pack.t()) :: Pack.t() @spec preload_pack(Pack.t()) :: Pack.t()

View File

@ -70,36 +70,45 @@ defmodule Cannery.Ammo.Pack do
) :: changeset() ) :: changeset()
def create_changeset( def create_changeset(
pack, pack,
%Type{id: type_id}, type,
%Container{id: container_id, user_id: user_id}, container,
%User{id: user_id}, %User{id: user_id},
attrs attrs
) )
when is_binary(type_id) and is_binary(container_id) and is_binary(user_id) do when is_binary(user_id) do
type_id =
case type do
%Type{id: type_id} when is_binary(type_id) ->
type_id
_invalid_type ->
nil
end
container_id =
case container do
%Container{id: container_id, user_id: ^user_id} when is_binary(container_id) ->
container_id
_invalid_container ->
nil
end
pack pack
|> change(type_id: type_id) |> change(type_id: type_id)
|> change(user_id: user_id)
|> change(container_id: container_id) |> change(container_id: container_id)
|> cast(attrs, [:count, :price_paid, :notes, :staged, :purchased_on, :lot_number]) |> change(user_id: user_id)
|> cast(attrs, [:count, :lot_number, :notes, :price_paid, :purchased_on, :staged])
|> validate_required(:type_id, message: dgettext("errors", "Please select a valid type"))
|> validate_required(:container_id,
message: dgettext("errors", "Please select a valid container")
)
|> validate_number(:count, greater_than: 0) |> validate_number(:count, greater_than: 0)
|> validate_number(:price_paid, greater_than_or_equal_to: 0) |> validate_number(:price_paid, greater_than_or_equal_to: 0)
|> validate_length(:lot_number, max: 255) |> validate_length(:lot_number, max: 255)
|> validate_required([:count, :staged, :purchased_on, :type_id, :container_id, :user_id]) |> validate_required([:count, :staged, :purchased_on, :type_id, :container_id, :user_id])
end end
@doc """
Invalid changeset, used to prompt user to select type and container
"""
def create_changeset(pack, _invalid_type, _invalid_container, _invalid_user, attrs) do
pack
|> cast(attrs, [:type_id, :container_id])
|> validate_required([:type_id, :container_id])
|> validate_number(:count, greater_than: 0)
|> validate_number(:price_paid, greater_than_or_equal_to: 0)
|> validate_length(:lot_number, max: 255)
|> add_error(:invalid, dgettext("errors", "Please select a type and container"))
end
@doc false @doc false
@spec update_changeset(t() | new_pack(), attrs :: map(), User.t()) :: changeset() @spec update_changeset(t() | new_pack(), attrs :: map(), User.t()) :: changeset()
def update_changeset(pack, attrs, user) do def update_changeset(pack, attrs, user) do

View File

@ -9,7 +9,11 @@ defmodule CanneryWeb.PackLive.FormComponent do
alias Ecto.Changeset alias Ecto.Changeset
alias Phoenix.LiveView.Socket alias Phoenix.LiveView.Socket
@pack_create_limit 10_000 @impl true
@spec mount(Socket.t()) :: {:ok, Socket.t()}
def mount(socket) do
{:ok, socket |> assign(:class, :all)}
end
@impl true @impl true
@spec update( @spec update(
@ -24,7 +28,6 @@ defmodule CanneryWeb.PackLive.FormComponent do
def update(%{assigns: %{current_user: current_user}} = socket) do def update(%{assigns: %{current_user: current_user}} = socket) do
socket = socket =
socket socket
|> assign(:pack_create_limit, @pack_create_limit)
|> assign(:types, Ammo.list_types(current_user)) |> assign(:types, Ammo.list_types(current_user))
|> assign_new(:containers, fn -> Containers.list_containers(current_user) end) |> assign_new(:containers, fn -> Containers.list_containers(current_user) end)
@ -33,7 +36,20 @@ defmodule CanneryWeb.PackLive.FormComponent do
@impl true @impl true
def handle_event("validate", %{"pack" => pack_params}, socket) do def handle_event("validate", %{"pack" => pack_params}, socket) do
{:noreply, socket |> assign_changeset(pack_params, :validate)} matched_class =
case pack_params["class"] do
"rifle" -> :rifle
"shotgun" -> :shotgun
"pistol" -> :pistol
_other -> :all
end
socket =
socket
|> assign_changeset(pack_params, :validate)
|> assign(:class, matched_class)
{:noreply, socket}
end end
def handle_event( def handle_event(
@ -51,11 +67,18 @@ defmodule CanneryWeb.PackLive.FormComponent do
containers |> Enum.map(fn %{id: id, name: name} -> {name, id} end) containers |> Enum.map(fn %{id: id, name: name} -> {name, id} end)
end end
@spec type_options([Type.t()]) :: [{String.t(), Type.id()}] @spec type_options([Type.t()], Type.class() | :all) ::
defp type_options(types) do [{String.t(), Type.id()}]
defp type_options(types, :all) do
types |> Enum.map(fn %{id: id, name: name} -> {name, id} end) types |> Enum.map(fn %{id: id, name: name} -> {name, id} end)
end end
defp type_options(types, selected_class) do
types
|> Enum.filter(fn %{class: class} -> class == selected_class end)
|> Enum.map(fn %{id: id, name: name} -> {name, id} end)
end
# Save Helpers # Save Helpers
defp assign_changeset( defp assign_changeset(
@ -126,53 +149,15 @@ defmodule CanneryWeb.PackLive.FormComponent do
end end
defp save_pack( defp save_pack(
%{assigns: %{changeset: changeset}} = socket, %{assigns: %{changeset: changeset, current_user: current_user, return_to: return_to}} =
socket,
action, action,
%{"multiplier" => multiplier_str} = pack_params %{"multiplier" => multiplier_str} = pack_params
) )
when action in [:new, :clone] do when action in [:new, :clone] do
socket = socket =
case multiplier_str |> Integer.parse() do with {multiplier, _remainder} <- multiplier_str |> Integer.parse(),
{multiplier, _remainder} {:ok, {count, _packs}} <- Ammo.create_packs(pack_params, multiplier, current_user) do
when multiplier >= 1 and multiplier <= @pack_create_limit ->
socket |> create_multiple(pack_params, multiplier)
{multiplier, _remainder} ->
error_msg =
dgettext(
"errors",
"Invalid number of copies, must be between 1 and %{max}. Was %{multiplier}",
max: @pack_create_limit,
multiplier: multiplier
)
save_multiplier_error(socket, changeset, error_msg)
:error ->
error_msg = dgettext("errors", "Could not parse number of copies")
save_multiplier_error(socket, changeset, error_msg)
end
{:noreply, socket}
end
@spec save_multiplier_error(Socket.t(), Changeset.t(), String.t()) :: Socket.t()
defp save_multiplier_error(socket, changeset, error_msg) do
{:error, changeset} =
changeset
|> Changeset.add_error(:multiplier, error_msg)
|> Changeset.apply_action(:insert)
socket |> assign(:changeset, changeset)
end
defp create_multiple(
%{assigns: %{current_user: current_user, return_to: return_to}} = socket,
pack_params,
multiplier
) do
case Ammo.create_packs(pack_params, multiplier, current_user) do
{:ok, {count, _packs}} ->
prompt = prompt =
dngettext( dngettext(
"prompts", "prompts",
@ -182,9 +167,21 @@ defmodule CanneryWeb.PackLive.FormComponent do
) )
socket |> put_flash(:info, prompt) |> push_navigate(to: return_to) socket |> put_flash(:info, prompt) |> push_navigate(to: return_to)
else
{:error, %Changeset{} = changeset} -> {:error, %Changeset{} = changeset} ->
socket |> assign(changeset: changeset) socket |> assign(changeset: changeset)
end
:error ->
error_msg = dgettext("errors", "Could not parse number of copies")
{:error, changeset} =
changeset
|> Changeset.add_error(:multiplier, error_msg)
|> Changeset.apply_action(:insert)
socket |> assign(:changeset, changeset)
end
{:noreply, socket}
end end
end end

View File

@ -19,8 +19,23 @@
<%= changeset_errors(@changeset) %> <%= changeset_errors(@changeset) %>
</div> </div>
<%= label(f, :class, gettext("Class"), class: "title text-lg text-primary-600") %>
<%= select(
f,
:class,
[
{gettext("Any"), :all},
{gettext("Rifle"), :rifle},
{gettext("Shotgun"), :shotgun},
{gettext("Pistol"), :pistol}
],
class: "text-center col-span-2 input input-primary",
value: @class
) %>
<%= error_tag(f, :class, "col-span-3 text-center") %>
<%= label(f, :type_id, gettext("Type"), class: "title text-lg text-primary-600") %> <%= label(f, :type_id, gettext("Type"), class: "title text-lg text-primary-600") %>
<%= select(f, :type_id, type_options(@types), <%= select(f, :type_id, type_options(@types, @class),
class: "text-center col-span-2 input input-primary", class: "text-center col-span-2 input input-primary",
id: "pack-form-type-select", id: "pack-form-type-select",
phx_hook: "SlimSelect" phx_hook: "SlimSelect"
@ -80,7 +95,6 @@
<%= label(f, :multiplier, gettext("Copies"), class: "title text-lg text-primary-600") %> <%= label(f, :multiplier, gettext("Copies"), class: "title text-lg text-primary-600") %>
<%= number_input(f, :multiplier, <%= number_input(f, :multiplier,
max: @pack_create_limit,
class: "text-center input input-primary", class: "text-center input input-primary",
value: 1, value: 1,
phx_update: "ignore" phx_update: "ignore"

View File

@ -118,7 +118,7 @@ msgstr ""
#: lib/cannery_web/components/add_shot_record_component.html.heex:57 #: lib/cannery_web/components/add_shot_record_component.html.heex:57
#: lib/cannery_web/live/container_live/form_component.html.heex:59 #: lib/cannery_web/live/container_live/form_component.html.heex:59
#: lib/cannery_web/live/invite_live/form_component.html.heex:38 #: lib/cannery_web/live/invite_live/form_component.html.heex:38
#: lib/cannery_web/live/pack_live/form_component.html.heex:96 #: lib/cannery_web/live/pack_live/form_component.html.heex:110
#: lib/cannery_web/live/range_live/form_component.html.heex:45 #: lib/cannery_web/live/range_live/form_component.html.heex:45
#: lib/cannery_web/live/tag_live/form_component.html.heex:41 #: lib/cannery_web/live/tag_live/form_component.html.heex:41
#: lib/cannery_web/live/type_live/form_component.html.heex:386 #: lib/cannery_web/live/type_live/form_component.html.heex:386
@ -178,7 +178,7 @@ msgstr ""
msgid "add a container first" msgid "add a container first"
msgstr "" msgstr ""
#: lib/cannery_web/live/pack_live/form_component.html.heex:89 #: lib/cannery_web/live/pack_live/form_component.html.heex:103
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Create" msgid "Create"
msgstr "" msgstr ""

View File

@ -131,7 +131,7 @@ msgstr "Passwort zurücksetzen"
#: lib/cannery_web/components/add_shot_record_component.html.heex:57 #: lib/cannery_web/components/add_shot_record_component.html.heex:57
#: lib/cannery_web/live/container_live/form_component.html.heex:59 #: lib/cannery_web/live/container_live/form_component.html.heex:59
#: lib/cannery_web/live/invite_live/form_component.html.heex:38 #: lib/cannery_web/live/invite_live/form_component.html.heex:38
#: lib/cannery_web/live/pack_live/form_component.html.heex:96 #: lib/cannery_web/live/pack_live/form_component.html.heex:110
#: lib/cannery_web/live/range_live/form_component.html.heex:45 #: lib/cannery_web/live/range_live/form_component.html.heex:45
#: lib/cannery_web/live/tag_live/form_component.html.heex:41 #: lib/cannery_web/live/tag_live/form_component.html.heex:41
#: lib/cannery_web/live/type_live/form_component.html.heex:386 #: lib/cannery_web/live/type_live/form_component.html.heex:386
@ -191,7 +191,7 @@ msgstr "In die Zwischenablage kopieren"
msgid "add a container first" msgid "add a container first"
msgstr "Zuerst einen Behälter hinzufügen" msgstr "Zuerst einen Behälter hinzufügen"
#: lib/cannery_web/live/pack_live/form_component.html.heex:89 #: lib/cannery_web/live/pack_live/form_component.html.heex:103
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Create" msgid "Create"
msgstr "Erstellen" msgstr "Erstellen"

View File

@ -86,7 +86,7 @@ msgstr "Gehäusematerial"
#: lib/cannery_web/components/move_pack_component.ex:64 #: lib/cannery_web/components/move_pack_component.ex:64
#: lib/cannery_web/components/pack_table_component.ex:76 #: lib/cannery_web/components/pack_table_component.ex:76
#: lib/cannery_web/live/pack_live/form_component.html.heex:69 #: lib/cannery_web/live/pack_live/form_component.html.heex:84
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Container" msgid "Container"
msgstr "Behälter" msgstr "Behälter"
@ -106,7 +106,7 @@ msgid "Corrosive"
msgstr "Korrosiv" msgstr "Korrosiv"
#: lib/cannery_web/components/pack_table_component.ex:104 #: lib/cannery_web/components/pack_table_component.ex:104
#: lib/cannery_web/live/pack_live/form_component.html.heex:30 #: lib/cannery_web/live/pack_live/form_component.html.heex:45
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Count" msgid "Count"
msgstr "Anzahl" msgstr "Anzahl"
@ -280,7 +280,7 @@ msgstr "Keine Tags"
#: lib/cannery_web/components/add_shot_record_component.html.heex:38 #: lib/cannery_web/components/add_shot_record_component.html.heex:38
#: lib/cannery_web/components/shot_record_table_component.ex:46 #: lib/cannery_web/components/shot_record_table_component.ex:46
#: lib/cannery_web/live/pack_live/form_component.html.heex:60 #: lib/cannery_web/live/pack_live/form_component.html.heex:75
#: lib/cannery_web/live/pack_live/show.ex:90 #: lib/cannery_web/live/pack_live/show.ex:90
#: lib/cannery_web/live/range_live/form_component.html.heex:30 #: lib/cannery_web/live/range_live/form_component.html.heex:30
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
@ -305,7 +305,7 @@ msgid "Pressure"
msgstr "Druck" msgstr "Druck"
#: lib/cannery_web/components/pack_table_component.ex:92 #: lib/cannery_web/components/pack_table_component.ex:92
#: lib/cannery_web/live/pack_live/form_component.html.heex:37 #: lib/cannery_web/live/pack_live/form_component.html.heex:52
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Price paid" msgid "Price paid"
msgstr "Kaufpreis" msgstr "Kaufpreis"
@ -393,7 +393,7 @@ msgstr "Leuchtspur"
#: lib/cannery_web/components/move_pack_component.ex:65 #: lib/cannery_web/components/move_pack_component.ex:65
#: lib/cannery_web/components/pack_table_component.ex:108 #: lib/cannery_web/components/pack_table_component.ex:108
#: lib/cannery_web/live/container_live/form_component.html.heex:40 #: lib/cannery_web/live/container_live/form_component.html.heex:40
#: lib/cannery_web/live/pack_live/form_component.html.heex:22 #: lib/cannery_web/live/pack_live/form_component.html.heex:37
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Type" msgid "Type"
msgstr "Art" msgstr "Art"
@ -653,7 +653,7 @@ msgstr "Passwort zurücksetzen"
msgid "Record Shots" msgid "Record Shots"
msgstr "Schüsse dokumentieren" msgstr "Schüsse dokumentieren"
#: lib/cannery_web/live/pack_live/form_component.html.heex:81 #: lib/cannery_web/live/pack_live/form_component.html.heex:96
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Copies" msgid "Copies"
msgstr "Kopien" msgstr "Kopien"
@ -979,7 +979,7 @@ msgid "Never used"
msgstr "" msgstr ""
#: lib/cannery_web/components/pack_table_component.ex:71 #: lib/cannery_web/components/pack_table_component.ex:71
#: lib/cannery_web/live/pack_live/form_component.html.heex:52 #: lib/cannery_web/live/pack_live/form_component.html.heex:67
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Purchased on" msgid "Purchased on"
msgstr "" msgstr ""
@ -1265,6 +1265,7 @@ msgid "None specified"
msgstr "" msgstr ""
#: lib/cannery_web/live/container_live/show.html.heex:100 #: lib/cannery_web/live/container_live/show.html.heex:100
#: lib/cannery_web/live/pack_live/form_component.html.heex:30
#: lib/cannery_web/live/pack_live/index.html.heex:61 #: lib/cannery_web/live/pack_live/index.html.heex:61
#: lib/cannery_web/live/range_live/index.html.heex:94 #: lib/cannery_web/live/range_live/index.html.heex:94
#: lib/cannery_web/live/type_live/form_component.html.heex:28 #: lib/cannery_web/live/type_live/form_component.html.heex:28
@ -1290,6 +1291,7 @@ msgid "Projectile"
msgstr "" msgstr ""
#: lib/cannery_web/live/container_live/show.html.heex:98 #: lib/cannery_web/live/container_live/show.html.heex:98
#: lib/cannery_web/live/pack_live/form_component.html.heex:28
#: lib/cannery_web/live/pack_live/index.html.heex:59 #: lib/cannery_web/live/pack_live/index.html.heex:59
#: lib/cannery_web/live/range_live/index.html.heex:92 #: lib/cannery_web/live/range_live/index.html.heex:92
#: lib/cannery_web/live/type_live/form_component.html.heex:26 #: lib/cannery_web/live/type_live/form_component.html.heex:26
@ -1344,6 +1346,7 @@ msgid "Shot type:"
msgstr "" msgstr ""
#: lib/cannery_web/live/container_live/show.html.heex:99 #: lib/cannery_web/live/container_live/show.html.heex:99
#: lib/cannery_web/live/pack_live/form_component.html.heex:29
#: lib/cannery_web/live/pack_live/index.html.heex:60 #: lib/cannery_web/live/pack_live/index.html.heex:60
#: lib/cannery_web/live/range_live/index.html.heex:93 #: lib/cannery_web/live/range_live/index.html.heex:93
#: lib/cannery_web/live/type_live/form_component.html.heex:27 #: lib/cannery_web/live/type_live/form_component.html.heex:27
@ -1388,6 +1391,7 @@ msgstr ""
#: lib/cannery_web/components/type_table_component.ex:149 #: lib/cannery_web/components/type_table_component.ex:149
#: lib/cannery_web/live/container_live/show.html.heex:91 #: lib/cannery_web/live/container_live/show.html.heex:91
#: lib/cannery_web/live/pack_live/form_component.html.heex:22
#: lib/cannery_web/live/pack_live/index.html.heex:50 #: lib/cannery_web/live/pack_live/index.html.heex:50
#: lib/cannery_web/live/range_live/index.html.heex:83 #: lib/cannery_web/live/range_live/index.html.heex:83
#: lib/cannery_web/live/type_live/form_component.html.heex:21 #: lib/cannery_web/live/type_live/form_component.html.heex:21
@ -1433,7 +1437,7 @@ msgid "No Types"
msgstr "Art" msgstr "Art"
#: lib/cannery_web/components/pack_table_component.ex:84 #: lib/cannery_web/components/pack_table_component.ex:84
#: lib/cannery_web/live/pack_live/form_component.html.heex:44 #: lib/cannery_web/live/pack_live/form_component.html.heex:59
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Lot number" msgid "Lot number"
msgstr "" msgstr ""
@ -1442,3 +1446,8 @@ msgstr ""
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Lot number:" msgid "Lot number:"
msgstr "" msgstr ""
#: lib/cannery_web/live/pack_live/form_component.html.heex:27
#, elixir-autogen, elixir-format
msgid "Any"
msgstr ""

View File

@ -158,23 +158,18 @@ msgstr ""
msgid "Tag could not be removed" msgid "Tag could not be removed"
msgstr "Tag konnte nicht gelöscht werden" msgstr "Tag konnte nicht gelöscht werden"
#: lib/cannery_web/live/pack_live/form_component.ex:152 #: lib/cannery_web/live/pack_live/form_component.ex:175
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Could not parse number of copies" msgid "Could not parse number of copies"
msgstr "Konnte die Anzahl der Kopien nicht verstehen" msgstr "Konnte die Anzahl der Kopien nicht verstehen"
#: lib/cannery_web/live/pack_live/form_component.ex:142 #: lib/cannery/ammo.ex:1028
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Invalid number of copies, must be between 1 and %{max}. Was %{multiplier}" msgid "Invalid number of copies, must be between 1 and %{max}. Was %{multiplier}"
msgstr "" msgstr ""
"Ungültige Nummer an Kopien. Muss zwischen 1 and %{max} liegen. War " "Ungültige Nummer an Kopien. Muss zwischen 1 and %{max} liegen. War "
"%{multiplier}" "%{multiplier}"
#: lib/cannery/ammo.ex:974
#, elixir-autogen, elixir-format
msgid "Invalid multiplier"
msgstr ""
#: lib/cannery_web/live/range_live/index.html.heex:71 #: lib/cannery_web/live/range_live/index.html.heex:71
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Your browser does not support the canvas element." msgid "Your browser does not support the canvas element."
@ -205,11 +200,6 @@ msgstr "Anzahl muss weniger als %{count} betragen"
msgid "can't be blank" msgid "can't be blank"
msgstr "" msgstr ""
#: lib/cannery/ammo/pack.ex:100
#, elixir-autogen, elixir-format, fuzzy
msgid "Please select a type and container"
msgstr ""
#: lib/cannery_web/controllers/error_html.ex:11 #: lib/cannery_web/controllers/error_html.ex:11
#: lib/cannery_web/controllers/error_json.ex:9 #: lib/cannery_web/controllers/error_json.ex:9
#, elixir-autogen, elixir-format, fuzzy #, elixir-autogen, elixir-format, fuzzy
@ -225,3 +215,13 @@ msgstr ""
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "You must log in to access this page." msgid "You must log in to access this page."
msgstr "" msgstr ""
#: lib/cannery/ammo/pack.ex:104
#, elixir-autogen, elixir-format, fuzzy
msgid "Please select a valid container"
msgstr ""
#: lib/cannery/ammo/pack.ex:102
#, elixir-autogen, elixir-format, fuzzy
msgid "Please select a valid type"
msgstr ""

View File

@ -131,7 +131,7 @@ msgstr "Bitte überprüfen Sie ihre Mailbox und bestätigen Sie das Nutzerkonto"
#: lib/cannery_web/components/add_shot_record_component.html.heex:59 #: lib/cannery_web/components/add_shot_record_component.html.heex:59
#: lib/cannery_web/live/container_live/form_component.html.heex:61 #: lib/cannery_web/live/container_live/form_component.html.heex:61
#: lib/cannery_web/live/invite_live/form_component.html.heex:40 #: lib/cannery_web/live/invite_live/form_component.html.heex:40
#: lib/cannery_web/live/pack_live/form_component.html.heex:97 #: lib/cannery_web/live/pack_live/form_component.html.heex:111
#: lib/cannery_web/live/range_live/form_component.html.heex:47 #: lib/cannery_web/live/range_live/form_component.html.heex:47
#: lib/cannery_web/live/tag_live/form_component.html.heex:43 #: lib/cannery_web/live/tag_live/form_component.html.heex:43
#: lib/cannery_web/live/type_live/form_component.html.heex:387 #: lib/cannery_web/live/type_live/form_component.html.heex:387
@ -219,7 +219,7 @@ msgstr "%{name} erfolgreich entfernt"
msgid "You'll need to" msgid "You'll need to"
msgstr "Sie müssen" msgstr "Sie müssen"
#: lib/cannery_web/live/pack_live/form_component.html.heex:90 #: lib/cannery_web/live/pack_live/form_component.html.heex:104
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Creating..." msgid "Creating..."
msgstr "Erstellen..." msgstr "Erstellen..."
@ -245,12 +245,12 @@ msgstr "Munitionsgruppe erfolgreich gelöscht"
msgid "Ammo unstaged succesfully" msgid "Ammo unstaged succesfully"
msgstr "Munition erfolgreich demarkiert" msgstr "Munition erfolgreich demarkiert"
#: lib/cannery_web/live/pack_live/form_component.ex:118 #: lib/cannery_web/live/pack_live/form_component.ex:141
#, elixir-autogen, elixir-format, fuzzy #, elixir-autogen, elixir-format, fuzzy
msgid "Ammo updated successfully" msgid "Ammo updated successfully"
msgstr "Munitionsgruppe erfolgreich aktualisiert" msgstr "Munitionsgruppe erfolgreich aktualisiert"
#: lib/cannery_web/live/pack_live/form_component.ex:177 #: lib/cannery_web/live/pack_live/form_component.ex:162
#, elixir-autogen, elixir-format, fuzzy #, elixir-autogen, elixir-format, fuzzy
msgid "Ammo added successfully" msgid "Ammo added successfully"
msgid_plural "Ammo added successfully" msgid_plural "Ammo added successfully"

View File

@ -82,7 +82,7 @@ msgstr ""
#: lib/cannery_web/components/move_pack_component.ex:64 #: lib/cannery_web/components/move_pack_component.ex:64
#: lib/cannery_web/components/pack_table_component.ex:76 #: lib/cannery_web/components/pack_table_component.ex:76
#: lib/cannery_web/live/pack_live/form_component.html.heex:69 #: lib/cannery_web/live/pack_live/form_component.html.heex:84
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Container" msgid "Container"
msgstr "" msgstr ""
@ -102,7 +102,7 @@ msgid "Corrosive"
msgstr "" msgstr ""
#: lib/cannery_web/components/pack_table_component.ex:104 #: lib/cannery_web/components/pack_table_component.ex:104
#: lib/cannery_web/live/pack_live/form_component.html.heex:30 #: lib/cannery_web/live/pack_live/form_component.html.heex:45
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Count" msgid "Count"
msgstr "" msgstr ""
@ -276,7 +276,7 @@ msgstr ""
#: lib/cannery_web/components/add_shot_record_component.html.heex:38 #: lib/cannery_web/components/add_shot_record_component.html.heex:38
#: lib/cannery_web/components/shot_record_table_component.ex:46 #: lib/cannery_web/components/shot_record_table_component.ex:46
#: lib/cannery_web/live/pack_live/form_component.html.heex:60 #: lib/cannery_web/live/pack_live/form_component.html.heex:75
#: lib/cannery_web/live/pack_live/show.ex:90 #: lib/cannery_web/live/pack_live/show.ex:90
#: lib/cannery_web/live/range_live/form_component.html.heex:30 #: lib/cannery_web/live/range_live/form_component.html.heex:30
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
@ -301,7 +301,7 @@ msgid "Pressure"
msgstr "" msgstr ""
#: lib/cannery_web/components/pack_table_component.ex:92 #: lib/cannery_web/components/pack_table_component.ex:92
#: lib/cannery_web/live/pack_live/form_component.html.heex:37 #: lib/cannery_web/live/pack_live/form_component.html.heex:52
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Price paid" msgid "Price paid"
msgstr "" msgstr ""
@ -387,7 +387,7 @@ msgstr ""
#: lib/cannery_web/components/move_pack_component.ex:65 #: lib/cannery_web/components/move_pack_component.ex:65
#: lib/cannery_web/components/pack_table_component.ex:108 #: lib/cannery_web/components/pack_table_component.ex:108
#: lib/cannery_web/live/container_live/form_component.html.heex:40 #: lib/cannery_web/live/container_live/form_component.html.heex:40
#: lib/cannery_web/live/pack_live/form_component.html.heex:22 #: lib/cannery_web/live/pack_live/form_component.html.heex:37
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Type" msgid "Type"
msgstr "" msgstr ""
@ -647,7 +647,7 @@ msgstr ""
msgid "Record Shots" msgid "Record Shots"
msgstr "" msgstr ""
#: lib/cannery_web/live/pack_live/form_component.html.heex:81 #: lib/cannery_web/live/pack_live/form_component.html.heex:96
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Copies" msgid "Copies"
msgstr "" msgstr ""
@ -973,7 +973,7 @@ msgid "Never used"
msgstr "" msgstr ""
#: lib/cannery_web/components/pack_table_component.ex:71 #: lib/cannery_web/components/pack_table_component.ex:71
#: lib/cannery_web/live/pack_live/form_component.html.heex:52 #: lib/cannery_web/live/pack_live/form_component.html.heex:67
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Purchased on" msgid "Purchased on"
msgstr "" msgstr ""
@ -1248,6 +1248,7 @@ msgid "None specified"
msgstr "" msgstr ""
#: lib/cannery_web/live/container_live/show.html.heex:100 #: lib/cannery_web/live/container_live/show.html.heex:100
#: lib/cannery_web/live/pack_live/form_component.html.heex:30
#: lib/cannery_web/live/pack_live/index.html.heex:61 #: lib/cannery_web/live/pack_live/index.html.heex:61
#: lib/cannery_web/live/range_live/index.html.heex:94 #: lib/cannery_web/live/range_live/index.html.heex:94
#: lib/cannery_web/live/type_live/form_component.html.heex:28 #: lib/cannery_web/live/type_live/form_component.html.heex:28
@ -1273,6 +1274,7 @@ msgid "Projectile"
msgstr "" msgstr ""
#: lib/cannery_web/live/container_live/show.html.heex:98 #: lib/cannery_web/live/container_live/show.html.heex:98
#: lib/cannery_web/live/pack_live/form_component.html.heex:28
#: lib/cannery_web/live/pack_live/index.html.heex:59 #: lib/cannery_web/live/pack_live/index.html.heex:59
#: lib/cannery_web/live/range_live/index.html.heex:92 #: lib/cannery_web/live/range_live/index.html.heex:92
#: lib/cannery_web/live/type_live/form_component.html.heex:26 #: lib/cannery_web/live/type_live/form_component.html.heex:26
@ -1327,6 +1329,7 @@ msgid "Shot type:"
msgstr "" msgstr ""
#: lib/cannery_web/live/container_live/show.html.heex:99 #: lib/cannery_web/live/container_live/show.html.heex:99
#: lib/cannery_web/live/pack_live/form_component.html.heex:29
#: lib/cannery_web/live/pack_live/index.html.heex:60 #: lib/cannery_web/live/pack_live/index.html.heex:60
#: lib/cannery_web/live/range_live/index.html.heex:93 #: lib/cannery_web/live/range_live/index.html.heex:93
#: lib/cannery_web/live/type_live/form_component.html.heex:27 #: lib/cannery_web/live/type_live/form_component.html.heex:27
@ -1371,6 +1374,7 @@ msgstr ""
#: lib/cannery_web/components/type_table_component.ex:149 #: lib/cannery_web/components/type_table_component.ex:149
#: lib/cannery_web/live/container_live/show.html.heex:91 #: lib/cannery_web/live/container_live/show.html.heex:91
#: lib/cannery_web/live/pack_live/form_component.html.heex:22
#: lib/cannery_web/live/pack_live/index.html.heex:50 #: lib/cannery_web/live/pack_live/index.html.heex:50
#: lib/cannery_web/live/range_live/index.html.heex:83 #: lib/cannery_web/live/range_live/index.html.heex:83
#: lib/cannery_web/live/type_live/form_component.html.heex:21 #: lib/cannery_web/live/type_live/form_component.html.heex:21
@ -1416,7 +1420,7 @@ msgid "No Types"
msgstr "" msgstr ""
#: lib/cannery_web/components/pack_table_component.ex:84 #: lib/cannery_web/components/pack_table_component.ex:84
#: lib/cannery_web/live/pack_live/form_component.html.heex:44 #: lib/cannery_web/live/pack_live/form_component.html.heex:59
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Lot number" msgid "Lot number"
msgstr "" msgstr ""
@ -1425,3 +1429,8 @@ msgstr ""
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Lot number:" msgid "Lot number:"
msgstr "" msgstr ""
#: lib/cannery_web/live/pack_live/form_component.html.heex:27
#, elixir-autogen, elixir-format
msgid "Any"
msgstr ""

View File

@ -118,7 +118,7 @@ msgstr ""
#: lib/cannery_web/components/add_shot_record_component.html.heex:57 #: lib/cannery_web/components/add_shot_record_component.html.heex:57
#: lib/cannery_web/live/container_live/form_component.html.heex:59 #: lib/cannery_web/live/container_live/form_component.html.heex:59
#: lib/cannery_web/live/invite_live/form_component.html.heex:38 #: lib/cannery_web/live/invite_live/form_component.html.heex:38
#: lib/cannery_web/live/pack_live/form_component.html.heex:96 #: lib/cannery_web/live/pack_live/form_component.html.heex:110
#: lib/cannery_web/live/range_live/form_component.html.heex:45 #: lib/cannery_web/live/range_live/form_component.html.heex:45
#: lib/cannery_web/live/tag_live/form_component.html.heex:41 #: lib/cannery_web/live/tag_live/form_component.html.heex:41
#: lib/cannery_web/live/type_live/form_component.html.heex:386 #: lib/cannery_web/live/type_live/form_component.html.heex:386
@ -178,7 +178,7 @@ msgstr ""
msgid "add a container first" msgid "add a container first"
msgstr "" msgstr ""
#: lib/cannery_web/live/pack_live/form_component.html.heex:89 #: lib/cannery_web/live/pack_live/form_component.html.heex:103
#, elixir-autogen, elixir-format, fuzzy #, elixir-autogen, elixir-format, fuzzy
msgid "Create" msgid "Create"
msgstr "" msgstr ""

View File

@ -82,7 +82,7 @@ msgstr ""
#: lib/cannery_web/components/move_pack_component.ex:64 #: lib/cannery_web/components/move_pack_component.ex:64
#: lib/cannery_web/components/pack_table_component.ex:76 #: lib/cannery_web/components/pack_table_component.ex:76
#: lib/cannery_web/live/pack_live/form_component.html.heex:69 #: lib/cannery_web/live/pack_live/form_component.html.heex:84
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Container" msgid "Container"
msgstr "" msgstr ""
@ -102,7 +102,7 @@ msgid "Corrosive"
msgstr "" msgstr ""
#: lib/cannery_web/components/pack_table_component.ex:104 #: lib/cannery_web/components/pack_table_component.ex:104
#: lib/cannery_web/live/pack_live/form_component.html.heex:30 #: lib/cannery_web/live/pack_live/form_component.html.heex:45
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Count" msgid "Count"
msgstr "" msgstr ""
@ -276,7 +276,7 @@ msgstr ""
#: lib/cannery_web/components/add_shot_record_component.html.heex:38 #: lib/cannery_web/components/add_shot_record_component.html.heex:38
#: lib/cannery_web/components/shot_record_table_component.ex:46 #: lib/cannery_web/components/shot_record_table_component.ex:46
#: lib/cannery_web/live/pack_live/form_component.html.heex:60 #: lib/cannery_web/live/pack_live/form_component.html.heex:75
#: lib/cannery_web/live/pack_live/show.ex:90 #: lib/cannery_web/live/pack_live/show.ex:90
#: lib/cannery_web/live/range_live/form_component.html.heex:30 #: lib/cannery_web/live/range_live/form_component.html.heex:30
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
@ -301,7 +301,7 @@ msgid "Pressure"
msgstr "" msgstr ""
#: lib/cannery_web/components/pack_table_component.ex:92 #: lib/cannery_web/components/pack_table_component.ex:92
#: lib/cannery_web/live/pack_live/form_component.html.heex:37 #: lib/cannery_web/live/pack_live/form_component.html.heex:52
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Price paid" msgid "Price paid"
msgstr "" msgstr ""
@ -387,7 +387,7 @@ msgstr ""
#: lib/cannery_web/components/move_pack_component.ex:65 #: lib/cannery_web/components/move_pack_component.ex:65
#: lib/cannery_web/components/pack_table_component.ex:108 #: lib/cannery_web/components/pack_table_component.ex:108
#: lib/cannery_web/live/container_live/form_component.html.heex:40 #: lib/cannery_web/live/container_live/form_component.html.heex:40
#: lib/cannery_web/live/pack_live/form_component.html.heex:22 #: lib/cannery_web/live/pack_live/form_component.html.heex:37
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Type" msgid "Type"
msgstr "" msgstr ""
@ -647,7 +647,7 @@ msgstr ""
msgid "Record Shots" msgid "Record Shots"
msgstr "" msgstr ""
#: lib/cannery_web/live/pack_live/form_component.html.heex:81 #: lib/cannery_web/live/pack_live/form_component.html.heex:96
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Copies" msgid "Copies"
msgstr "" msgstr ""
@ -973,7 +973,7 @@ msgid "Never used"
msgstr "" msgstr ""
#: lib/cannery_web/components/pack_table_component.ex:71 #: lib/cannery_web/components/pack_table_component.ex:71
#: lib/cannery_web/live/pack_live/form_component.html.heex:52 #: lib/cannery_web/live/pack_live/form_component.html.heex:67
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Purchased on" msgid "Purchased on"
msgstr "" msgstr ""
@ -1248,6 +1248,7 @@ msgid "None specified"
msgstr "" msgstr ""
#: lib/cannery_web/live/container_live/show.html.heex:100 #: lib/cannery_web/live/container_live/show.html.heex:100
#: lib/cannery_web/live/pack_live/form_component.html.heex:30
#: lib/cannery_web/live/pack_live/index.html.heex:61 #: lib/cannery_web/live/pack_live/index.html.heex:61
#: lib/cannery_web/live/range_live/index.html.heex:94 #: lib/cannery_web/live/range_live/index.html.heex:94
#: lib/cannery_web/live/type_live/form_component.html.heex:28 #: lib/cannery_web/live/type_live/form_component.html.heex:28
@ -1273,6 +1274,7 @@ msgid "Projectile"
msgstr "" msgstr ""
#: lib/cannery_web/live/container_live/show.html.heex:98 #: lib/cannery_web/live/container_live/show.html.heex:98
#: lib/cannery_web/live/pack_live/form_component.html.heex:28
#: lib/cannery_web/live/pack_live/index.html.heex:59 #: lib/cannery_web/live/pack_live/index.html.heex:59
#: lib/cannery_web/live/range_live/index.html.heex:92 #: lib/cannery_web/live/range_live/index.html.heex:92
#: lib/cannery_web/live/type_live/form_component.html.heex:26 #: lib/cannery_web/live/type_live/form_component.html.heex:26
@ -1327,6 +1329,7 @@ msgid "Shot type:"
msgstr "" msgstr ""
#: lib/cannery_web/live/container_live/show.html.heex:99 #: lib/cannery_web/live/container_live/show.html.heex:99
#: lib/cannery_web/live/pack_live/form_component.html.heex:29
#: lib/cannery_web/live/pack_live/index.html.heex:60 #: lib/cannery_web/live/pack_live/index.html.heex:60
#: lib/cannery_web/live/range_live/index.html.heex:93 #: lib/cannery_web/live/range_live/index.html.heex:93
#: lib/cannery_web/live/type_live/form_component.html.heex:27 #: lib/cannery_web/live/type_live/form_component.html.heex:27
@ -1371,6 +1374,7 @@ msgstr ""
#: lib/cannery_web/components/type_table_component.ex:149 #: lib/cannery_web/components/type_table_component.ex:149
#: lib/cannery_web/live/container_live/show.html.heex:91 #: lib/cannery_web/live/container_live/show.html.heex:91
#: lib/cannery_web/live/pack_live/form_component.html.heex:22
#: lib/cannery_web/live/pack_live/index.html.heex:50 #: lib/cannery_web/live/pack_live/index.html.heex:50
#: lib/cannery_web/live/range_live/index.html.heex:83 #: lib/cannery_web/live/range_live/index.html.heex:83
#: lib/cannery_web/live/type_live/form_component.html.heex:21 #: lib/cannery_web/live/type_live/form_component.html.heex:21
@ -1416,7 +1420,7 @@ msgid "No Types"
msgstr "" msgstr ""
#: lib/cannery_web/components/pack_table_component.ex:84 #: lib/cannery_web/components/pack_table_component.ex:84
#: lib/cannery_web/live/pack_live/form_component.html.heex:44 #: lib/cannery_web/live/pack_live/form_component.html.heex:59
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Lot number" msgid "Lot number"
msgstr "" msgstr ""
@ -1425,3 +1429,8 @@ msgstr ""
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Lot number:" msgid "Lot number:"
msgstr "" msgstr ""
#: lib/cannery_web/live/pack_live/form_component.html.heex:27
#, elixir-autogen, elixir-format
msgid "Any"
msgstr ""

View File

@ -143,21 +143,16 @@ msgstr ""
msgid "Tag could not be removed" msgid "Tag could not be removed"
msgstr "" msgstr ""
#: lib/cannery_web/live/pack_live/form_component.ex:152 #: lib/cannery_web/live/pack_live/form_component.ex:175
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Could not parse number of copies" msgid "Could not parse number of copies"
msgstr "" msgstr ""
#: lib/cannery_web/live/pack_live/form_component.ex:142 #: lib/cannery/ammo.ex:1028
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Invalid number of copies, must be between 1 and %{max}. Was %{multiplier}" msgid "Invalid number of copies, must be between 1 and %{max}. Was %{multiplier}"
msgstr "" msgstr ""
#: lib/cannery/ammo.ex:974
#, elixir-autogen, elixir-format
msgid "Invalid multiplier"
msgstr ""
#: lib/cannery_web/live/range_live/index.html.heex:71 #: lib/cannery_web/live/range_live/index.html.heex:71
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Your browser does not support the canvas element." msgid "Your browser does not support the canvas element."
@ -188,11 +183,6 @@ msgstr ""
msgid "can't be blank" msgid "can't be blank"
msgstr "" msgstr ""
#: lib/cannery/ammo/pack.ex:100
#, elixir-autogen, elixir-format, fuzzy
msgid "Please select a type and container"
msgstr ""
#: lib/cannery_web/controllers/error_html.ex:11 #: lib/cannery_web/controllers/error_html.ex:11
#: lib/cannery_web/controllers/error_json.ex:9 #: lib/cannery_web/controllers/error_json.ex:9
#, elixir-autogen, elixir-format, fuzzy #, elixir-autogen, elixir-format, fuzzy
@ -208,3 +198,13 @@ msgstr ""
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "You must log in to access this page." msgid "You must log in to access this page."
msgstr "" msgstr ""
#: lib/cannery/ammo/pack.ex:104
#, elixir-autogen, elixir-format, fuzzy
msgid "Please select a valid container"
msgstr ""
#: lib/cannery/ammo/pack.ex:102
#, elixir-autogen, elixir-format, fuzzy
msgid "Please select a valid type"
msgstr ""

View File

@ -112,7 +112,7 @@ msgstr ""
#: lib/cannery_web/components/add_shot_record_component.html.heex:59 #: lib/cannery_web/components/add_shot_record_component.html.heex:59
#: lib/cannery_web/live/container_live/form_component.html.heex:61 #: lib/cannery_web/live/container_live/form_component.html.heex:61
#: lib/cannery_web/live/invite_live/form_component.html.heex:40 #: lib/cannery_web/live/invite_live/form_component.html.heex:40
#: lib/cannery_web/live/pack_live/form_component.html.heex:97 #: lib/cannery_web/live/pack_live/form_component.html.heex:111
#: lib/cannery_web/live/range_live/form_component.html.heex:47 #: lib/cannery_web/live/range_live/form_component.html.heex:47
#: lib/cannery_web/live/tag_live/form_component.html.heex:43 #: lib/cannery_web/live/tag_live/form_component.html.heex:43
#: lib/cannery_web/live/type_live/form_component.html.heex:387 #: lib/cannery_web/live/type_live/form_component.html.heex:387
@ -198,7 +198,7 @@ msgstr ""
msgid "You'll need to" msgid "You'll need to"
msgstr "" msgstr ""
#: lib/cannery_web/live/pack_live/form_component.html.heex:90 #: lib/cannery_web/live/pack_live/form_component.html.heex:104
#, elixir-autogen, elixir-format, fuzzy #, elixir-autogen, elixir-format, fuzzy
msgid "Creating..." msgid "Creating..."
msgstr "" msgstr ""
@ -224,12 +224,12 @@ msgstr ""
msgid "Ammo unstaged succesfully" msgid "Ammo unstaged succesfully"
msgstr "" msgstr ""
#: lib/cannery_web/live/pack_live/form_component.ex:118 #: lib/cannery_web/live/pack_live/form_component.ex:141
#, elixir-autogen, elixir-format, fuzzy #, elixir-autogen, elixir-format, fuzzy
msgid "Ammo updated successfully" msgid "Ammo updated successfully"
msgstr "" msgstr ""
#: lib/cannery_web/live/pack_live/form_component.ex:177 #: lib/cannery_web/live/pack_live/form_component.ex:162
#, elixir-autogen, elixir-format, fuzzy #, elixir-autogen, elixir-format, fuzzy
msgid "Ammo added successfully" msgid "Ammo added successfully"
msgid_plural "Ammo added successfully" msgid_plural "Ammo added successfully"

View File

@ -142,21 +142,16 @@ msgstr ""
msgid "Tag could not be removed" msgid "Tag could not be removed"
msgstr "" msgstr ""
#: lib/cannery_web/live/pack_live/form_component.ex:152 #: lib/cannery_web/live/pack_live/form_component.ex:175
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Could not parse number of copies" msgid "Could not parse number of copies"
msgstr "" msgstr ""
#: lib/cannery_web/live/pack_live/form_component.ex:142 #: lib/cannery/ammo.ex:1028
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Invalid number of copies, must be between 1 and %{max}. Was %{multiplier}" msgid "Invalid number of copies, must be between 1 and %{max}. Was %{multiplier}"
msgstr "" msgstr ""
#: lib/cannery/ammo.ex:974
#, elixir-autogen, elixir-format
msgid "Invalid multiplier"
msgstr ""
#: lib/cannery_web/live/range_live/index.html.heex:71 #: lib/cannery_web/live/range_live/index.html.heex:71
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Your browser does not support the canvas element." msgid "Your browser does not support the canvas element."
@ -187,11 +182,6 @@ msgstr ""
msgid "can't be blank" msgid "can't be blank"
msgstr "" msgstr ""
#: lib/cannery/ammo/pack.ex:100
#, elixir-autogen, elixir-format
msgid "Please select a type and container"
msgstr ""
#: lib/cannery_web/controllers/error_html.ex:11 #: lib/cannery_web/controllers/error_html.ex:11
#: lib/cannery_web/controllers/error_json.ex:9 #: lib/cannery_web/controllers/error_json.ex:9
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
@ -207,3 +197,13 @@ msgstr ""
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "You must log in to access this page." msgid "You must log in to access this page."
msgstr "" msgstr ""
#: lib/cannery/ammo/pack.ex:104
#, elixir-autogen, elixir-format
msgid "Please select a valid container"
msgstr ""
#: lib/cannery/ammo/pack.ex:102
#, elixir-autogen, elixir-format
msgid "Please select a valid type"
msgstr ""

View File

@ -131,7 +131,7 @@ msgstr "Resetear contraseña"
#: lib/cannery_web/components/add_shot_record_component.html.heex:57 #: lib/cannery_web/components/add_shot_record_component.html.heex:57
#: lib/cannery_web/live/container_live/form_component.html.heex:59 #: lib/cannery_web/live/container_live/form_component.html.heex:59
#: lib/cannery_web/live/invite_live/form_component.html.heex:38 #: lib/cannery_web/live/invite_live/form_component.html.heex:38
#: lib/cannery_web/live/pack_live/form_component.html.heex:96 #: lib/cannery_web/live/pack_live/form_component.html.heex:110
#: lib/cannery_web/live/range_live/form_component.html.heex:45 #: lib/cannery_web/live/range_live/form_component.html.heex:45
#: lib/cannery_web/live/tag_live/form_component.html.heex:41 #: lib/cannery_web/live/tag_live/form_component.html.heex:41
#: lib/cannery_web/live/type_live/form_component.html.heex:386 #: lib/cannery_web/live/type_live/form_component.html.heex:386
@ -191,7 +191,7 @@ msgstr "Copiar al portapapeles"
msgid "add a container first" msgid "add a container first"
msgstr "añade primero un contenedor" msgstr "añade primero un contenedor"
#: lib/cannery_web/live/pack_live/form_component.html.heex:89 #: lib/cannery_web/live/pack_live/form_component.html.heex:103
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Create" msgid "Create"
msgstr "Crear" msgstr "Crear"

View File

@ -86,7 +86,7 @@ msgstr "Material del casquillo"
#: lib/cannery_web/components/move_pack_component.ex:64 #: lib/cannery_web/components/move_pack_component.ex:64
#: lib/cannery_web/components/pack_table_component.ex:76 #: lib/cannery_web/components/pack_table_component.ex:76
#: lib/cannery_web/live/pack_live/form_component.html.heex:69 #: lib/cannery_web/live/pack_live/form_component.html.heex:84
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Container" msgid "Container"
msgstr "Contenedor" msgstr "Contenedor"
@ -106,7 +106,7 @@ msgid "Corrosive"
msgstr "Corrosiva" msgstr "Corrosiva"
#: lib/cannery_web/components/pack_table_component.ex:104 #: lib/cannery_web/components/pack_table_component.ex:104
#: lib/cannery_web/live/pack_live/form_component.html.heex:30 #: lib/cannery_web/live/pack_live/form_component.html.heex:45
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Count" msgid "Count"
msgstr "Cantidad" msgstr "Cantidad"
@ -280,7 +280,7 @@ msgstr "Sin etiquetas"
#: lib/cannery_web/components/add_shot_record_component.html.heex:38 #: lib/cannery_web/components/add_shot_record_component.html.heex:38
#: lib/cannery_web/components/shot_record_table_component.ex:46 #: lib/cannery_web/components/shot_record_table_component.ex:46
#: lib/cannery_web/live/pack_live/form_component.html.heex:60 #: lib/cannery_web/live/pack_live/form_component.html.heex:75
#: lib/cannery_web/live/pack_live/show.ex:90 #: lib/cannery_web/live/pack_live/show.ex:90
#: lib/cannery_web/live/range_live/form_component.html.heex:30 #: lib/cannery_web/live/range_live/form_component.html.heex:30
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
@ -305,7 +305,7 @@ msgid "Pressure"
msgstr "Presión" msgstr "Presión"
#: lib/cannery_web/components/pack_table_component.ex:92 #: lib/cannery_web/components/pack_table_component.ex:92
#: lib/cannery_web/live/pack_live/form_component.html.heex:37 #: lib/cannery_web/live/pack_live/form_component.html.heex:52
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Price paid" msgid "Price paid"
msgstr "Precio pagado" msgstr "Precio pagado"
@ -394,7 +394,7 @@ msgstr "Trazadora"
#: lib/cannery_web/components/move_pack_component.ex:65 #: lib/cannery_web/components/move_pack_component.ex:65
#: lib/cannery_web/components/pack_table_component.ex:108 #: lib/cannery_web/components/pack_table_component.ex:108
#: lib/cannery_web/live/container_live/form_component.html.heex:40 #: lib/cannery_web/live/container_live/form_component.html.heex:40
#: lib/cannery_web/live/pack_live/form_component.html.heex:22 #: lib/cannery_web/live/pack_live/form_component.html.heex:37
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Type" msgid "Type"
msgstr "Tipo" msgstr "Tipo"
@ -654,7 +654,7 @@ msgstr "Reestablecer contraseña"
msgid "Record Shots" msgid "Record Shots"
msgstr "Tiros Récord" msgstr "Tiros Récord"
#: lib/cannery_web/live/pack_live/form_component.html.heex:81 #: lib/cannery_web/live/pack_live/form_component.html.heex:96
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Copies" msgid "Copies"
msgstr "Copias" msgstr "Copias"
@ -981,7 +981,7 @@ msgid "Never used"
msgstr "Nunca usada" msgstr "Nunca usada"
#: lib/cannery_web/components/pack_table_component.ex:71 #: lib/cannery_web/components/pack_table_component.ex:71
#: lib/cannery_web/live/pack_live/form_component.html.heex:52 #: lib/cannery_web/live/pack_live/form_component.html.heex:67
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Purchased on" msgid "Purchased on"
msgstr "Comprada en" msgstr "Comprada en"
@ -1267,6 +1267,7 @@ msgid "None specified"
msgstr "" msgstr ""
#: lib/cannery_web/live/container_live/show.html.heex:100 #: lib/cannery_web/live/container_live/show.html.heex:100
#: lib/cannery_web/live/pack_live/form_component.html.heex:30
#: lib/cannery_web/live/pack_live/index.html.heex:61 #: lib/cannery_web/live/pack_live/index.html.heex:61
#: lib/cannery_web/live/range_live/index.html.heex:94 #: lib/cannery_web/live/range_live/index.html.heex:94
#: lib/cannery_web/live/type_live/form_component.html.heex:28 #: lib/cannery_web/live/type_live/form_component.html.heex:28
@ -1292,6 +1293,7 @@ msgid "Projectile"
msgstr "" msgstr ""
#: lib/cannery_web/live/container_live/show.html.heex:98 #: lib/cannery_web/live/container_live/show.html.heex:98
#: lib/cannery_web/live/pack_live/form_component.html.heex:28
#: lib/cannery_web/live/pack_live/index.html.heex:59 #: lib/cannery_web/live/pack_live/index.html.heex:59
#: lib/cannery_web/live/range_live/index.html.heex:92 #: lib/cannery_web/live/range_live/index.html.heex:92
#: lib/cannery_web/live/type_live/form_component.html.heex:26 #: lib/cannery_web/live/type_live/form_component.html.heex:26
@ -1346,6 +1348,7 @@ msgid "Shot type:"
msgstr "" msgstr ""
#: lib/cannery_web/live/container_live/show.html.heex:99 #: lib/cannery_web/live/container_live/show.html.heex:99
#: lib/cannery_web/live/pack_live/form_component.html.heex:29
#: lib/cannery_web/live/pack_live/index.html.heex:60 #: lib/cannery_web/live/pack_live/index.html.heex:60
#: lib/cannery_web/live/range_live/index.html.heex:93 #: lib/cannery_web/live/range_live/index.html.heex:93
#: lib/cannery_web/live/type_live/form_component.html.heex:27 #: lib/cannery_web/live/type_live/form_component.html.heex:27
@ -1390,6 +1393,7 @@ msgstr ""
#: lib/cannery_web/components/type_table_component.ex:149 #: lib/cannery_web/components/type_table_component.ex:149
#: lib/cannery_web/live/container_live/show.html.heex:91 #: lib/cannery_web/live/container_live/show.html.heex:91
#: lib/cannery_web/live/pack_live/form_component.html.heex:22
#: lib/cannery_web/live/pack_live/index.html.heex:50 #: lib/cannery_web/live/pack_live/index.html.heex:50
#: lib/cannery_web/live/range_live/index.html.heex:83 #: lib/cannery_web/live/range_live/index.html.heex:83
#: lib/cannery_web/live/type_live/form_component.html.heex:21 #: lib/cannery_web/live/type_live/form_component.html.heex:21
@ -1435,7 +1439,7 @@ msgid "No Types"
msgstr "Tipo" msgstr "Tipo"
#: lib/cannery_web/components/pack_table_component.ex:84 #: lib/cannery_web/components/pack_table_component.ex:84
#: lib/cannery_web/live/pack_live/form_component.html.heex:44 #: lib/cannery_web/live/pack_live/form_component.html.heex:59
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Lot number" msgid "Lot number"
msgstr "" msgstr ""
@ -1444,3 +1448,8 @@ msgstr ""
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Lot number:" msgid "Lot number:"
msgstr "" msgstr ""
#: lib/cannery_web/live/pack_live/form_component.html.heex:27
#, elixir-autogen, elixir-format
msgid "Any"
msgstr ""

View File

@ -158,21 +158,16 @@ msgstr "Debe confirmar su cuenta e iniciar sesión para acceder a esta página."
msgid "Tag could not be removed" msgid "Tag could not be removed"
msgstr "La etiqueta no pudo ser eliminada" msgstr "La etiqueta no pudo ser eliminada"
#: lib/cannery_web/live/pack_live/form_component.ex:152 #: lib/cannery_web/live/pack_live/form_component.ex:175
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Could not parse number of copies" msgid "Could not parse number of copies"
msgstr "No se ha podido procesar el número de copias" msgstr "No se ha podido procesar el número de copias"
#: lib/cannery_web/live/pack_live/form_component.ex:142 #: lib/cannery/ammo.ex:1028
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Invalid number of copies, must be between 1 and %{max}. Was %{multiplier}" msgid "Invalid number of copies, must be between 1 and %{max}. Was %{multiplier}"
msgstr "Número inválido de copias, debe ser entre 1 y %{max}. Fue %{multiplier" msgstr "Número inválido de copias, debe ser entre 1 y %{max}. Fue %{multiplier"
#: lib/cannery/ammo.ex:974
#, elixir-autogen, elixir-format
msgid "Invalid multiplier"
msgstr "Multiplicador inválido"
#: lib/cannery_web/live/range_live/index.html.heex:71 #: lib/cannery_web/live/range_live/index.html.heex:71
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Your browser does not support the canvas element." msgid "Your browser does not support the canvas element."
@ -203,11 +198,6 @@ msgstr "El recuento debe ser menos de %{count}"
msgid "can't be blank" msgid "can't be blank"
msgstr "" msgstr ""
#: lib/cannery/ammo/pack.ex:100
#, elixir-autogen, elixir-format, fuzzy
msgid "Please select a type and container"
msgstr "Por favor escoja un tipo de munición y un contenedor"
#: lib/cannery_web/controllers/error_html.ex:11 #: lib/cannery_web/controllers/error_html.ex:11
#: lib/cannery_web/controllers/error_json.ex:9 #: lib/cannery_web/controllers/error_json.ex:9
#, elixir-autogen, elixir-format, fuzzy #, elixir-autogen, elixir-format, fuzzy
@ -223,3 +213,13 @@ msgstr ""
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "You must log in to access this page." msgid "You must log in to access this page."
msgstr "" msgstr ""
#: lib/cannery/ammo/pack.ex:104
#, elixir-autogen, elixir-format, fuzzy
msgid "Please select a valid container"
msgstr "Por favor escoja un tipo de munición y un contenedor"
#: lib/cannery/ammo/pack.ex:102
#, elixir-autogen, elixir-format, fuzzy
msgid "Please select a valid type"
msgstr "Por favor escoja un usuario y tipo de munición valido"

View File

@ -131,7 +131,7 @@ msgstr "Por favor chequea el correo para verificar tu cuenta"
#: lib/cannery_web/components/add_shot_record_component.html.heex:59 #: lib/cannery_web/components/add_shot_record_component.html.heex:59
#: lib/cannery_web/live/container_live/form_component.html.heex:61 #: lib/cannery_web/live/container_live/form_component.html.heex:61
#: lib/cannery_web/live/invite_live/form_component.html.heex:40 #: lib/cannery_web/live/invite_live/form_component.html.heex:40
#: lib/cannery_web/live/pack_live/form_component.html.heex:97 #: lib/cannery_web/live/pack_live/form_component.html.heex:111
#: lib/cannery_web/live/range_live/form_component.html.heex:47 #: lib/cannery_web/live/range_live/form_component.html.heex:47
#: lib/cannery_web/live/tag_live/form_component.html.heex:43 #: lib/cannery_web/live/tag_live/form_component.html.heex:43
#: lib/cannery_web/live/type_live/form_component.html.heex:387 #: lib/cannery_web/live/type_live/form_component.html.heex:387
@ -218,7 +218,7 @@ msgstr "%{name} eliminado exitosamente"
msgid "You'll need to" msgid "You'll need to"
msgstr "Necesitará hacerlo" msgstr "Necesitará hacerlo"
#: lib/cannery_web/live/pack_live/form_component.html.heex:90 #: lib/cannery_web/live/pack_live/form_component.html.heex:104
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Creating..." msgid "Creating..."
msgstr "Creando..." msgstr "Creando..."
@ -244,12 +244,12 @@ msgstr "Munición borrada exitosamente"
msgid "Ammo unstaged succesfully" msgid "Ammo unstaged succesfully"
msgstr "Munición descargada exitosamente" msgstr "Munición descargada exitosamente"
#: lib/cannery_web/live/pack_live/form_component.ex:118 #: lib/cannery_web/live/pack_live/form_component.ex:141
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Ammo updated successfully" msgid "Ammo updated successfully"
msgstr "Munición actualizada exitosamente" msgstr "Munición actualizada exitosamente"
#: lib/cannery_web/live/pack_live/form_component.ex:177 #: lib/cannery_web/live/pack_live/form_component.ex:162
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Ammo added successfully" msgid "Ammo added successfully"
msgid_plural "Ammo added successfully" msgid_plural "Ammo added successfully"

View File

@ -131,7 +131,7 @@ msgstr "Réinitialisé le mot de passe"
#: lib/cannery_web/components/add_shot_record_component.html.heex:57 #: lib/cannery_web/components/add_shot_record_component.html.heex:57
#: lib/cannery_web/live/container_live/form_component.html.heex:59 #: lib/cannery_web/live/container_live/form_component.html.heex:59
#: lib/cannery_web/live/invite_live/form_component.html.heex:38 #: lib/cannery_web/live/invite_live/form_component.html.heex:38
#: lib/cannery_web/live/pack_live/form_component.html.heex:96 #: lib/cannery_web/live/pack_live/form_component.html.heex:110
#: lib/cannery_web/live/range_live/form_component.html.heex:45 #: lib/cannery_web/live/range_live/form_component.html.heex:45
#: lib/cannery_web/live/tag_live/form_component.html.heex:41 #: lib/cannery_web/live/tag_live/form_component.html.heex:41
#: lib/cannery_web/live/type_live/form_component.html.heex:386 #: lib/cannery_web/live/type_live/form_component.html.heex:386
@ -191,7 +191,7 @@ msgstr "Copier dans le presse-papier"
msgid "add a container first" msgid "add a container first"
msgstr "ajouter un conteneur en premier" msgstr "ajouter un conteneur en premier"
#: lib/cannery_web/live/pack_live/form_component.html.heex:89 #: lib/cannery_web/live/pack_live/form_component.html.heex:103
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Create" msgid "Create"
msgstr "Créer" msgstr "Créer"

View File

@ -86,7 +86,7 @@ msgstr "Matériau de la caisse"
#: lib/cannery_web/components/move_pack_component.ex:64 #: lib/cannery_web/components/move_pack_component.ex:64
#: lib/cannery_web/components/pack_table_component.ex:76 #: lib/cannery_web/components/pack_table_component.ex:76
#: lib/cannery_web/live/pack_live/form_component.html.heex:69 #: lib/cannery_web/live/pack_live/form_component.html.heex:84
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Container" msgid "Container"
msgstr "Conteneur" msgstr "Conteneur"
@ -106,7 +106,7 @@ msgid "Corrosive"
msgstr "Corrosive" msgstr "Corrosive"
#: lib/cannery_web/components/pack_table_component.ex:104 #: lib/cannery_web/components/pack_table_component.ex:104
#: lib/cannery_web/live/pack_live/form_component.html.heex:30 #: lib/cannery_web/live/pack_live/form_component.html.heex:45
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Count" msgid "Count"
msgstr "Quantité" msgstr "Quantité"
@ -280,7 +280,7 @@ msgstr "Aucun tag"
#: lib/cannery_web/components/add_shot_record_component.html.heex:38 #: lib/cannery_web/components/add_shot_record_component.html.heex:38
#: lib/cannery_web/components/shot_record_table_component.ex:46 #: lib/cannery_web/components/shot_record_table_component.ex:46
#: lib/cannery_web/live/pack_live/form_component.html.heex:60 #: lib/cannery_web/live/pack_live/form_component.html.heex:75
#: lib/cannery_web/live/pack_live/show.ex:90 #: lib/cannery_web/live/pack_live/show.ex:90
#: lib/cannery_web/live/range_live/form_component.html.heex:30 #: lib/cannery_web/live/range_live/form_component.html.heex:30
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
@ -305,7 +305,7 @@ msgid "Pressure"
msgstr "Pression" msgstr "Pression"
#: lib/cannery_web/components/pack_table_component.ex:92 #: lib/cannery_web/components/pack_table_component.ex:92
#: lib/cannery_web/live/pack_live/form_component.html.heex:37 #: lib/cannery_web/live/pack_live/form_component.html.heex:52
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Price paid" msgid "Price paid"
msgstr "Prix payé" msgstr "Prix payé"
@ -395,7 +395,7 @@ msgstr "Traceuse"
#: lib/cannery_web/components/move_pack_component.ex:65 #: lib/cannery_web/components/move_pack_component.ex:65
#: lib/cannery_web/components/pack_table_component.ex:108 #: lib/cannery_web/components/pack_table_component.ex:108
#: lib/cannery_web/live/container_live/form_component.html.heex:40 #: lib/cannery_web/live/container_live/form_component.html.heex:40
#: lib/cannery_web/live/pack_live/form_component.html.heex:22 #: lib/cannery_web/live/pack_live/form_component.html.heex:37
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Type" msgid "Type"
msgstr "Type" msgstr "Type"
@ -655,7 +655,7 @@ msgstr "Réinitialiser votre mot de passe"
msgid "Record Shots" msgid "Record Shots"
msgstr "Enregistrer des tirs" msgstr "Enregistrer des tirs"
#: lib/cannery_web/live/pack_live/form_component.html.heex:81 #: lib/cannery_web/live/pack_live/form_component.html.heex:96
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Copies" msgid "Copies"
msgstr "Exemplaires" msgstr "Exemplaires"
@ -982,7 +982,7 @@ msgid "Never used"
msgstr "" msgstr ""
#: lib/cannery_web/components/pack_table_component.ex:71 #: lib/cannery_web/components/pack_table_component.ex:71
#: lib/cannery_web/live/pack_live/form_component.html.heex:52 #: lib/cannery_web/live/pack_live/form_component.html.heex:67
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Purchased on" msgid "Purchased on"
msgstr "" msgstr ""
@ -1268,6 +1268,7 @@ msgid "None specified"
msgstr "" msgstr ""
#: lib/cannery_web/live/container_live/show.html.heex:100 #: lib/cannery_web/live/container_live/show.html.heex:100
#: lib/cannery_web/live/pack_live/form_component.html.heex:30
#: lib/cannery_web/live/pack_live/index.html.heex:61 #: lib/cannery_web/live/pack_live/index.html.heex:61
#: lib/cannery_web/live/range_live/index.html.heex:94 #: lib/cannery_web/live/range_live/index.html.heex:94
#: lib/cannery_web/live/type_live/form_component.html.heex:28 #: lib/cannery_web/live/type_live/form_component.html.heex:28
@ -1293,6 +1294,7 @@ msgid "Projectile"
msgstr "" msgstr ""
#: lib/cannery_web/live/container_live/show.html.heex:98 #: lib/cannery_web/live/container_live/show.html.heex:98
#: lib/cannery_web/live/pack_live/form_component.html.heex:28
#: lib/cannery_web/live/pack_live/index.html.heex:59 #: lib/cannery_web/live/pack_live/index.html.heex:59
#: lib/cannery_web/live/range_live/index.html.heex:92 #: lib/cannery_web/live/range_live/index.html.heex:92
#: lib/cannery_web/live/type_live/form_component.html.heex:26 #: lib/cannery_web/live/type_live/form_component.html.heex:26
@ -1347,6 +1349,7 @@ msgid "Shot type:"
msgstr "" msgstr ""
#: lib/cannery_web/live/container_live/show.html.heex:99 #: lib/cannery_web/live/container_live/show.html.heex:99
#: lib/cannery_web/live/pack_live/form_component.html.heex:29
#: lib/cannery_web/live/pack_live/index.html.heex:60 #: lib/cannery_web/live/pack_live/index.html.heex:60
#: lib/cannery_web/live/range_live/index.html.heex:93 #: lib/cannery_web/live/range_live/index.html.heex:93
#: lib/cannery_web/live/type_live/form_component.html.heex:27 #: lib/cannery_web/live/type_live/form_component.html.heex:27
@ -1391,6 +1394,7 @@ msgstr ""
#: lib/cannery_web/components/type_table_component.ex:149 #: lib/cannery_web/components/type_table_component.ex:149
#: lib/cannery_web/live/container_live/show.html.heex:91 #: lib/cannery_web/live/container_live/show.html.heex:91
#: lib/cannery_web/live/pack_live/form_component.html.heex:22
#: lib/cannery_web/live/pack_live/index.html.heex:50 #: lib/cannery_web/live/pack_live/index.html.heex:50
#: lib/cannery_web/live/range_live/index.html.heex:83 #: lib/cannery_web/live/range_live/index.html.heex:83
#: lib/cannery_web/live/type_live/form_component.html.heex:21 #: lib/cannery_web/live/type_live/form_component.html.heex:21
@ -1436,7 +1440,7 @@ msgid "No Types"
msgstr "Type" msgstr "Type"
#: lib/cannery_web/components/pack_table_component.ex:84 #: lib/cannery_web/components/pack_table_component.ex:84
#: lib/cannery_web/live/pack_live/form_component.html.heex:44 #: lib/cannery_web/live/pack_live/form_component.html.heex:59
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Lot number" msgid "Lot number"
msgstr "" msgstr ""
@ -1445,3 +1449,8 @@ msgstr ""
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Lot number:" msgid "Lot number:"
msgstr "" msgstr ""
#: lib/cannery_web/live/pack_live/form_component.html.heex:27
#, elixir-autogen, elixir-format
msgid "Any"
msgstr ""

View File

@ -159,21 +159,16 @@ msgstr ""
msgid "Tag could not be removed" msgid "Tag could not be removed"
msgstr "Le tag na pas pu être retiré" msgstr "Le tag na pas pu être retiré"
#: lib/cannery_web/live/pack_live/form_component.ex:152 #: lib/cannery_web/live/pack_live/form_component.ex:175
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Could not parse number of copies" msgid "Could not parse number of copies"
msgstr "Impossible d'analyser le nombre de copies" msgstr "Impossible d'analyser le nombre de copies"
#: lib/cannery_web/live/pack_live/form_component.ex:142 #: lib/cannery/ammo.ex:1028
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Invalid number of copies, must be between 1 and %{max}. Was %{multiplier}" msgid "Invalid number of copies, must be between 1 and %{max}. Was %{multiplier}"
msgstr "Nombre de copies invalide, doit être 1 et %{max}. Été %{multiplier}" msgstr "Nombre de copies invalide, doit être 1 et %{max}. Été %{multiplier}"
#: lib/cannery/ammo.ex:974
#, elixir-autogen, elixir-format
msgid "Invalid multiplier"
msgstr "Multiplicateur invalide"
#: lib/cannery_web/live/range_live/index.html.heex:71 #: lib/cannery_web/live/range_live/index.html.heex:71
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Your browser does not support the canvas element." msgid "Your browser does not support the canvas element."
@ -204,11 +199,6 @@ msgstr "La quantité doit être inférieur à %{count}"
msgid "can't be blank" msgid "can't be blank"
msgstr "" msgstr ""
#: lib/cannery/ammo/pack.ex:100
#, elixir-autogen, elixir-format, fuzzy
msgid "Please select a type and container"
msgstr "Veuillez choisir un type de munitions et un conteneur"
#: lib/cannery_web/controllers/error_html.ex:11 #: lib/cannery_web/controllers/error_html.ex:11
#: lib/cannery_web/controllers/error_json.ex:9 #: lib/cannery_web/controllers/error_json.ex:9
#, elixir-autogen, elixir-format, fuzzy #, elixir-autogen, elixir-format, fuzzy
@ -224,3 +214,13 @@ msgstr ""
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "You must log in to access this page." msgid "You must log in to access this page."
msgstr "" msgstr ""
#: lib/cannery/ammo/pack.ex:104
#, elixir-autogen, elixir-format, fuzzy
msgid "Please select a valid container"
msgstr "Veuillez choisir un type de munitions et un conteneur"
#: lib/cannery/ammo/pack.ex:102
#, elixir-autogen, elixir-format, fuzzy
msgid "Please select a valid type"
msgstr "Veuillez choisir un utilisateur valide et un groupe de munitions"

View File

@ -132,7 +132,7 @@ msgstr "Veuillez vérifier votre mél pour confirmer votre compte"
#: lib/cannery_web/components/add_shot_record_component.html.heex:59 #: lib/cannery_web/components/add_shot_record_component.html.heex:59
#: lib/cannery_web/live/container_live/form_component.html.heex:61 #: lib/cannery_web/live/container_live/form_component.html.heex:61
#: lib/cannery_web/live/invite_live/form_component.html.heex:40 #: lib/cannery_web/live/invite_live/form_component.html.heex:40
#: lib/cannery_web/live/pack_live/form_component.html.heex:97 #: lib/cannery_web/live/pack_live/form_component.html.heex:111
#: lib/cannery_web/live/range_live/form_component.html.heex:47 #: lib/cannery_web/live/range_live/form_component.html.heex:47
#: lib/cannery_web/live/tag_live/form_component.html.heex:43 #: lib/cannery_web/live/tag_live/form_component.html.heex:43
#: lib/cannery_web/live/type_live/form_component.html.heex:387 #: lib/cannery_web/live/type_live/form_component.html.heex:387
@ -220,7 +220,7 @@ msgstr "%{name} retiré avec succès"
msgid "You'll need to" msgid "You'll need to"
msgstr "Vous aurez besoin de" msgstr "Vous aurez besoin de"
#: lib/cannery_web/live/pack_live/form_component.html.heex:90 #: lib/cannery_web/live/pack_live/form_component.html.heex:104
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Creating..." msgid "Creating..."
msgstr "Création en cours…" msgstr "Création en cours…"
@ -246,12 +246,12 @@ msgstr "Groupe de munition supprimé avec succès"
msgid "Ammo unstaged succesfully" msgid "Ammo unstaged succesfully"
msgstr "Groupe de munition désélectionner avec succès" msgstr "Groupe de munition désélectionner avec succès"
#: lib/cannery_web/live/pack_live/form_component.ex:118 #: lib/cannery_web/live/pack_live/form_component.ex:141
#, elixir-autogen, elixir-format, fuzzy #, elixir-autogen, elixir-format, fuzzy
msgid "Ammo updated successfully" msgid "Ammo updated successfully"
msgstr "Groupe de munition mis à jour avec succès" msgstr "Groupe de munition mis à jour avec succès"
#: lib/cannery_web/live/pack_live/form_component.ex:177 #: lib/cannery_web/live/pack_live/form_component.ex:162
#, elixir-autogen, elixir-format, fuzzy #, elixir-autogen, elixir-format, fuzzy
msgid "Ammo added successfully" msgid "Ammo added successfully"
msgid_plural "Ammo added successfully" msgid_plural "Ammo added successfully"

View File

@ -129,7 +129,7 @@ msgstr ""
#: lib/cannery_web/components/add_shot_record_component.html.heex:57 #: lib/cannery_web/components/add_shot_record_component.html.heex:57
#: lib/cannery_web/live/container_live/form_component.html.heex:59 #: lib/cannery_web/live/container_live/form_component.html.heex:59
#: lib/cannery_web/live/invite_live/form_component.html.heex:38 #: lib/cannery_web/live/invite_live/form_component.html.heex:38
#: lib/cannery_web/live/pack_live/form_component.html.heex:96 #: lib/cannery_web/live/pack_live/form_component.html.heex:110
#: lib/cannery_web/live/range_live/form_component.html.heex:45 #: lib/cannery_web/live/range_live/form_component.html.heex:45
#: lib/cannery_web/live/tag_live/form_component.html.heex:41 #: lib/cannery_web/live/tag_live/form_component.html.heex:41
#: lib/cannery_web/live/type_live/form_component.html.heex:386 #: lib/cannery_web/live/type_live/form_component.html.heex:386
@ -189,7 +189,7 @@ msgstr ""
msgid "add a container first" msgid "add a container first"
msgstr "" msgstr ""
#: lib/cannery_web/live/pack_live/form_component.html.heex:89 #: lib/cannery_web/live/pack_live/form_component.html.heex:103
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Create" msgid "Create"
msgstr "" msgstr ""

View File

@ -84,7 +84,7 @@ msgstr ""
#: lib/cannery_web/components/move_pack_component.ex:64 #: lib/cannery_web/components/move_pack_component.ex:64
#: lib/cannery_web/components/pack_table_component.ex:76 #: lib/cannery_web/components/pack_table_component.ex:76
#: lib/cannery_web/live/pack_live/form_component.html.heex:69 #: lib/cannery_web/live/pack_live/form_component.html.heex:84
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Container" msgid "Container"
msgstr "" msgstr ""
@ -104,7 +104,7 @@ msgid "Corrosive"
msgstr "" msgstr ""
#: lib/cannery_web/components/pack_table_component.ex:104 #: lib/cannery_web/components/pack_table_component.ex:104
#: lib/cannery_web/live/pack_live/form_component.html.heex:30 #: lib/cannery_web/live/pack_live/form_component.html.heex:45
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Count" msgid "Count"
msgstr "" msgstr ""
@ -278,7 +278,7 @@ msgstr ""
#: lib/cannery_web/components/add_shot_record_component.html.heex:38 #: lib/cannery_web/components/add_shot_record_component.html.heex:38
#: lib/cannery_web/components/shot_record_table_component.ex:46 #: lib/cannery_web/components/shot_record_table_component.ex:46
#: lib/cannery_web/live/pack_live/form_component.html.heex:60 #: lib/cannery_web/live/pack_live/form_component.html.heex:75
#: lib/cannery_web/live/pack_live/show.ex:90 #: lib/cannery_web/live/pack_live/show.ex:90
#: lib/cannery_web/live/range_live/form_component.html.heex:30 #: lib/cannery_web/live/range_live/form_component.html.heex:30
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
@ -303,7 +303,7 @@ msgid "Pressure"
msgstr "" msgstr ""
#: lib/cannery_web/components/pack_table_component.ex:92 #: lib/cannery_web/components/pack_table_component.ex:92
#: lib/cannery_web/live/pack_live/form_component.html.heex:37 #: lib/cannery_web/live/pack_live/form_component.html.heex:52
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Price paid" msgid "Price paid"
msgstr "" msgstr ""
@ -389,7 +389,7 @@ msgstr ""
#: lib/cannery_web/components/move_pack_component.ex:65 #: lib/cannery_web/components/move_pack_component.ex:65
#: lib/cannery_web/components/pack_table_component.ex:108 #: lib/cannery_web/components/pack_table_component.ex:108
#: lib/cannery_web/live/container_live/form_component.html.heex:40 #: lib/cannery_web/live/container_live/form_component.html.heex:40
#: lib/cannery_web/live/pack_live/form_component.html.heex:22 #: lib/cannery_web/live/pack_live/form_component.html.heex:37
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Type" msgid "Type"
msgstr "" msgstr ""
@ -649,7 +649,7 @@ msgstr ""
msgid "Record Shots" msgid "Record Shots"
msgstr "" msgstr ""
#: lib/cannery_web/live/pack_live/form_component.html.heex:81 #: lib/cannery_web/live/pack_live/form_component.html.heex:96
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Copies" msgid "Copies"
msgstr "" msgstr ""
@ -975,7 +975,7 @@ msgid "Never used"
msgstr "" msgstr ""
#: lib/cannery_web/components/pack_table_component.ex:71 #: lib/cannery_web/components/pack_table_component.ex:71
#: lib/cannery_web/live/pack_live/form_component.html.heex:52 #: lib/cannery_web/live/pack_live/form_component.html.heex:67
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Purchased on" msgid "Purchased on"
msgstr "" msgstr ""
@ -1259,6 +1259,7 @@ msgid "None specified"
msgstr "" msgstr ""
#: lib/cannery_web/live/container_live/show.html.heex:100 #: lib/cannery_web/live/container_live/show.html.heex:100
#: lib/cannery_web/live/pack_live/form_component.html.heex:30
#: lib/cannery_web/live/pack_live/index.html.heex:61 #: lib/cannery_web/live/pack_live/index.html.heex:61
#: lib/cannery_web/live/range_live/index.html.heex:94 #: lib/cannery_web/live/range_live/index.html.heex:94
#: lib/cannery_web/live/type_live/form_component.html.heex:28 #: lib/cannery_web/live/type_live/form_component.html.heex:28
@ -1284,6 +1285,7 @@ msgid "Projectile"
msgstr "" msgstr ""
#: lib/cannery_web/live/container_live/show.html.heex:98 #: lib/cannery_web/live/container_live/show.html.heex:98
#: lib/cannery_web/live/pack_live/form_component.html.heex:28
#: lib/cannery_web/live/pack_live/index.html.heex:59 #: lib/cannery_web/live/pack_live/index.html.heex:59
#: lib/cannery_web/live/range_live/index.html.heex:92 #: lib/cannery_web/live/range_live/index.html.heex:92
#: lib/cannery_web/live/type_live/form_component.html.heex:26 #: lib/cannery_web/live/type_live/form_component.html.heex:26
@ -1338,6 +1340,7 @@ msgid "Shot type:"
msgstr "" msgstr ""
#: lib/cannery_web/live/container_live/show.html.heex:99 #: lib/cannery_web/live/container_live/show.html.heex:99
#: lib/cannery_web/live/pack_live/form_component.html.heex:29
#: lib/cannery_web/live/pack_live/index.html.heex:60 #: lib/cannery_web/live/pack_live/index.html.heex:60
#: lib/cannery_web/live/range_live/index.html.heex:93 #: lib/cannery_web/live/range_live/index.html.heex:93
#: lib/cannery_web/live/type_live/form_component.html.heex:27 #: lib/cannery_web/live/type_live/form_component.html.heex:27
@ -1382,6 +1385,7 @@ msgstr ""
#: lib/cannery_web/components/type_table_component.ex:149 #: lib/cannery_web/components/type_table_component.ex:149
#: lib/cannery_web/live/container_live/show.html.heex:91 #: lib/cannery_web/live/container_live/show.html.heex:91
#: lib/cannery_web/live/pack_live/form_component.html.heex:22
#: lib/cannery_web/live/pack_live/index.html.heex:50 #: lib/cannery_web/live/pack_live/index.html.heex:50
#: lib/cannery_web/live/range_live/index.html.heex:83 #: lib/cannery_web/live/range_live/index.html.heex:83
#: lib/cannery_web/live/type_live/form_component.html.heex:21 #: lib/cannery_web/live/type_live/form_component.html.heex:21
@ -1427,7 +1431,7 @@ msgid "No Types"
msgstr "" msgstr ""
#: lib/cannery_web/components/pack_table_component.ex:84 #: lib/cannery_web/components/pack_table_component.ex:84
#: lib/cannery_web/live/pack_live/form_component.html.heex:44 #: lib/cannery_web/live/pack_live/form_component.html.heex:59
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Lot number" msgid "Lot number"
msgstr "" msgstr ""
@ -1436,3 +1440,8 @@ msgstr ""
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Lot number:" msgid "Lot number:"
msgstr "" msgstr ""
#: lib/cannery_web/live/pack_live/form_component.html.heex:27
#, elixir-autogen, elixir-format
msgid "Any"
msgstr ""

View File

@ -158,21 +158,16 @@ msgstr ""
msgid "Tag could not be removed" msgid "Tag could not be removed"
msgstr "" msgstr ""
#: lib/cannery_web/live/pack_live/form_component.ex:152 #: lib/cannery_web/live/pack_live/form_component.ex:175
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Could not parse number of copies" msgid "Could not parse number of copies"
msgstr "" msgstr ""
#: lib/cannery_web/live/pack_live/form_component.ex:142 #: lib/cannery/ammo.ex:1028
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Invalid number of copies, must be between 1 and %{max}. Was %{multiplier}" msgid "Invalid number of copies, must be between 1 and %{max}. Was %{multiplier}"
msgstr "" msgstr ""
#: lib/cannery/ammo.ex:974
#, elixir-autogen, elixir-format
msgid "Invalid multiplier"
msgstr ""
#: lib/cannery_web/live/range_live/index.html.heex:71 #: lib/cannery_web/live/range_live/index.html.heex:71
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Your browser does not support the canvas element." msgid "Your browser does not support the canvas element."
@ -203,11 +198,6 @@ msgstr ""
msgid "can't be blank" msgid "can't be blank"
msgstr "" msgstr ""
#: lib/cannery/ammo/pack.ex:100
#, elixir-autogen, elixir-format, fuzzy
msgid "Please select a type and container"
msgstr ""
#: lib/cannery_web/controllers/error_html.ex:11 #: lib/cannery_web/controllers/error_html.ex:11
#: lib/cannery_web/controllers/error_json.ex:9 #: lib/cannery_web/controllers/error_json.ex:9
#, elixir-autogen, elixir-format, fuzzy #, elixir-autogen, elixir-format, fuzzy
@ -223,3 +213,13 @@ msgstr ""
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "You must log in to access this page." msgid "You must log in to access this page."
msgstr "" msgstr ""
#: lib/cannery/ammo/pack.ex:104
#, elixir-autogen, elixir-format, fuzzy
msgid "Please select a valid container"
msgstr ""
#: lib/cannery/ammo/pack.ex:102
#, elixir-autogen, elixir-format, fuzzy
msgid "Please select a valid type"
msgstr ""

View File

@ -123,7 +123,7 @@ msgstr ""
#: lib/cannery_web/components/add_shot_record_component.html.heex:59 #: lib/cannery_web/components/add_shot_record_component.html.heex:59
#: lib/cannery_web/live/container_live/form_component.html.heex:61 #: lib/cannery_web/live/container_live/form_component.html.heex:61
#: lib/cannery_web/live/invite_live/form_component.html.heex:40 #: lib/cannery_web/live/invite_live/form_component.html.heex:40
#: lib/cannery_web/live/pack_live/form_component.html.heex:97 #: lib/cannery_web/live/pack_live/form_component.html.heex:111
#: lib/cannery_web/live/range_live/form_component.html.heex:47 #: lib/cannery_web/live/range_live/form_component.html.heex:47
#: lib/cannery_web/live/tag_live/form_component.html.heex:43 #: lib/cannery_web/live/tag_live/form_component.html.heex:43
#: lib/cannery_web/live/type_live/form_component.html.heex:387 #: lib/cannery_web/live/type_live/form_component.html.heex:387
@ -209,7 +209,7 @@ msgstr ""
msgid "You'll need to" msgid "You'll need to"
msgstr "" msgstr ""
#: lib/cannery_web/live/pack_live/form_component.html.heex:90 #: lib/cannery_web/live/pack_live/form_component.html.heex:104
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Creating..." msgid "Creating..."
msgstr "" msgstr ""
@ -235,12 +235,12 @@ msgstr ""
msgid "Ammo unstaged succesfully" msgid "Ammo unstaged succesfully"
msgstr "" msgstr ""
#: lib/cannery_web/live/pack_live/form_component.ex:118 #: lib/cannery_web/live/pack_live/form_component.ex:141
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Ammo updated successfully" msgid "Ammo updated successfully"
msgstr "" msgstr ""
#: lib/cannery_web/live/pack_live/form_component.ex:177 #: lib/cannery_web/live/pack_live/form_component.ex:162
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Ammo added successfully" msgid "Ammo added successfully"
msgid_plural "Ammo added successfully" msgid_plural "Ammo added successfully"

View File

@ -129,7 +129,7 @@ msgstr ""
#: lib/cannery_web/components/add_shot_record_component.html.heex:57 #: lib/cannery_web/components/add_shot_record_component.html.heex:57
#: lib/cannery_web/live/container_live/form_component.html.heex:59 #: lib/cannery_web/live/container_live/form_component.html.heex:59
#: lib/cannery_web/live/invite_live/form_component.html.heex:38 #: lib/cannery_web/live/invite_live/form_component.html.heex:38
#: lib/cannery_web/live/pack_live/form_component.html.heex:96 #: lib/cannery_web/live/pack_live/form_component.html.heex:110
#: lib/cannery_web/live/range_live/form_component.html.heex:45 #: lib/cannery_web/live/range_live/form_component.html.heex:45
#: lib/cannery_web/live/tag_live/form_component.html.heex:41 #: lib/cannery_web/live/tag_live/form_component.html.heex:41
#: lib/cannery_web/live/type_live/form_component.html.heex:386 #: lib/cannery_web/live/type_live/form_component.html.heex:386
@ -189,7 +189,7 @@ msgstr ""
msgid "add a container first" msgid "add a container first"
msgstr "" msgstr ""
#: lib/cannery_web/live/pack_live/form_component.html.heex:89 #: lib/cannery_web/live/pack_live/form_component.html.heex:103
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Create" msgid "Create"
msgstr "" msgstr ""

View File

@ -93,7 +93,7 @@ msgstr ""
#: lib/cannery_web/components/move_pack_component.ex:64 #: lib/cannery_web/components/move_pack_component.ex:64
#: lib/cannery_web/components/pack_table_component.ex:76 #: lib/cannery_web/components/pack_table_component.ex:76
#: lib/cannery_web/live/pack_live/form_component.html.heex:69 #: lib/cannery_web/live/pack_live/form_component.html.heex:84
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Container" msgid "Container"
msgstr "" msgstr ""
@ -113,7 +113,7 @@ msgid "Corrosive"
msgstr "" msgstr ""
#: lib/cannery_web/components/pack_table_component.ex:104 #: lib/cannery_web/components/pack_table_component.ex:104
#: lib/cannery_web/live/pack_live/form_component.html.heex:30 #: lib/cannery_web/live/pack_live/form_component.html.heex:45
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Count" msgid "Count"
msgstr "" msgstr ""
@ -287,7 +287,7 @@ msgstr ""
#: lib/cannery_web/components/add_shot_record_component.html.heex:38 #: lib/cannery_web/components/add_shot_record_component.html.heex:38
#: lib/cannery_web/components/shot_record_table_component.ex:46 #: lib/cannery_web/components/shot_record_table_component.ex:46
#: lib/cannery_web/live/pack_live/form_component.html.heex:60 #: lib/cannery_web/live/pack_live/form_component.html.heex:75
#: lib/cannery_web/live/pack_live/show.ex:90 #: lib/cannery_web/live/pack_live/show.ex:90
#: lib/cannery_web/live/range_live/form_component.html.heex:30 #: lib/cannery_web/live/range_live/form_component.html.heex:30
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
@ -312,7 +312,7 @@ msgid "Pressure"
msgstr "" msgstr ""
#: lib/cannery_web/components/pack_table_component.ex:92 #: lib/cannery_web/components/pack_table_component.ex:92
#: lib/cannery_web/live/pack_live/form_component.html.heex:37 #: lib/cannery_web/live/pack_live/form_component.html.heex:52
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Price paid" msgid "Price paid"
msgstr "" msgstr ""
@ -398,7 +398,7 @@ msgstr ""
#: lib/cannery_web/components/move_pack_component.ex:65 #: lib/cannery_web/components/move_pack_component.ex:65
#: lib/cannery_web/components/pack_table_component.ex:108 #: lib/cannery_web/components/pack_table_component.ex:108
#: lib/cannery_web/live/container_live/form_component.html.heex:40 #: lib/cannery_web/live/container_live/form_component.html.heex:40
#: lib/cannery_web/live/pack_live/form_component.html.heex:22 #: lib/cannery_web/live/pack_live/form_component.html.heex:37
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Type" msgid "Type"
msgstr "" msgstr ""
@ -658,7 +658,7 @@ msgstr ""
msgid "Record Shots" msgid "Record Shots"
msgstr "" msgstr ""
#: lib/cannery_web/live/pack_live/form_component.html.heex:81 #: lib/cannery_web/live/pack_live/form_component.html.heex:96
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Copies" msgid "Copies"
msgstr "" msgstr ""
@ -984,7 +984,7 @@ msgid "Never used"
msgstr "" msgstr ""
#: lib/cannery_web/components/pack_table_component.ex:71 #: lib/cannery_web/components/pack_table_component.ex:71
#: lib/cannery_web/live/pack_live/form_component.html.heex:52 #: lib/cannery_web/live/pack_live/form_component.html.heex:67
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Purchased on" msgid "Purchased on"
msgstr "" msgstr ""
@ -1259,6 +1259,7 @@ msgid "None specified"
msgstr "" msgstr ""
#: lib/cannery_web/live/container_live/show.html.heex:100 #: lib/cannery_web/live/container_live/show.html.heex:100
#: lib/cannery_web/live/pack_live/form_component.html.heex:30
#: lib/cannery_web/live/pack_live/index.html.heex:61 #: lib/cannery_web/live/pack_live/index.html.heex:61
#: lib/cannery_web/live/range_live/index.html.heex:94 #: lib/cannery_web/live/range_live/index.html.heex:94
#: lib/cannery_web/live/type_live/form_component.html.heex:28 #: lib/cannery_web/live/type_live/form_component.html.heex:28
@ -1284,6 +1285,7 @@ msgid "Projectile"
msgstr "" msgstr ""
#: lib/cannery_web/live/container_live/show.html.heex:98 #: lib/cannery_web/live/container_live/show.html.heex:98
#: lib/cannery_web/live/pack_live/form_component.html.heex:28
#: lib/cannery_web/live/pack_live/index.html.heex:59 #: lib/cannery_web/live/pack_live/index.html.heex:59
#: lib/cannery_web/live/range_live/index.html.heex:92 #: lib/cannery_web/live/range_live/index.html.heex:92
#: lib/cannery_web/live/type_live/form_component.html.heex:26 #: lib/cannery_web/live/type_live/form_component.html.heex:26
@ -1338,6 +1340,7 @@ msgid "Shot type:"
msgstr "" msgstr ""
#: lib/cannery_web/live/container_live/show.html.heex:99 #: lib/cannery_web/live/container_live/show.html.heex:99
#: lib/cannery_web/live/pack_live/form_component.html.heex:29
#: lib/cannery_web/live/pack_live/index.html.heex:60 #: lib/cannery_web/live/pack_live/index.html.heex:60
#: lib/cannery_web/live/range_live/index.html.heex:93 #: lib/cannery_web/live/range_live/index.html.heex:93
#: lib/cannery_web/live/type_live/form_component.html.heex:27 #: lib/cannery_web/live/type_live/form_component.html.heex:27
@ -1382,6 +1385,7 @@ msgstr ""
#: lib/cannery_web/components/type_table_component.ex:149 #: lib/cannery_web/components/type_table_component.ex:149
#: lib/cannery_web/live/container_live/show.html.heex:91 #: lib/cannery_web/live/container_live/show.html.heex:91
#: lib/cannery_web/live/pack_live/form_component.html.heex:22
#: lib/cannery_web/live/pack_live/index.html.heex:50 #: lib/cannery_web/live/pack_live/index.html.heex:50
#: lib/cannery_web/live/range_live/index.html.heex:83 #: lib/cannery_web/live/range_live/index.html.heex:83
#: lib/cannery_web/live/type_live/form_component.html.heex:21 #: lib/cannery_web/live/type_live/form_component.html.heex:21
@ -1427,7 +1431,7 @@ msgid "No Types"
msgstr "" msgstr ""
#: lib/cannery_web/components/pack_table_component.ex:84 #: lib/cannery_web/components/pack_table_component.ex:84
#: lib/cannery_web/live/pack_live/form_component.html.heex:44 #: lib/cannery_web/live/pack_live/form_component.html.heex:59
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Lot number" msgid "Lot number"
msgstr "" msgstr ""
@ -1436,3 +1440,8 @@ msgstr ""
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Lot number:" msgid "Lot number:"
msgstr "" msgstr ""
#: lib/cannery_web/live/pack_live/form_component.html.heex:27
#, elixir-autogen, elixir-format
msgid "Any"
msgstr ""

View File

@ -153,21 +153,16 @@ msgstr ""
msgid "Tag could not be removed" msgid "Tag could not be removed"
msgstr "" msgstr ""
#: lib/cannery_web/live/pack_live/form_component.ex:152 #: lib/cannery_web/live/pack_live/form_component.ex:175
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Could not parse number of copies" msgid "Could not parse number of copies"
msgstr "" msgstr ""
#: lib/cannery_web/live/pack_live/form_component.ex:142 #: lib/cannery/ammo.ex:1028
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Invalid number of copies, must be between 1 and %{max}. Was %{multiplier}" msgid "Invalid number of copies, must be between 1 and %{max}. Was %{multiplier}"
msgstr "" msgstr ""
#: lib/cannery/ammo.ex:974
#, elixir-autogen, elixir-format
msgid "Invalid multiplier"
msgstr ""
#: lib/cannery_web/live/range_live/index.html.heex:71 #: lib/cannery_web/live/range_live/index.html.heex:71
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Your browser does not support the canvas element." msgid "Your browser does not support the canvas element."
@ -198,11 +193,6 @@ msgstr ""
msgid "can't be blank" msgid "can't be blank"
msgstr "" msgstr ""
#: lib/cannery/ammo/pack.ex:100
#, elixir-autogen, elixir-format
msgid "Please select a type and container"
msgstr ""
#: lib/cannery_web/controllers/error_html.ex:11 #: lib/cannery_web/controllers/error_html.ex:11
#: lib/cannery_web/controllers/error_json.ex:9 #: lib/cannery_web/controllers/error_json.ex:9
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
@ -218,3 +208,13 @@ msgstr ""
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "You must log in to access this page." msgid "You must log in to access this page."
msgstr "" msgstr ""
#: lib/cannery/ammo/pack.ex:104
#, elixir-autogen, elixir-format, fuzzy
msgid "Please select a valid container"
msgstr ""
#: lib/cannery/ammo/pack.ex:102
#, elixir-autogen, elixir-format, fuzzy
msgid "Please select a valid type"
msgstr ""

View File

@ -123,7 +123,7 @@ msgstr ""
#: lib/cannery_web/components/add_shot_record_component.html.heex:59 #: lib/cannery_web/components/add_shot_record_component.html.heex:59
#: lib/cannery_web/live/container_live/form_component.html.heex:61 #: lib/cannery_web/live/container_live/form_component.html.heex:61
#: lib/cannery_web/live/invite_live/form_component.html.heex:40 #: lib/cannery_web/live/invite_live/form_component.html.heex:40
#: lib/cannery_web/live/pack_live/form_component.html.heex:97 #: lib/cannery_web/live/pack_live/form_component.html.heex:111
#: lib/cannery_web/live/range_live/form_component.html.heex:47 #: lib/cannery_web/live/range_live/form_component.html.heex:47
#: lib/cannery_web/live/tag_live/form_component.html.heex:43 #: lib/cannery_web/live/tag_live/form_component.html.heex:43
#: lib/cannery_web/live/type_live/form_component.html.heex:387 #: lib/cannery_web/live/type_live/form_component.html.heex:387
@ -209,7 +209,7 @@ msgstr ""
msgid "You'll need to" msgid "You'll need to"
msgstr "" msgstr ""
#: lib/cannery_web/live/pack_live/form_component.html.heex:90 #: lib/cannery_web/live/pack_live/form_component.html.heex:104
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Creating..." msgid "Creating..."
msgstr "" msgstr ""
@ -235,12 +235,12 @@ msgstr ""
msgid "Ammo unstaged succesfully" msgid "Ammo unstaged succesfully"
msgstr "" msgstr ""
#: lib/cannery_web/live/pack_live/form_component.ex:118 #: lib/cannery_web/live/pack_live/form_component.ex:141
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Ammo updated successfully" msgid "Ammo updated successfully"
msgstr "" msgstr ""
#: lib/cannery_web/live/pack_live/form_component.ex:177 #: lib/cannery_web/live/pack_live/form_component.ex:162
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Ammo added successfully" msgid "Ammo added successfully"
msgid_plural "Ammo added successfully" msgid_plural "Ammo added successfully"

View File

@ -112,7 +112,7 @@ msgstr ""
#: lib/cannery_web/components/add_shot_record_component.html.heex:59 #: lib/cannery_web/components/add_shot_record_component.html.heex:59
#: lib/cannery_web/live/container_live/form_component.html.heex:61 #: lib/cannery_web/live/container_live/form_component.html.heex:61
#: lib/cannery_web/live/invite_live/form_component.html.heex:40 #: lib/cannery_web/live/invite_live/form_component.html.heex:40
#: lib/cannery_web/live/pack_live/form_component.html.heex:97 #: lib/cannery_web/live/pack_live/form_component.html.heex:111
#: lib/cannery_web/live/range_live/form_component.html.heex:47 #: lib/cannery_web/live/range_live/form_component.html.heex:47
#: lib/cannery_web/live/tag_live/form_component.html.heex:43 #: lib/cannery_web/live/tag_live/form_component.html.heex:43
#: lib/cannery_web/live/type_live/form_component.html.heex:387 #: lib/cannery_web/live/type_live/form_component.html.heex:387
@ -198,7 +198,7 @@ msgstr ""
msgid "You'll need to" msgid "You'll need to"
msgstr "" msgstr ""
#: lib/cannery_web/live/pack_live/form_component.html.heex:90 #: lib/cannery_web/live/pack_live/form_component.html.heex:104
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Creating..." msgid "Creating..."
msgstr "" msgstr ""
@ -224,12 +224,12 @@ msgstr ""
msgid "Ammo unstaged succesfully" msgid "Ammo unstaged succesfully"
msgstr "" msgstr ""
#: lib/cannery_web/live/pack_live/form_component.ex:118 #: lib/cannery_web/live/pack_live/form_component.ex:141
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Ammo updated successfully" msgid "Ammo updated successfully"
msgstr "" msgstr ""
#: lib/cannery_web/live/pack_live/form_component.ex:177 #: lib/cannery_web/live/pack_live/form_component.ex:162
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Ammo added successfully" msgid "Ammo added successfully"
msgid_plural "Ammo added successfully" msgid_plural "Ammo added successfully"