Compare commits

...

2 Commits

Author SHA1 Message Date
ab8561fcf0 use component macros for live_helper components
All checks were successful
continuous-integration/drone/push Build is passing
2023-03-15 00:48:07 -04:00
8163b906a2 remove data-qa 2023-03-15 00:47:15 -04:00
45 changed files with 1131 additions and 390 deletions

View File

@ -1,3 +1,6 @@
# v0.8.4
- Improve accessibility
# v0.8.3
- Improve some styles
- Improve server log

View File

@ -79,7 +79,9 @@ defmodule Cannery.ActivityLog.ShotGroup do
defp validate_create_shot_group_count(changeset, %AmmoGroup{count: ammo_group_count}) do
if changeset |> Changeset.get_field(:count) > ammo_group_count do
error = dgettext("errors", "Count must be less than %{count}", count: ammo_group_count)
error =
dgettext("errors", "Count must be less than %{count} shots", count: ammo_group_count)
changeset |> Changeset.add_error(:count, error)
else
changeset
@ -115,7 +117,9 @@ defmodule Cannery.ActivityLog.ShotGroup do
cond do
shot_diff_to_add > ammo_group_count ->
error = dgettext("errors", "Count must be less than %{count}", count: ammo_group_count)
error =
dgettext("errors", "Count must be less than %{count} shots", count: ammo_group_count)
changeset |> Changeset.add_error(:count, error)
new_shot_group_count <= 0 ->

View File

@ -185,11 +185,7 @@ defmodule CanneryWeb.Components.AmmoTypeTableComponent do
assigns = %{ammo_type: ammo_type}
~H"""
<.link
navigate={Routes.ammo_type_show_path(Endpoint, :show, @ammo_type)}
class="link"
data-qa={"view-name-#{@ammo_type.id}"}
>
<.link navigate={Routes.ammo_type_show_path(Endpoint, :show, @ammo_type)} class="link">
<%= @ammo_type.name %>
</.link>
"""

View File

@ -49,7 +49,6 @@
phx-change="search"
phx-submit="search"
class="grow self-stretch flex flex-col items-stretch"
data-qa="ammo_group_search"
>
<%= text_input(f, :search_term,
class: "input input-primary",
@ -124,7 +123,11 @@
<.link
navigate={Routes.ammo_group_show_path(Endpoint, :show, ammo_group)}
class="text-primary-600 link"
data-qa={"view-#{ammo_group.id}"}
aria-label={
gettext("View ammo group of %{ammo_group_count} bullets",
ammo_group_count: ammo_group.count
)
}
>
<i class="fa-fw fa-lg fas fa-eye"></i>
</.link>
@ -132,7 +135,11 @@
<.link
patch={Routes.ammo_group_index_path(Endpoint, :edit, ammo_group)}
class="text-primary-600 link"
data-qa={"edit-#{ammo_group.id}"}
aria-label={
gettext("Edit ammo group of %{ammo_group_count} bullets",
ammo_group_count: ammo_group.count
)
}
>
<i class="fa-fw fa-lg fas fa-edit"></i>
</.link>
@ -140,7 +147,11 @@
<.link
patch={Routes.ammo_group_index_path(Endpoint, :clone, ammo_group)}
class="text-primary-600 link"
data-qa={"clone-#{ammo_group.id}"}
aria-label={
gettext("Clone ammo group of %{ammo_group_count} bullets",
ammo_group_count: ammo_group.count
)
}
>
<i class="fa-fw fa-lg fas fa-copy"></i>
</.link>
@ -151,7 +162,11 @@
phx-click="delete"
phx-value-id={ammo_group.id}
data-confirm={dgettext("prompts", "Are you sure you want to delete this ammo?")}
data-qa={"delete-#{ammo_group.id}"}
aria-label={
gettext("Delete ammo group of %{ammo_group_count} bullets",
ammo_group_count: ammo_group.count
)
}
>
<i class="fa-fw fa-lg fas fa-trash"></i>
</.link>

View File

@ -129,7 +129,9 @@ defmodule CanneryWeb.AmmoGroupLive.Show do
<.link
patch={Routes.ammo_group_show_path(Endpoint, :edit_shot_group, @ammo_group, @shot_group)}
class="text-primary-600 link"
data-qa={"edit-#{@shot_group.id}"}
aria-label={
gettext("Edit shot group of %{shot_group_count} shots", shot_group_count: @shot_group.count)
}
>
<i class="fa-fw fa-lg fas fa-edit"></i>
</.link>
@ -140,7 +142,11 @@ defmodule CanneryWeb.AmmoGroupLive.Show do
phx-click="delete_shot_group"
phx-value-id={@shot_group.id}
data-confirm={dgettext("prompts", "Are you sure you want to delete this shot record?")}
data-qa={"delete-#{@shot_group.id}"}
aria-label={
gettext("Delete shot record of %{shot_group_count} shots",
shot_group_count: @shot_group.count
)
}
>
<i class="fa-fw fa-lg fas fa-trash"></i>
</.link>

View File

@ -55,7 +55,6 @@
<.link
navigate={Routes.ammo_type_show_path(Endpoint, :show, @ammo_group.ammo_type)}
class="mx-4 my-2 btn btn-primary"
data-qa="details"
>
<%= dgettext("actions", "View in Catalog") %>
</.link>
@ -63,7 +62,11 @@
<.link
patch={Routes.ammo_group_show_path(Endpoint, :edit, @ammo_group)}
class="mx-4 my-2 text-primary-600 link"
data-qa="edit"
aria-label={
gettext("Edit ammo group of %{ammo_group_count} bullets",
ammo_group_count: @ammo_group.count
)
}
>
<i class="fa-fw fa-lg fas fa-edit"></i>
</.link>
@ -73,7 +76,11 @@
class="mx-4 my-2 text-primary-600 link"
phx-click="delete"
data-confirm={dgettext("prompts", "Are you sure you want to delete this ammo?")}
data-qa="delete"
aria-label={
gettext("Delete ammo group of %{ammo_group_count} bullets",
ammo_group_count: @ammo_group.count
)
}
>
<i class="fa-fw fa-lg fas fa-trash"></i>
</.link>
@ -89,7 +96,6 @@
<.link
patch={Routes.ammo_group_show_path(Endpoint, :move, @ammo_group)}
class="btn btn-primary"
data-qa="move"
>
<%= dgettext("actions", "Move containers") %>
</.link>

View File

@ -24,7 +24,6 @@
phx-change="search"
phx-submit="search"
class="grow self-stretch flex flex-col items-stretch"
data-qa="ammo_type_search"
>
<%= text_input(f, :search_term,
class: "input input-primary",
@ -60,7 +59,7 @@
<.link
navigate={Routes.ammo_type_show_path(Endpoint, :show, ammo_type)}
class="text-primary-600 link"
data-qa={"view-#{ammo_type.id}"}
aria-label={gettext("View %{ammo_type_name}", ammo_type_name: ammo_type.name)}
>
<i class="fa-fw fa-lg fas fa-eye"></i>
</.link>
@ -68,7 +67,7 @@
<.link
patch={Routes.ammo_type_index_path(Endpoint, :edit, ammo_type)}
class="text-primary-600 link"
data-qa={"edit-#{ammo_type.id}"}
aria-label={gettext("Edit %{ammo_type_name}", ammo_type_name: ammo_type.name)}
>
<i class="fa-fw fa-lg fas fa-edit"></i>
</.link>
@ -76,7 +75,7 @@
<.link
patch={Routes.ammo_type_index_path(Endpoint, :clone, ammo_type)}
class="text-primary-600 link"
data-qa={"clone-#{ammo_type.id}"}
aria-label={gettext("Clone %{ammo_type_name}", ammo_type_name: ammo_type.name)}
>
<i class="fa-fw fa-lg fas fa-copy"></i>
</.link>
@ -93,7 +92,7 @@
name: ammo_type.name
)
}
data-qa={"delete-#{ammo_type.id}"}
aria-label={gettext("Delete %{ammo_type_name}", ammo_type_name: ammo_type.name)}
>
<i class="fa-lg fas fa-trash"></i>
</.link>

View File

@ -16,7 +16,7 @@
<.link
patch={Routes.ammo_type_show_path(Endpoint, :edit, @ammo_type)}
class="text-primary-600 link"
data-qa="edit"
aria-label={gettext("Edit %{ammo_type_name}", ammo_type_name: @ammo_type.name)}
>
<i class="fa-fw fa-lg fas fa-edit"></i>
</.link>
@ -32,7 +32,7 @@
name: @ammo_type.name
)
}
data-qa="delete"
aria-label={gettext("Delete %{ammo_type_name}", ammo_type_name: @ammo_type.name)}
>
<i class="fa-fw fa-lg fas fa-trash"></i>
</.link>

View File

@ -24,7 +24,6 @@
phx-change="search"
phx-submit="search"
class="grow self-stretch flex flex-col items-stretch"
data-qa="container_search"
>
<%= text_input(f, :search_term,
class: "input input-primary",
@ -61,6 +60,7 @@
<.link
patch={Routes.container_index_path(Endpoint, :edit_tags, container)}
class="text-primary-600 link"
aria-label={gettext("Tag %{container_name}", container_name: container.name)}
>
<i class="fa-fw fa-lg fas fa-tags"></i>
</.link>
@ -70,7 +70,7 @@
<.link
patch={Routes.container_index_path(Endpoint, :edit, container)}
class="text-primary-600 link"
data-qa={"edit-#{container.id}"}
aria-label={gettext("Edit %{container_name}", container_name: container.name)}
>
<i class="fa-fw fa-lg fas fa-edit"></i>
</.link>
@ -78,7 +78,7 @@
<.link
patch={Routes.container_index_path(Endpoint, :clone, container)}
class="text-primary-600 link"
data-qa={"clone-#{container.id}"}
aria-label={gettext("Clone %{container_name}", container_name: container.name)}
>
<i class="fa-fw fa-lg fas fa-copy"></i>
</.link>
@ -91,7 +91,7 @@
data-confirm={
dgettext("prompts", "Are you sure you want to delete %{name}?", name: container.name)
}
data-qa={"delete-#{container.id}"}
aria-label={gettext("Delete %{container_name}", container_name: container.name)}
>
<i class="fa-fw fa-lg fas fa-trash"></i>
</.link>
@ -105,6 +105,7 @@
<.link
patch={Routes.container_index_path(Endpoint, :edit_tags, container)}
class="text-primary-600 link"
aria-label={gettext("Tag %{container_name}", container_name: container.name)}
>
<i class="fa-fw fa-lg fas fa-tags"></i>
</.link>
@ -113,7 +114,7 @@
<.link
patch={Routes.container_index_path(Endpoint, :edit, container)}
class="text-primary-600 link"
data-qa={"edit-#{container.id}"}
aria-label={gettext("Edit %{container_name}", container_name: container.name)}
>
<i class="fa-fw fa-lg fas fa-edit"></i>
</.link>
@ -121,7 +122,7 @@
<.link
patch={Routes.container_index_path(Endpoint, :clone, container)}
class="text-primary-600 link"
data-qa={"clone-#{container.id}"}
aria-label={gettext("Clone %{container_name}", container_name: container.name)}
>
<i class="fa-fw fa-lg fas fa-copy"></i>
</.link>
@ -134,7 +135,7 @@
data-confirm={
dgettext("prompts", "Are you sure you want to delete %{name}?", name: container.name)
}
data-qa={"delete-#{container.id}"}
aria-label={gettext("Delete %{container_name}", container_name: container.name)}
>
<i class="fa-fw fa-lg fas fa-trash"></i>
</.link>

View File

@ -42,7 +42,7 @@
<.link
patch={Routes.container_show_path(Endpoint, :edit, @container)}
class="text-primary-600 link"
data-qa="edit"
aria-label={gettext("Edit %{container_name}", container_name: @container.name)}
>
<i class="fa-fw fa-lg fas fa-edit"></i>
</.link>
@ -54,7 +54,7 @@
data-confirm={
dgettext("prompts", "Are you sure you want to delete %{name}?", name: @container.name)
}
data-qa="delete"
aria-label={gettext("Delete %{container_name}", container_name: @container.name)}
>
<i class="fa-fw fa-lg fas fa-trash"></i>
</.link>

View File

@ -26,6 +26,7 @@
type="submit"
class="mx-2 my-1 btn btn-primary"
phx-click={JS.dispatch("cannery:clipcopy", to: "#code-#{invite.id}")}
aria-label={gettext("Copy invite link for %{invite_name}", invite_name: invite.name)}
>
<%= dgettext("actions", "Copy to clipboard") %>
</button>
@ -34,7 +35,7 @@
<.link
patch={Routes.invite_index_path(Endpoint, :edit, invite)}
class="text-primary-600 link"
data-qa={"edit-#{invite.id}"}
aria-label={gettext("Edit invite for %{invite_name}", invite_name: invite.name)}
>
<i class="fa-fw fa-lg fas fa-edit"></i>
</.link>
@ -49,7 +50,7 @@
invite_name: invite.name
)
}
data-qa={"delete-#{invite.id}"}
aria-label={gettext("Delete invite for %{invite_name}", invite_name: invite.name)}
>
<i class="fa-fw fa-lg fas fa-trash"></i>
</.link>

View File

@ -3,9 +3,12 @@ defmodule CanneryWeb.LiveHelpers do
Contains common helper functions for liveviews
"""
import Phoenix.Component
use Phoenix.Component
alias Phoenix.LiveView.JS
attr :return_to, :string, required: true
slot(:inner_block)
@doc """
Renders a live component inside a modal.
@ -79,6 +82,11 @@ defmodule CanneryWeb.LiveHelpers do
|> JS.hide(to: "#modal-content", transition: "fade-out-scale")
end
attr :action, :string, required: true
attr :value, :boolean, required: true
attr :id, :string
slot(:inner_block)
@doc """
A toggle button element that can be directed to a liveview or a
live_component's `handle_event/3`.
@ -103,7 +111,7 @@ defmodule CanneryWeb.LiveHelpers do
value={@value}
checked={@value}
class="sr-only peer"
data-qa={@id}
aria-labelledby={"#{@id}-label"}
{
if assigns |> Map.has_key?(:target),
do: %{"phx-click": @action, "phx-value-value": @value, "phx-target": @target},
@ -119,7 +127,7 @@ defmodule CanneryWeb.LiveHelpers do
after:transition-all after:duration-250 after:ease-in-out
transition-colors duration-250 ease-in-out">
</div>
<span class="ml-3 text-sm font-medium text-gray-900 dark:text-gray-300">
<span id={"#{@id}-label"} class="ml-3 text-sm font-medium text-gray-900 dark:text-gray-300">
<%= render_slot(@inner_block) %>
</span>
</label>

View File

@ -74,7 +74,6 @@
phx-change="search"
phx-submit="search"
class="grow self-stretch flex flex-col items-stretch"
data-qa="shot_group_search"
>
<%= text_input(f, :search_term,
class: "input input-primary",
@ -102,7 +101,11 @@
<.link
patch={Routes.range_index_path(Endpoint, :edit, shot_group)}
class="text-primary-600 link"
data-qa={"edit-#{shot_group.id}"}
aria-label={
gettext("Edit shot record of %{shot_group_count} shots",
shot_group_count: shot_group.count
)
}
>
<i class="fa-fw fa-lg fas fa-edit"></i>
</.link>
@ -115,7 +118,11 @@
data-confirm={
dgettext("prompts", "Are you sure you want to delete this shot record?")
}
data-qa={"delete-#{shot_group.id}"}
aria-label={
gettext("Delete shot record of %{shot_group_count} shots",
shot_group_count: shot_group.count
)
}
>
<i class="fa-fw fa-lg fas fa-trash"></i>
</.link>

View File

@ -27,7 +27,6 @@
phx-change="search"
phx-submit="search"
class="grow self-stretch flex flex-col items-stretch"
data-qa="tag_search"
>
<%= text_input(f, :search_term,
class: "input input-primary",
@ -49,7 +48,7 @@
<.link
patch={Routes.tag_index_path(Endpoint, :edit, tag)}
class="text-primary-600 link"
data-qa={"edit-#{tag.id}"}
aria-label={gettext("Edit %{tag_name}", tag_name: tag.name)}
>
<i class="fa-fw fa-lg fas fa-edit"></i>
</.link>
@ -62,7 +61,7 @@
data-confirm={
dgettext("prompts", "Are you sure you want to delete %{name}?", name: tag.name)
}
data-qa={"delete-#{tag.id}"}
aria-label={gettext("Delete %{tag_name}", tag_name: tag.name)}
>
<i class="fa-fw fa-lg fas fa-trash"></i>
</.link>

View File

@ -4,7 +4,7 @@ defmodule Cannery.MixProject do
def project do
[
app: :cannery,
version: "0.8.3",
version: "0.8.4",
elixir: "1.14.1",
elixirc_paths: elixirc_paths(Mix.env()),
compilers: Mix.compilers(),

View File

@ -156,8 +156,8 @@ msgstr ""
msgid "Why not get some ready to shoot?"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/index.html.heex:101
#: lib/cannery_web/live/ammo_group_live/show.html.heex:101
#: lib/cannery_web/live/ammo_group_live/index.html.heex:100
#: lib/cannery_web/live/ammo_group_live/show.html.heex:107
#: lib/cannery_web/live/range_live/index.html.heex:38
#, elixir-autogen, elixir-format
msgid "Record shots"
@ -168,7 +168,7 @@ msgstr ""
msgid "Add another container!"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/show.html.heex:94
#: lib/cannery_web/live/ammo_group_live/show.html.heex:100
#, elixir-autogen, elixir-format
msgid "Move containers"
msgstr ""
@ -178,7 +178,7 @@ msgstr ""
msgid "Select"
msgstr ""
#: lib/cannery_web/live/invite_live/index.html.heex:30
#: lib/cannery_web/live/invite_live/index.html.heex:31
#, elixir-autogen, elixir-format
msgid "Copy to clipboard"
msgstr ""
@ -203,7 +203,7 @@ msgstr ""
msgid "Change language"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/show.html.heex:60
#: lib/cannery_web/live/ammo_group_live/show.html.heex:59
#, elixir-autogen, elixir-format
msgid "View in Catalog"
msgstr ""
@ -218,18 +218,18 @@ msgstr ""
msgid "Move ammo"
msgstr ""
#: lib/cannery_web/live/invite_live/index.html.heex:78
#: lib/cannery_web/live/invite_live/index.html.heex:79
#, elixir-autogen, elixir-format
msgid "Set Unlimited"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/show.html.heex:86
#: lib/cannery_web/live/ammo_group_live/show.html.heex:93
#: lib/cannery_web/live/range_live/index.html.heex:31
#, elixir-autogen, elixir-format
msgid "Stage for range"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/show.html.heex:85
#: lib/cannery_web/live/ammo_group_live/show.html.heex:92
#: lib/cannery_web/live/range_live/index.html.heex:30
#, elixir-autogen, elixir-format
msgid "Unstage from range"

View File

@ -169,8 +169,8 @@ msgstr "Munition markieren"
msgid "Why not get some ready to shoot?"
msgstr "Warum nicht einige für den Schießstand auswählen?"
#: lib/cannery_web/live/ammo_group_live/index.html.heex:101
#: lib/cannery_web/live/ammo_group_live/show.html.heex:101
#: lib/cannery_web/live/ammo_group_live/index.html.heex:100
#: lib/cannery_web/live/ammo_group_live/show.html.heex:107
#: lib/cannery_web/live/range_live/index.html.heex:38
#, elixir-autogen, elixir-format
msgid "Record shots"
@ -181,7 +181,7 @@ msgstr "Schüsse dokumentieren"
msgid "Add another container!"
msgstr "Einen weiteren Behälter hinzufügen!"
#: lib/cannery_web/live/ammo_group_live/show.html.heex:94
#: lib/cannery_web/live/ammo_group_live/show.html.heex:100
#, elixir-autogen, elixir-format
msgid "Move containers"
msgstr "Behälter verschieben"
@ -191,7 +191,7 @@ msgstr "Behälter verschieben"
msgid "Select"
msgstr "Markieren"
#: lib/cannery_web/live/invite_live/index.html.heex:30
#: lib/cannery_web/live/invite_live/index.html.heex:31
#, elixir-autogen, elixir-format
msgid "Copy to clipboard"
msgstr "In die Zwischenablage kopieren"
@ -216,7 +216,7 @@ msgstr "Sprache wechseln"
msgid "Change language"
msgstr "Sprache wechseln"
#: lib/cannery_web/live/ammo_group_live/show.html.heex:60
#: lib/cannery_web/live/ammo_group_live/show.html.heex:59
#, elixir-autogen, elixir-format
msgid "View in Catalog"
msgstr ""
@ -231,18 +231,18 @@ msgstr ""
msgid "Move ammo"
msgstr ""
#: lib/cannery_web/live/invite_live/index.html.heex:78
#: lib/cannery_web/live/invite_live/index.html.heex:79
#, elixir-autogen, elixir-format
msgid "Set Unlimited"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/show.html.heex:86
#: lib/cannery_web/live/ammo_group_live/show.html.heex:93
#: lib/cannery_web/live/range_live/index.html.heex:31
#, elixir-autogen, elixir-format
msgid "Stage for range"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/show.html.heex:85
#: lib/cannery_web/live/ammo_group_live/show.html.heex:92
#: lib/cannery_web/live/range_live/index.html.heex:30
#, elixir-autogen, elixir-format
msgid "Unstage from range"

View File

@ -19,7 +19,7 @@ msgstr ""
msgid "Access from any internet-capable device"
msgstr "Zugriff von jedem Internet-fähigen Gerät"
#: lib/cannery_web/live/invite_live/index.html.heex:87
#: lib/cannery_web/live/invite_live/index.html.heex:88
#, elixir-autogen, elixir-format
msgid "Admins"
msgstr "Admins"
@ -267,7 +267,7 @@ msgid "New Tag"
msgstr "Neuer Tag"
#: lib/cannery_web/live/ammo_group_live/index.html.heex:10
#: lib/cannery_web/live/ammo_group_live/index.html.heex:71
#: lib/cannery_web/live/ammo_group_live/index.html.heex:70
#, elixir-autogen, elixir-format
msgid "No Ammo"
msgstr "Keine Munition"
@ -278,7 +278,7 @@ msgid "No ammo for this type"
msgstr "Keine Munition dieser Art"
#: lib/cannery_web/live/container_live/index.html.heex:8
#: lib/cannery_web/live/container_live/index.html.heex:47
#: lib/cannery_web/live/container_live/index.html.heex:46
#, elixir-autogen, elixir-format
msgid "No containers"
msgstr "Kein Behälter"
@ -290,7 +290,7 @@ msgstr "Keine Einladung"
#: lib/cannery_web/live/container_live/edit_tags_component.html.heex:29
#: lib/cannery_web/live/tag_live/index.html.heex:10
#: lib/cannery_web/live/tag_live/index.html.heex:43
#: lib/cannery_web/live/tag_live/index.html.heex:42
#, elixir-autogen, elixir-format
msgid "No tags"
msgstr "Keine Tags"
@ -372,7 +372,7 @@ msgstr "Einfach:"
msgid "Steel"
msgstr "Stahl"
#: lib/cannery_web/live/ammo_group_live/show.html.heex:111
#: lib/cannery_web/live/ammo_group_live/show.html.heex:117
#, elixir-autogen, elixir-format
msgid "Stored in"
msgstr "Gelagert in"
@ -420,7 +420,7 @@ msgstr "Art"
msgid "Type:"
msgstr "Art:"
#: lib/cannery_web/live/invite_live/index.html.heex:115
#: lib/cannery_web/live/invite_live/index.html.heex:116
#, elixir-autogen, elixir-format
msgid "Users"
msgstr "Benutzer"
@ -487,7 +487,7 @@ msgid "New Shot Records"
msgstr "Neue Schießkladde"
#: lib/cannery_web/live/range_live/index.html.heex:48
#: lib/cannery_web/live/range_live/index.html.heex:90
#: lib/cannery_web/live/range_live/index.html.heex:89
#, elixir-autogen, elixir-format
msgid "No shots recorded"
msgstr "Keine Schüsse dokumentiert"
@ -512,7 +512,7 @@ msgid "Shot Records"
msgstr "Schießkladde"
#: lib/cannery_web/live/ammo_group_live/index.ex:38
#: lib/cannery_web/live/ammo_group_live/index.html.heex:118
#: lib/cannery_web/live/ammo_group_live/index.html.heex:117
#, elixir-autogen, elixir-format
msgid "Move ammo"
msgstr "Munition verschieben"
@ -592,12 +592,12 @@ msgstr "Derzeitiges Passwort"
msgid "New password"
msgstr "Neues Passwort"
#: lib/cannery_web/live/ammo_group_live/index.html.heex:94
#: lib/cannery_web/live/ammo_group_live/index.html.heex:93
#, elixir-autogen, elixir-format
msgid "Stage"
msgstr "Markiert"
#: lib/cannery_web/live/ammo_group_live/index.html.heex:94
#: lib/cannery_web/live/ammo_group_live/index.html.heex:93
#, elixir-autogen, elixir-format
msgid "Unstage"
msgstr "Demarkiert"
@ -664,7 +664,7 @@ msgstr "Ursprüngliche Anzahl:"
msgid "Percentage left:"
msgstr "Prozent verbleibend:"
#: lib/cannery_web/live/ammo_group_live/show.html.heex:124
#: lib/cannery_web/live/ammo_group_live/show.html.heex:130
#, elixir-autogen, elixir-format
msgid "Rounds used"
msgstr "Patronen verbraucht"
@ -779,7 +779,7 @@ msgstr "Keine Munitionsgruppe in diesem Behälter"
msgid "Show Ammo"
msgstr "Zeige Munitionsarten"
#: lib/cannery_web/live/ammo_group_live/show.html.heex:116
#: lib/cannery_web/live/ammo_group_live/show.html.heex:122
#, elixir-autogen, elixir-format, fuzzy
msgid "This ammo is not in a container"
msgstr "Diese Munitionsgruppe ist nicht in einem Behälter"
@ -812,8 +812,8 @@ msgstr ""
msgid "Container:"
msgstr "Behälter"
#: lib/cannery_web/live/ammo_group_live/index.html.heex:64
#: lib/cannery_web/live/ammo_type_live/index.html.heex:39
#: lib/cannery_web/live/ammo_group_live/index.html.heex:63
#: lib/cannery_web/live/ammo_type_live/index.html.heex:38
#: lib/cannery_web/live/ammo_type_live/show.html.heex:153
#: lib/cannery_web/live/container_live/show.html.heex:99
#, elixir-autogen, elixir-format
@ -844,7 +844,7 @@ msgid "Rounds"
msgstr "Patronen:"
#: lib/cannery_web/live/ammo_type_live/show.html.heex:159
#: lib/cannery_web/live/container_live/index.html.heex:39
#: lib/cannery_web/live/container_live/index.html.heex:38
#: lib/cannery_web/live/container_live/show.html.heex:105
#, elixir-autogen, elixir-format
msgid "View as table"
@ -1002,7 +1002,9 @@ msgid "Average CPR"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/index.ex:28
#: lib/cannery_web/live/ammo_type_live/index.html.heex:70
#: lib/cannery_web/live/ammo_type_live/show.ex:120
#: lib/cannery_web/live/ammo_type_live/show.html.heex:19
#, elixir-autogen, elixir-format, fuzzy
msgid "Edit %{ammo_type_name}"
msgstr "%{name} bearbeiten"
@ -1081,32 +1083,32 @@ msgid "Edit ammo"
msgstr "Munitionstyp bearbeiten"
#: lib/cannery_web/live/ammo_type_live/index.html.heex:8
#: lib/cannery_web/live/ammo_type_live/index.html.heex:46
#: lib/cannery_web/live/ammo_type_live/index.html.heex:45
#, elixir-autogen, elixir-format, fuzzy
msgid "No Ammo types"
msgstr "Keine Munitionsarten"
#: lib/cannery_web/live/ammo_type_live/index.html.heex:33
#: lib/cannery_web/live/ammo_type_live/index.html.heex:32
#, elixir-autogen, elixir-format
msgid "Search catalog"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/index.html.heex:58
#: lib/cannery_web/live/ammo_group_live/index.html.heex:57
#, elixir-autogen, elixir-format, fuzzy
msgid "Search ammo"
msgstr ""
#: lib/cannery_web/live/container_live/index.html.heex:33
#: lib/cannery_web/live/container_live/index.html.heex:32
#, elixir-autogen, elixir-format
msgid "Search containers"
msgstr ""
#: lib/cannery_web/live/tag_live/index.html.heex:36
#: lib/cannery_web/live/tag_live/index.html.heex:35
#, elixir-autogen, elixir-format, fuzzy
msgid "Search tags"
msgstr ""
#: lib/cannery_web/live/range_live/index.html.heex:83
#: lib/cannery_web/live/range_live/index.html.heex:82
#, elixir-autogen, elixir-format
msgid "Search shot records"
msgstr ""
@ -1180,12 +1182,12 @@ msgstr ""
msgid "Welcome to Cannery"
msgstr "Willkommen %{name}"
#: lib/cannery_web/live/invite_live/index.html.heex:63
#: lib/cannery_web/live/invite_live/index.html.heex:64
#, elixir-autogen, elixir-format
msgid "Disable"
msgstr ""
#: lib/cannery_web/live/invite_live/index.html.heex:63
#: lib/cannery_web/live/invite_live/index.html.heex:64
#, elixir-autogen, elixir-format
msgid "Enable"
msgstr ""
@ -1214,3 +1216,108 @@ msgstr ""
#, elixir-autogen, elixir-format
msgid "Password"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/index.html.heex:78
#, elixir-autogen, elixir-format, fuzzy
msgid "Clone %{ammo_type_name}"
msgstr "%{name} bearbeiten"
#: lib/cannery_web/live/container_live/index.html.heex:81
#: lib/cannery_web/live/container_live/index.html.heex:125
#, elixir-autogen, elixir-format
msgid "Clone %{container_name}"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/index.html.heex:151
#, elixir-autogen, elixir-format
msgid "Clone ammo group of %{ammo_group_count} bullets"
msgstr ""
#: lib/cannery_web/live/invite_live/index.html.heex:29
#, elixir-autogen, elixir-format
msgid "Copy invite link for %{invite_name}"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/index.html.heex:95
#: lib/cannery_web/live/ammo_type_live/show.html.heex:35
#, elixir-autogen, elixir-format, fuzzy
msgid "Delete %{ammo_type_name}"
msgstr "%{name} bearbeiten"
#: lib/cannery_web/live/container_live/index.html.heex:94
#: lib/cannery_web/live/container_live/index.html.heex:138
#: lib/cannery_web/live/container_live/show.html.heex:57
#, elixir-autogen, elixir-format
msgid "Delete %{container_name}"
msgstr ""
#: lib/cannery_web/live/tag_live/index.html.heex:64
#, elixir-autogen, elixir-format
msgid "Delete %{tag_name}"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/index.html.heex:166
#: lib/cannery_web/live/ammo_group_live/show.html.heex:80
#, elixir-autogen, elixir-format
msgid "Delete ammo group of %{ammo_group_count} bullets"
msgstr ""
#: lib/cannery_web/live/invite_live/index.html.heex:53
#, elixir-autogen, elixir-format
msgid "Delete invite for %{invite_name}"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/show.ex:146
#: lib/cannery_web/live/range_live/index.html.heex:122
#, elixir-autogen, elixir-format
msgid "Delete shot record of %{shot_group_count} shots"
msgstr ""
#: lib/cannery_web/live/container_live/index.html.heex:73
#: lib/cannery_web/live/container_live/index.html.heex:117
#: lib/cannery_web/live/container_live/show.html.heex:45
#, elixir-autogen, elixir-format, fuzzy
msgid "Edit %{container_name}"
msgstr "%{name} bearbeiten"
#: lib/cannery_web/live/tag_live/index.html.heex:51
#, elixir-autogen, elixir-format, fuzzy
msgid "Edit %{tag_name}"
msgstr "%{name} bearbeiten"
#: lib/cannery_web/live/ammo_group_live/index.html.heex:139
#: lib/cannery_web/live/ammo_group_live/show.html.heex:66
#, elixir-autogen, elixir-format
msgid "Edit ammo group of %{ammo_group_count} bullets"
msgstr ""
#: lib/cannery_web/live/invite_live/index.html.heex:38
#, elixir-autogen, elixir-format
msgid "Edit invite for %{invite_name}"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/show.ex:133
#, elixir-autogen, elixir-format
msgid "Edit shot group of %{shot_group_count} shots"
msgstr ""
#: lib/cannery_web/live/range_live/index.html.heex:105
#, elixir-autogen, elixir-format
msgid "Edit shot record of %{shot_group_count} shots"
msgstr ""
#: lib/cannery_web/live/container_live/index.html.heex:63
#: lib/cannery_web/live/container_live/index.html.heex:108
#, elixir-autogen, elixir-format
msgid "Tag %{container_name}"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/index.html.heex:62
#, elixir-autogen, elixir-format, fuzzy
msgid "View %{ammo_type_name}"
msgstr "%{name} bearbeiten"
#: lib/cannery_web/live/ammo_group_live/index.html.heex:127
#, elixir-autogen, elixir-format
msgid "View ammo group of %{ammo_group_count} bullets"
msgstr ""

View File

@ -152,17 +152,11 @@ msgstr "Tag nicht gefunden"
msgid "Tag could not be added"
msgstr "Tag konnte nicht hinzugefügt werden"
#: lib/cannery/activity_log/shot_group.ex:122
#: lib/cannery/activity_log/shot_group.ex:126
#, elixir-autogen, elixir-format
msgid "Count must be at least 1"
msgstr "Anzahl muss mindestens 1 sein"
#: lib/cannery/activity_log/shot_group.ex:82
#: lib/cannery/activity_log/shot_group.ex:118
#, elixir-autogen, elixir-format
msgid "Count must be less than %{count}"
msgstr "Anzahl muss weniger als %{count} betragen"
#: lib/cannery_web/controllers/user_auth.ex:39
#: lib/cannery_web/controllers/user_auth.ex:161
#, elixir-autogen, elixir-format
@ -207,3 +201,9 @@ msgstr ""
#, elixir-autogen, elixir-format, fuzzy
msgid "Please select a valid user and ammo pack"
msgstr ""
#: lib/cannery/activity_log/shot_group.ex:83
#: lib/cannery/activity_log/shot_group.ex:121
#, elixir-autogen, elixir-format, fuzzy
msgid "Count must be less than %{count} shots"
msgstr "Anzahl muss weniger als %{count} betragen"

View File

@ -57,8 +57,8 @@ msgstr "%{name} erfolgreich aktualisiert"
msgid "A link to confirm your email change has been sent to the new address."
msgstr "Eine Mail zum Bestätigen ihre Mailadresse wurde Ihnen zugesandt."
#: lib/cannery_web/live/invite_live/index.html.heex:98
#: lib/cannery_web/live/invite_live/index.html.heex:126
#: lib/cannery_web/live/invite_live/index.html.heex:99
#: lib/cannery_web/live/invite_live/index.html.heex:127
#, elixir-autogen, elixir-format
msgid "Are you sure you want to delete %{email}? This action is permanent!"
msgstr ""
@ -66,15 +66,15 @@ msgstr ""
"zurückgenommen werden!"
#: lib/cannery_web/live/container_live/index.html.heex:92
#: lib/cannery_web/live/container_live/index.html.heex:135
#: lib/cannery_web/live/container_live/index.html.heex:136
#: lib/cannery_web/live/container_live/show.html.heex:55
#: lib/cannery_web/live/tag_live/index.html.heex:63
#: lib/cannery_web/live/tag_live/index.html.heex:62
#, elixir-autogen, elixir-format
msgid "Are you sure you want to delete %{name}?"
msgstr "Sind Sie sicher, dass sie %{name} löschen möchten?"
#: lib/cannery_web/live/ammo_group_live/index.html.heex:153
#: lib/cannery_web/live/ammo_group_live/show.html.heex:75
#: lib/cannery_web/live/ammo_group_live/index.html.heex:164
#: lib/cannery_web/live/ammo_group_live/show.html.heex:78
#, elixir-autogen, elixir-format
msgid "Are you sure you want to delete this ammo?"
msgstr "Sind Sie sicher, dass sie diese Munition löschen möchten?"
@ -176,8 +176,8 @@ msgstr "Schüsse erfolgreich dokumentiert"
msgid "Are you sure you want to unstage this ammo?"
msgstr "Sind sie sicher, dass Sie diese Munition demarkieren möchten?"
#: lib/cannery_web/live/ammo_group_live/show.ex:142
#: lib/cannery_web/live/range_live/index.html.heex:116
#: lib/cannery_web/live/ammo_group_live/show.ex:144
#: lib/cannery_web/live/range_live/index.html.heex:119
#, elixir-autogen, elixir-format
msgid "Are you sure you want to delete this shot record?"
msgstr "Sind sie sicher, dass sie die Schießkladde löschen möchten?"
@ -257,7 +257,7 @@ msgid_plural "Ammo added successfully"
msgstr[0] "Munitionsgruppe erfolgreich aktualisiert"
msgstr[1] "Munitionsgruppe erfolgreich aktualisiert"
#: lib/cannery_web/live/ammo_type_live/index.html.heex:90
#: lib/cannery_web/live/ammo_type_live/index.html.heex:89
#: lib/cannery_web/live/ammo_type_live/show.html.heex:29
#, elixir-autogen, elixir-format, fuzzy
msgid "Are you sure you want to delete %{name}? This will delete all %{name} type ammo as well!"
@ -293,12 +293,12 @@ msgstr "%{name} erfolgreich aktualisiert"
msgid "%{user_email} deleted succesfully"
msgstr "%{name} erfolgreich gelöscht"
#: lib/cannery_web/live/invite_live/index.html.heex:48
#: lib/cannery_web/live/invite_live/index.html.heex:49
#, elixir-autogen, elixir-format, fuzzy
msgid "Are you sure you want to delete the invite for %{invite_name}?"
msgstr "Sind Sie sicher, dass sie die Einladung für %{name} löschen möchten?"
#: lib/cannery_web/live/invite_live/index.html.heex:73
#: lib/cannery_web/live/invite_live/index.html.heex:74
#, elixir-autogen, elixir-format, fuzzy
msgid "Are you sure you want to make %{invite_name} unlimited?"
msgstr "Sind Sie sicher, dass sie %{name} auf unbegrenzt setzen möchten?"

View File

@ -15,7 +15,7 @@ msgstr ""
msgid "Access from any internet-capable device"
msgstr ""
#: lib/cannery_web/live/invite_live/index.html.heex:87
#: lib/cannery_web/live/invite_live/index.html.heex:88
#, elixir-autogen, elixir-format
msgid "Admins"
msgstr ""
@ -263,7 +263,7 @@ msgid "New Tag"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/index.html.heex:10
#: lib/cannery_web/live/ammo_group_live/index.html.heex:71
#: lib/cannery_web/live/ammo_group_live/index.html.heex:70
#, elixir-autogen, elixir-format
msgid "No Ammo"
msgstr ""
@ -274,7 +274,7 @@ msgid "No ammo for this type"
msgstr ""
#: lib/cannery_web/live/container_live/index.html.heex:8
#: lib/cannery_web/live/container_live/index.html.heex:47
#: lib/cannery_web/live/container_live/index.html.heex:46
#, elixir-autogen, elixir-format
msgid "No containers"
msgstr ""
@ -286,7 +286,7 @@ msgstr ""
#: lib/cannery_web/live/container_live/edit_tags_component.html.heex:29
#: lib/cannery_web/live/tag_live/index.html.heex:10
#: lib/cannery_web/live/tag_live/index.html.heex:43
#: lib/cannery_web/live/tag_live/index.html.heex:42
#, elixir-autogen, elixir-format
msgid "No tags"
msgstr ""
@ -366,7 +366,7 @@ msgstr ""
msgid "Steel"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/show.html.heex:111
#: lib/cannery_web/live/ammo_group_live/show.html.heex:117
#, elixir-autogen, elixir-format
msgid "Stored in"
msgstr ""
@ -414,7 +414,7 @@ msgstr ""
msgid "Type:"
msgstr ""
#: lib/cannery_web/live/invite_live/index.html.heex:115
#: lib/cannery_web/live/invite_live/index.html.heex:116
#, elixir-autogen, elixir-format
msgid "Users"
msgstr ""
@ -481,7 +481,7 @@ msgid "New Shot Records"
msgstr ""
#: lib/cannery_web/live/range_live/index.html.heex:48
#: lib/cannery_web/live/range_live/index.html.heex:90
#: lib/cannery_web/live/range_live/index.html.heex:89
#, elixir-autogen, elixir-format
msgid "No shots recorded"
msgstr ""
@ -506,7 +506,7 @@ msgid "Shot Records"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/index.ex:38
#: lib/cannery_web/live/ammo_group_live/index.html.heex:118
#: lib/cannery_web/live/ammo_group_live/index.html.heex:117
#, elixir-autogen, elixir-format
msgid "Move ammo"
msgstr ""
@ -586,12 +586,12 @@ msgstr ""
msgid "New password"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/index.html.heex:94
#: lib/cannery_web/live/ammo_group_live/index.html.heex:93
#, elixir-autogen, elixir-format
msgid "Stage"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/index.html.heex:94
#: lib/cannery_web/live/ammo_group_live/index.html.heex:93
#, elixir-autogen, elixir-format
msgid "Unstage"
msgstr ""
@ -658,7 +658,7 @@ msgstr ""
msgid "Percentage left:"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/show.html.heex:124
#: lib/cannery_web/live/ammo_group_live/show.html.heex:130
#, elixir-autogen, elixir-format
msgid "Rounds used"
msgstr ""
@ -773,7 +773,7 @@ msgstr ""
msgid "Show Ammo"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/show.html.heex:116
#: lib/cannery_web/live/ammo_group_live/show.html.heex:122
#, elixir-autogen, elixir-format
msgid "This ammo is not in a container"
msgstr ""
@ -806,8 +806,8 @@ msgstr ""
msgid "Container:"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/index.html.heex:64
#: lib/cannery_web/live/ammo_type_live/index.html.heex:39
#: lib/cannery_web/live/ammo_group_live/index.html.heex:63
#: lib/cannery_web/live/ammo_type_live/index.html.heex:38
#: lib/cannery_web/live/ammo_type_live/show.html.heex:153
#: lib/cannery_web/live/container_live/show.html.heex:99
#, elixir-autogen, elixir-format
@ -838,7 +838,7 @@ msgid "Rounds"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/show.html.heex:159
#: lib/cannery_web/live/container_live/index.html.heex:39
#: lib/cannery_web/live/container_live/index.html.heex:38
#: lib/cannery_web/live/container_live/show.html.heex:105
#, elixir-autogen, elixir-format
msgid "View as table"
@ -996,7 +996,9 @@ msgid "Average CPR"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/index.ex:28
#: lib/cannery_web/live/ammo_type_live/index.html.heex:70
#: lib/cannery_web/live/ammo_type_live/show.ex:120
#: lib/cannery_web/live/ammo_type_live/show.html.heex:19
#, elixir-autogen, elixir-format
msgid "Edit %{ammo_type_name}"
msgstr ""
@ -1075,32 +1077,32 @@ msgid "Edit ammo"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/index.html.heex:8
#: lib/cannery_web/live/ammo_type_live/index.html.heex:46
#: lib/cannery_web/live/ammo_type_live/index.html.heex:45
#, elixir-autogen, elixir-format
msgid "No Ammo types"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/index.html.heex:33
#: lib/cannery_web/live/ammo_type_live/index.html.heex:32
#, elixir-autogen, elixir-format
msgid "Search catalog"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/index.html.heex:58
#: lib/cannery_web/live/ammo_group_live/index.html.heex:57
#, elixir-autogen, elixir-format
msgid "Search ammo"
msgstr ""
#: lib/cannery_web/live/container_live/index.html.heex:33
#: lib/cannery_web/live/container_live/index.html.heex:32
#, elixir-autogen, elixir-format
msgid "Search containers"
msgstr ""
#: lib/cannery_web/live/tag_live/index.html.heex:36
#: lib/cannery_web/live/tag_live/index.html.heex:35
#, elixir-autogen, elixir-format
msgid "Search tags"
msgstr ""
#: lib/cannery_web/live/range_live/index.html.heex:83
#: lib/cannery_web/live/range_live/index.html.heex:82
#, elixir-autogen, elixir-format
msgid "Search shot records"
msgstr ""
@ -1163,12 +1165,12 @@ msgstr ""
msgid "Welcome to Cannery"
msgstr ""
#: lib/cannery_web/live/invite_live/index.html.heex:63
#: lib/cannery_web/live/invite_live/index.html.heex:64
#, elixir-autogen, elixir-format
msgid "Disable"
msgstr ""
#: lib/cannery_web/live/invite_live/index.html.heex:63
#: lib/cannery_web/live/invite_live/index.html.heex:64
#, elixir-autogen, elixir-format
msgid "Enable"
msgstr ""
@ -1197,3 +1199,108 @@ msgstr ""
#, elixir-autogen, elixir-format
msgid "Password"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/index.html.heex:78
#, elixir-autogen, elixir-format
msgid "Clone %{ammo_type_name}"
msgstr ""
#: lib/cannery_web/live/container_live/index.html.heex:81
#: lib/cannery_web/live/container_live/index.html.heex:125
#, elixir-autogen, elixir-format
msgid "Clone %{container_name}"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/index.html.heex:151
#, elixir-autogen, elixir-format
msgid "Clone ammo group of %{ammo_group_count} bullets"
msgstr ""
#: lib/cannery_web/live/invite_live/index.html.heex:29
#, elixir-autogen, elixir-format
msgid "Copy invite link for %{invite_name}"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/index.html.heex:95
#: lib/cannery_web/live/ammo_type_live/show.html.heex:35
#, elixir-autogen, elixir-format
msgid "Delete %{ammo_type_name}"
msgstr ""
#: lib/cannery_web/live/container_live/index.html.heex:94
#: lib/cannery_web/live/container_live/index.html.heex:138
#: lib/cannery_web/live/container_live/show.html.heex:57
#, elixir-autogen, elixir-format
msgid "Delete %{container_name}"
msgstr ""
#: lib/cannery_web/live/tag_live/index.html.heex:64
#, elixir-autogen, elixir-format
msgid "Delete %{tag_name}"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/index.html.heex:166
#: lib/cannery_web/live/ammo_group_live/show.html.heex:80
#, elixir-autogen, elixir-format
msgid "Delete ammo group of %{ammo_group_count} bullets"
msgstr ""
#: lib/cannery_web/live/invite_live/index.html.heex:53
#, elixir-autogen, elixir-format
msgid "Delete invite for %{invite_name}"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/show.ex:146
#: lib/cannery_web/live/range_live/index.html.heex:122
#, elixir-autogen, elixir-format
msgid "Delete shot record of %{shot_group_count} shots"
msgstr ""
#: lib/cannery_web/live/container_live/index.html.heex:73
#: lib/cannery_web/live/container_live/index.html.heex:117
#: lib/cannery_web/live/container_live/show.html.heex:45
#, elixir-autogen, elixir-format
msgid "Edit %{container_name}"
msgstr ""
#: lib/cannery_web/live/tag_live/index.html.heex:51
#, elixir-autogen, elixir-format
msgid "Edit %{tag_name}"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/index.html.heex:139
#: lib/cannery_web/live/ammo_group_live/show.html.heex:66
#, elixir-autogen, elixir-format
msgid "Edit ammo group of %{ammo_group_count} bullets"
msgstr ""
#: lib/cannery_web/live/invite_live/index.html.heex:38
#, elixir-autogen, elixir-format
msgid "Edit invite for %{invite_name}"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/show.ex:133
#, elixir-autogen, elixir-format
msgid "Edit shot group of %{shot_group_count} shots"
msgstr ""
#: lib/cannery_web/live/range_live/index.html.heex:105
#, elixir-autogen, elixir-format
msgid "Edit shot record of %{shot_group_count} shots"
msgstr ""
#: lib/cannery_web/live/container_live/index.html.heex:63
#: lib/cannery_web/live/container_live/index.html.heex:108
#, elixir-autogen, elixir-format
msgid "Tag %{container_name}"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/index.html.heex:62
#, elixir-autogen, elixir-format
msgid "View %{ammo_type_name}"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/index.html.heex:127
#, elixir-autogen, elixir-format
msgid "View ammo group of %{ammo_group_count} bullets"
msgstr ""

View File

@ -156,8 +156,8 @@ msgstr ""
msgid "Why not get some ready to shoot?"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/index.html.heex:101
#: lib/cannery_web/live/ammo_group_live/show.html.heex:101
#: lib/cannery_web/live/ammo_group_live/index.html.heex:100
#: lib/cannery_web/live/ammo_group_live/show.html.heex:107
#: lib/cannery_web/live/range_live/index.html.heex:38
#, elixir-autogen, elixir-format
msgid "Record shots"
@ -168,7 +168,7 @@ msgstr ""
msgid "Add another container!"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/show.html.heex:94
#: lib/cannery_web/live/ammo_group_live/show.html.heex:100
#, elixir-autogen, elixir-format
msgid "Move containers"
msgstr ""
@ -178,7 +178,7 @@ msgstr ""
msgid "Select"
msgstr ""
#: lib/cannery_web/live/invite_live/index.html.heex:30
#: lib/cannery_web/live/invite_live/index.html.heex:31
#, elixir-autogen, elixir-format
msgid "Copy to clipboard"
msgstr ""
@ -203,7 +203,7 @@ msgstr ""
msgid "Change language"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/show.html.heex:60
#: lib/cannery_web/live/ammo_group_live/show.html.heex:59
#, elixir-autogen, elixir-format
msgid "View in Catalog"
msgstr ""
@ -218,18 +218,18 @@ msgstr ""
msgid "Move ammo"
msgstr ""
#: lib/cannery_web/live/invite_live/index.html.heex:78
#: lib/cannery_web/live/invite_live/index.html.heex:79
#, elixir-autogen, elixir-format
msgid "Set Unlimited"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/show.html.heex:86
#: lib/cannery_web/live/ammo_group_live/show.html.heex:93
#: lib/cannery_web/live/range_live/index.html.heex:31
#, elixir-autogen, elixir-format
msgid "Stage for range"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/show.html.heex:85
#: lib/cannery_web/live/ammo_group_live/show.html.heex:92
#: lib/cannery_web/live/range_live/index.html.heex:30
#, elixir-autogen, elixir-format
msgid "Unstage from range"

View File

@ -15,7 +15,7 @@ msgstr ""
msgid "Access from any internet-capable device"
msgstr ""
#: lib/cannery_web/live/invite_live/index.html.heex:87
#: lib/cannery_web/live/invite_live/index.html.heex:88
#, elixir-autogen, elixir-format
msgid "Admins"
msgstr ""
@ -263,7 +263,7 @@ msgid "New Tag"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/index.html.heex:10
#: lib/cannery_web/live/ammo_group_live/index.html.heex:71
#: lib/cannery_web/live/ammo_group_live/index.html.heex:70
#, elixir-autogen, elixir-format
msgid "No Ammo"
msgstr ""
@ -274,7 +274,7 @@ msgid "No ammo for this type"
msgstr ""
#: lib/cannery_web/live/container_live/index.html.heex:8
#: lib/cannery_web/live/container_live/index.html.heex:47
#: lib/cannery_web/live/container_live/index.html.heex:46
#, elixir-autogen, elixir-format
msgid "No containers"
msgstr ""
@ -286,7 +286,7 @@ msgstr ""
#: lib/cannery_web/live/container_live/edit_tags_component.html.heex:29
#: lib/cannery_web/live/tag_live/index.html.heex:10
#: lib/cannery_web/live/tag_live/index.html.heex:43
#: lib/cannery_web/live/tag_live/index.html.heex:42
#, elixir-autogen, elixir-format
msgid "No tags"
msgstr ""
@ -366,7 +366,7 @@ msgstr ""
msgid "Steel"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/show.html.heex:111
#: lib/cannery_web/live/ammo_group_live/show.html.heex:117
#, elixir-autogen, elixir-format
msgid "Stored in"
msgstr ""
@ -414,7 +414,7 @@ msgstr ""
msgid "Type:"
msgstr ""
#: lib/cannery_web/live/invite_live/index.html.heex:115
#: lib/cannery_web/live/invite_live/index.html.heex:116
#, elixir-autogen, elixir-format
msgid "Users"
msgstr ""
@ -481,7 +481,7 @@ msgid "New Shot Records"
msgstr ""
#: lib/cannery_web/live/range_live/index.html.heex:48
#: lib/cannery_web/live/range_live/index.html.heex:90
#: lib/cannery_web/live/range_live/index.html.heex:89
#, elixir-autogen, elixir-format
msgid "No shots recorded"
msgstr ""
@ -506,7 +506,7 @@ msgid "Shot Records"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/index.ex:38
#: lib/cannery_web/live/ammo_group_live/index.html.heex:118
#: lib/cannery_web/live/ammo_group_live/index.html.heex:117
#, elixir-autogen, elixir-format
msgid "Move ammo"
msgstr ""
@ -586,12 +586,12 @@ msgstr ""
msgid "New password"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/index.html.heex:94
#: lib/cannery_web/live/ammo_group_live/index.html.heex:93
#, elixir-autogen, elixir-format
msgid "Stage"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/index.html.heex:94
#: lib/cannery_web/live/ammo_group_live/index.html.heex:93
#, elixir-autogen, elixir-format
msgid "Unstage"
msgstr ""
@ -658,7 +658,7 @@ msgstr ""
msgid "Percentage left:"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/show.html.heex:124
#: lib/cannery_web/live/ammo_group_live/show.html.heex:130
#, elixir-autogen, elixir-format, fuzzy
msgid "Rounds used"
msgstr ""
@ -773,7 +773,7 @@ msgstr ""
msgid "Show Ammo"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/show.html.heex:116
#: lib/cannery_web/live/ammo_group_live/show.html.heex:122
#, elixir-autogen, elixir-format, fuzzy
msgid "This ammo is not in a container"
msgstr ""
@ -806,8 +806,8 @@ msgstr ""
msgid "Container:"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/index.html.heex:64
#: lib/cannery_web/live/ammo_type_live/index.html.heex:39
#: lib/cannery_web/live/ammo_group_live/index.html.heex:63
#: lib/cannery_web/live/ammo_type_live/index.html.heex:38
#: lib/cannery_web/live/ammo_type_live/show.html.heex:153
#: lib/cannery_web/live/container_live/show.html.heex:99
#, elixir-autogen, elixir-format
@ -838,7 +838,7 @@ msgid "Rounds"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/show.html.heex:159
#: lib/cannery_web/live/container_live/index.html.heex:39
#: lib/cannery_web/live/container_live/index.html.heex:38
#: lib/cannery_web/live/container_live/show.html.heex:105
#, elixir-autogen, elixir-format
msgid "View as table"
@ -996,7 +996,9 @@ msgid "Average CPR"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/index.ex:28
#: lib/cannery_web/live/ammo_type_live/index.html.heex:70
#: lib/cannery_web/live/ammo_type_live/show.ex:120
#: lib/cannery_web/live/ammo_type_live/show.html.heex:19
#, elixir-autogen, elixir-format, fuzzy
msgid "Edit %{ammo_type_name}"
msgstr ""
@ -1075,32 +1077,32 @@ msgid "Edit ammo"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/index.html.heex:8
#: lib/cannery_web/live/ammo_type_live/index.html.heex:46
#: lib/cannery_web/live/ammo_type_live/index.html.heex:45
#, elixir-autogen, elixir-format, fuzzy
msgid "No Ammo types"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/index.html.heex:33
#: lib/cannery_web/live/ammo_type_live/index.html.heex:32
#, elixir-autogen, elixir-format
msgid "Search catalog"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/index.html.heex:58
#: lib/cannery_web/live/ammo_group_live/index.html.heex:57
#, elixir-autogen, elixir-format, fuzzy
msgid "Search ammo"
msgstr ""
#: lib/cannery_web/live/container_live/index.html.heex:33
#: lib/cannery_web/live/container_live/index.html.heex:32
#, elixir-autogen, elixir-format
msgid "Search containers"
msgstr ""
#: lib/cannery_web/live/tag_live/index.html.heex:36
#: lib/cannery_web/live/tag_live/index.html.heex:35
#, elixir-autogen, elixir-format, fuzzy
msgid "Search tags"
msgstr ""
#: lib/cannery_web/live/range_live/index.html.heex:83
#: lib/cannery_web/live/range_live/index.html.heex:82
#, elixir-autogen, elixir-format
msgid "Search shot records"
msgstr ""
@ -1163,12 +1165,12 @@ msgstr ""
msgid "Welcome to Cannery"
msgstr ""
#: lib/cannery_web/live/invite_live/index.html.heex:63
#: lib/cannery_web/live/invite_live/index.html.heex:64
#, elixir-autogen, elixir-format
msgid "Disable"
msgstr ""
#: lib/cannery_web/live/invite_live/index.html.heex:63
#: lib/cannery_web/live/invite_live/index.html.heex:64
#, elixir-autogen, elixir-format
msgid "Enable"
msgstr ""
@ -1197,3 +1199,108 @@ msgstr ""
#, elixir-autogen, elixir-format
msgid "Password"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/index.html.heex:78
#, elixir-autogen, elixir-format, fuzzy
msgid "Clone %{ammo_type_name}"
msgstr ""
#: lib/cannery_web/live/container_live/index.html.heex:81
#: lib/cannery_web/live/container_live/index.html.heex:125
#, elixir-autogen, elixir-format
msgid "Clone %{container_name}"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/index.html.heex:151
#, elixir-autogen, elixir-format
msgid "Clone ammo group of %{ammo_group_count} bullets"
msgstr ""
#: lib/cannery_web/live/invite_live/index.html.heex:29
#, elixir-autogen, elixir-format
msgid "Copy invite link for %{invite_name}"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/index.html.heex:95
#: lib/cannery_web/live/ammo_type_live/show.html.heex:35
#, elixir-autogen, elixir-format, fuzzy
msgid "Delete %{ammo_type_name}"
msgstr ""
#: lib/cannery_web/live/container_live/index.html.heex:94
#: lib/cannery_web/live/container_live/index.html.heex:138
#: lib/cannery_web/live/container_live/show.html.heex:57
#, elixir-autogen, elixir-format
msgid "Delete %{container_name}"
msgstr ""
#: lib/cannery_web/live/tag_live/index.html.heex:64
#, elixir-autogen, elixir-format
msgid "Delete %{tag_name}"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/index.html.heex:166
#: lib/cannery_web/live/ammo_group_live/show.html.heex:80
#, elixir-autogen, elixir-format
msgid "Delete ammo group of %{ammo_group_count} bullets"
msgstr ""
#: lib/cannery_web/live/invite_live/index.html.heex:53
#, elixir-autogen, elixir-format
msgid "Delete invite for %{invite_name}"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/show.ex:146
#: lib/cannery_web/live/range_live/index.html.heex:122
#, elixir-autogen, elixir-format
msgid "Delete shot record of %{shot_group_count} shots"
msgstr ""
#: lib/cannery_web/live/container_live/index.html.heex:73
#: lib/cannery_web/live/container_live/index.html.heex:117
#: lib/cannery_web/live/container_live/show.html.heex:45
#, elixir-autogen, elixir-format, fuzzy
msgid "Edit %{container_name}"
msgstr ""
#: lib/cannery_web/live/tag_live/index.html.heex:51
#, elixir-autogen, elixir-format, fuzzy
msgid "Edit %{tag_name}"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/index.html.heex:139
#: lib/cannery_web/live/ammo_group_live/show.html.heex:66
#, elixir-autogen, elixir-format
msgid "Edit ammo group of %{ammo_group_count} bullets"
msgstr ""
#: lib/cannery_web/live/invite_live/index.html.heex:38
#, elixir-autogen, elixir-format
msgid "Edit invite for %{invite_name}"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/show.ex:133
#, elixir-autogen, elixir-format
msgid "Edit shot group of %{shot_group_count} shots"
msgstr ""
#: lib/cannery_web/live/range_live/index.html.heex:105
#, elixir-autogen, elixir-format
msgid "Edit shot record of %{shot_group_count} shots"
msgstr ""
#: lib/cannery_web/live/container_live/index.html.heex:63
#: lib/cannery_web/live/container_live/index.html.heex:108
#, elixir-autogen, elixir-format
msgid "Tag %{container_name}"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/index.html.heex:62
#, elixir-autogen, elixir-format, fuzzy
msgid "View %{ammo_type_name}"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/index.html.heex:127
#, elixir-autogen, elixir-format
msgid "View ammo group of %{ammo_group_count} bullets"
msgstr ""

View File

@ -139,17 +139,11 @@ msgstr ""
msgid "Tag could not be added"
msgstr ""
#: lib/cannery/activity_log/shot_group.ex:122
#: lib/cannery/activity_log/shot_group.ex:126
#, elixir-autogen, elixir-format
msgid "Count must be at least 1"
msgstr ""
#: lib/cannery/activity_log/shot_group.ex:82
#: lib/cannery/activity_log/shot_group.ex:118
#, elixir-autogen, elixir-format
msgid "Count must be less than %{count}"
msgstr ""
#: lib/cannery_web/controllers/user_auth.ex:39
#: lib/cannery_web/controllers/user_auth.ex:161
#, elixir-autogen, elixir-format
@ -190,3 +184,9 @@ msgstr ""
#, elixir-autogen, elixir-format, fuzzy
msgid "Please select a valid user and ammo pack"
msgstr ""
#: lib/cannery/activity_log/shot_group.ex:83
#: lib/cannery/activity_log/shot_group.ex:121
#, elixir-autogen, elixir-format, fuzzy
msgid "Count must be less than %{count} shots"
msgstr ""

View File

@ -44,22 +44,22 @@ msgstr ""
msgid "A link to confirm your email change has been sent to the new address."
msgstr ""
#: lib/cannery_web/live/invite_live/index.html.heex:98
#: lib/cannery_web/live/invite_live/index.html.heex:126
#: lib/cannery_web/live/invite_live/index.html.heex:99
#: lib/cannery_web/live/invite_live/index.html.heex:127
#, elixir-autogen, elixir-format
msgid "Are you sure you want to delete %{email}? This action is permanent!"
msgstr ""
#: lib/cannery_web/live/container_live/index.html.heex:92
#: lib/cannery_web/live/container_live/index.html.heex:135
#: lib/cannery_web/live/container_live/index.html.heex:136
#: lib/cannery_web/live/container_live/show.html.heex:55
#: lib/cannery_web/live/tag_live/index.html.heex:63
#: lib/cannery_web/live/tag_live/index.html.heex:62
#, elixir-autogen, elixir-format
msgid "Are you sure you want to delete %{name}?"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/index.html.heex:153
#: lib/cannery_web/live/ammo_group_live/show.html.heex:75
#: lib/cannery_web/live/ammo_group_live/index.html.heex:164
#: lib/cannery_web/live/ammo_group_live/show.html.heex:78
#, elixir-autogen, elixir-format
msgid "Are you sure you want to delete this ammo?"
msgstr ""
@ -155,8 +155,8 @@ msgstr ""
msgid "Are you sure you want to unstage this ammo?"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/show.ex:142
#: lib/cannery_web/live/range_live/index.html.heex:116
#: lib/cannery_web/live/ammo_group_live/show.ex:144
#: lib/cannery_web/live/range_live/index.html.heex:119
#, elixir-autogen, elixir-format
msgid "Are you sure you want to delete this shot record?"
msgstr ""
@ -236,7 +236,7 @@ msgid_plural "Ammo added successfully"
msgstr[0] ""
msgstr[1] ""
#: lib/cannery_web/live/ammo_type_live/index.html.heex:90
#: lib/cannery_web/live/ammo_type_live/index.html.heex:89
#: lib/cannery_web/live/ammo_type_live/show.html.heex:29
#, elixir-autogen, elixir-format, fuzzy
msgid "Are you sure you want to delete %{name}? This will delete all %{name} type ammo as well!"
@ -272,12 +272,12 @@ msgstr ""
msgid "%{user_email} deleted succesfully"
msgstr ""
#: lib/cannery_web/live/invite_live/index.html.heex:48
#: lib/cannery_web/live/invite_live/index.html.heex:49
#, elixir-autogen, elixir-format, fuzzy
msgid "Are you sure you want to delete the invite for %{invite_name}?"
msgstr ""
#: lib/cannery_web/live/invite_live/index.html.heex:73
#: lib/cannery_web/live/invite_live/index.html.heex:74
#, elixir-autogen, elixir-format, fuzzy
msgid "Are you sure you want to make %{invite_name} unlimited?"
msgstr ""

View File

@ -138,17 +138,11 @@ msgstr ""
msgid "Tag could not be added"
msgstr ""
#: lib/cannery/activity_log/shot_group.ex:122
#: lib/cannery/activity_log/shot_group.ex:126
#, elixir-autogen, elixir-format
msgid "Count must be at least 1"
msgstr ""
#: lib/cannery/activity_log/shot_group.ex:82
#: lib/cannery/activity_log/shot_group.ex:118
#, elixir-autogen, elixir-format
msgid "Count must be less than %{count}"
msgstr ""
#: lib/cannery_web/controllers/user_auth.ex:39
#: lib/cannery_web/controllers/user_auth.ex:161
#, elixir-autogen, elixir-format
@ -189,3 +183,9 @@ msgstr ""
#, elixir-autogen, elixir-format
msgid "Please select a valid user and ammo pack"
msgstr ""
#: lib/cannery/activity_log/shot_group.ex:83
#: lib/cannery/activity_log/shot_group.ex:121
#, elixir-autogen, elixir-format
msgid "Count must be less than %{count} shots"
msgstr ""

View File

@ -169,8 +169,8 @@ msgstr "Preparar munición"
msgid "Why not get some ready to shoot?"
msgstr "¿Por qué no preparar parte para disparar?"
#: lib/cannery_web/live/ammo_group_live/index.html.heex:101
#: lib/cannery_web/live/ammo_group_live/show.html.heex:101
#: lib/cannery_web/live/ammo_group_live/index.html.heex:100
#: lib/cannery_web/live/ammo_group_live/show.html.heex:107
#: lib/cannery_web/live/range_live/index.html.heex:38
#, elixir-autogen, elixir-format
msgid "Record shots"
@ -181,7 +181,7 @@ msgstr "Tiros récord"
msgid "Add another container!"
msgstr "¡Añade otro contenedor!"
#: lib/cannery_web/live/ammo_group_live/show.html.heex:94
#: lib/cannery_web/live/ammo_group_live/show.html.heex:100
#, elixir-autogen, elixir-format
msgid "Move containers"
msgstr "Mover contenedores"
@ -191,7 +191,7 @@ msgstr "Mover contenedores"
msgid "Select"
msgstr "Seleccionar"
#: lib/cannery_web/live/invite_live/index.html.heex:30
#: lib/cannery_web/live/invite_live/index.html.heex:31
#, elixir-autogen, elixir-format
msgid "Copy to clipboard"
msgstr "Copiar al portapapeles"
@ -216,7 +216,7 @@ msgstr "Cambiar Lenguaje"
msgid "Change language"
msgstr "Cambiar lenguaje"
#: lib/cannery_web/live/ammo_group_live/show.html.heex:60
#: lib/cannery_web/live/ammo_group_live/show.html.heex:59
#, elixir-autogen, elixir-format
msgid "View in Catalog"
msgstr "Ver en Catalogo"
@ -231,18 +231,18 @@ msgstr "añade primero un tipo de munición"
msgid "Move ammo"
msgstr "Mover munición"
#: lib/cannery_web/live/invite_live/index.html.heex:78
#: lib/cannery_web/live/invite_live/index.html.heex:79
#, elixir-autogen, elixir-format
msgid "Set Unlimited"
msgstr "Activar ilimitados"
#: lib/cannery_web/live/ammo_group_live/show.html.heex:86
#: lib/cannery_web/live/ammo_group_live/show.html.heex:93
#: lib/cannery_web/live/range_live/index.html.heex:31
#, elixir-autogen, elixir-format
msgid "Stage for range"
msgstr "Preparar para el campo de tiro"
#: lib/cannery_web/live/ammo_group_live/show.html.heex:85
#: lib/cannery_web/live/ammo_group_live/show.html.heex:92
#: lib/cannery_web/live/range_live/index.html.heex:30
#, elixir-autogen, elixir-format
msgid "Unstage from range"

View File

@ -19,7 +19,7 @@ msgstr ""
msgid "Access from any internet-capable device"
msgstr "Acceso desde cualquier dispositivo con conexión a internet"
#: lib/cannery_web/live/invite_live/index.html.heex:87
#: lib/cannery_web/live/invite_live/index.html.heex:88
#, elixir-autogen, elixir-format
msgid "Admins"
msgstr "Administradores"
@ -267,7 +267,7 @@ msgid "New Tag"
msgstr "Nueva Etiqueta"
#: lib/cannery_web/live/ammo_group_live/index.html.heex:10
#: lib/cannery_web/live/ammo_group_live/index.html.heex:71
#: lib/cannery_web/live/ammo_group_live/index.html.heex:70
#, elixir-autogen, elixir-format
msgid "No Ammo"
msgstr "Sin Munición"
@ -278,7 +278,7 @@ msgid "No ammo for this type"
msgstr "Sin munición para este tipo"
#: lib/cannery_web/live/container_live/index.html.heex:8
#: lib/cannery_web/live/container_live/index.html.heex:47
#: lib/cannery_web/live/container_live/index.html.heex:46
#, elixir-autogen, elixir-format
msgid "No containers"
msgstr "Sin contenedores"
@ -290,7 +290,7 @@ msgstr "Sin invitaciones"
#: lib/cannery_web/live/container_live/edit_tags_component.html.heex:29
#: lib/cannery_web/live/tag_live/index.html.heex:10
#: lib/cannery_web/live/tag_live/index.html.heex:43
#: lib/cannery_web/live/tag_live/index.html.heex:42
#, elixir-autogen, elixir-format
msgid "No tags"
msgstr "Sin etiquetas"
@ -372,7 +372,7 @@ msgstr "Simple:"
msgid "Steel"
msgstr "Acero"
#: lib/cannery_web/live/ammo_group_live/show.html.heex:111
#: lib/cannery_web/live/ammo_group_live/show.html.heex:117
#, elixir-autogen, elixir-format
msgid "Stored in"
msgstr "Guardado en"
@ -421,7 +421,7 @@ msgstr "Tipo"
msgid "Type:"
msgstr "Tipo:"
#: lib/cannery_web/live/invite_live/index.html.heex:115
#: lib/cannery_web/live/invite_live/index.html.heex:116
#, elixir-autogen, elixir-format
msgid "Users"
msgstr "Usuarios"
@ -488,7 +488,7 @@ msgid "New Shot Records"
msgstr "Nuevos Tiros Récord"
#: lib/cannery_web/live/range_live/index.html.heex:48
#: lib/cannery_web/live/range_live/index.html.heex:90
#: lib/cannery_web/live/range_live/index.html.heex:89
#, elixir-autogen, elixir-format
msgid "No shots recorded"
msgstr "No se han grabado tiros"
@ -513,7 +513,7 @@ msgid "Shot Records"
msgstr "Récords de Tiro"
#: lib/cannery_web/live/ammo_group_live/index.ex:38
#: lib/cannery_web/live/ammo_group_live/index.html.heex:118
#: lib/cannery_web/live/ammo_group_live/index.html.heex:117
#, elixir-autogen, elixir-format
msgid "Move ammo"
msgstr "Mover munición"
@ -593,12 +593,12 @@ msgstr "Contraseña actual"
msgid "New password"
msgstr "Nueva contraseña"
#: lib/cannery_web/live/ammo_group_live/index.html.heex:94
#: lib/cannery_web/live/ammo_group_live/index.html.heex:93
#, elixir-autogen, elixir-format
msgid "Stage"
msgstr "Preparar"
#: lib/cannery_web/live/ammo_group_live/index.html.heex:94
#: lib/cannery_web/live/ammo_group_live/index.html.heex:93
#, elixir-autogen, elixir-format
msgid "Unstage"
msgstr "Retirar"
@ -665,7 +665,7 @@ msgstr "Cantidad original:"
msgid "Percentage left:"
msgstr "Pocentaje restante:"
#: lib/cannery_web/live/ammo_group_live/show.html.heex:124
#: lib/cannery_web/live/ammo_group_live/show.html.heex:130
#, elixir-autogen, elixir-format
msgid "Rounds used"
msgstr "Balas usadas"
@ -780,7 +780,7 @@ msgstr "No hay munición en este contenedor"
msgid "Show Ammo"
msgstr "Mostrar Munición"
#: lib/cannery_web/live/ammo_group_live/show.html.heex:116
#: lib/cannery_web/live/ammo_group_live/show.html.heex:122
#, elixir-autogen, elixir-format
msgid "This ammo is not in a container"
msgstr "Esta munición no está en un contenedor"
@ -814,8 +814,8 @@ msgstr ""
msgid "Container:"
msgstr "Contenedor:"
#: lib/cannery_web/live/ammo_group_live/index.html.heex:64
#: lib/cannery_web/live/ammo_type_live/index.html.heex:39
#: lib/cannery_web/live/ammo_group_live/index.html.heex:63
#: lib/cannery_web/live/ammo_type_live/index.html.heex:38
#: lib/cannery_web/live/ammo_type_live/show.html.heex:153
#: lib/cannery_web/live/container_live/show.html.heex:99
#, elixir-autogen, elixir-format
@ -846,7 +846,7 @@ msgid "Rounds"
msgstr "Balas"
#: lib/cannery_web/live/ammo_type_live/show.html.heex:159
#: lib/cannery_web/live/container_live/index.html.heex:39
#: lib/cannery_web/live/container_live/index.html.heex:38
#: lib/cannery_web/live/container_live/show.html.heex:105
#, elixir-autogen, elixir-format
msgid "View as table"
@ -1004,7 +1004,9 @@ msgid "Average CPR"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/index.ex:28
#: lib/cannery_web/live/ammo_type_live/index.html.heex:70
#: lib/cannery_web/live/ammo_type_live/show.ex:120
#: lib/cannery_web/live/ammo_type_live/show.html.heex:19
#, elixir-autogen, elixir-format
msgid "Edit %{ammo_type_name}"
msgstr "Editar %{ammo_type_name}"
@ -1083,32 +1085,32 @@ msgid "Edit ammo"
msgstr "Editar munición"
#: lib/cannery_web/live/ammo_type_live/index.html.heex:8
#: lib/cannery_web/live/ammo_type_live/index.html.heex:46
#: lib/cannery_web/live/ammo_type_live/index.html.heex:45
#, elixir-autogen, elixir-format, fuzzy
msgid "No Ammo types"
msgstr "Sin tipo de Munición"
#: lib/cannery_web/live/ammo_type_live/index.html.heex:33
#: lib/cannery_web/live/ammo_type_live/index.html.heex:32
#, elixir-autogen, elixir-format
msgid "Search catalog"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/index.html.heex:58
#: lib/cannery_web/live/ammo_group_live/index.html.heex:57
#, elixir-autogen, elixir-format, fuzzy
msgid "Search ammo"
msgstr ""
#: lib/cannery_web/live/container_live/index.html.heex:33
#: lib/cannery_web/live/container_live/index.html.heex:32
#, elixir-autogen, elixir-format
msgid "Search containers"
msgstr ""
#: lib/cannery_web/live/tag_live/index.html.heex:36
#: lib/cannery_web/live/tag_live/index.html.heex:35
#, elixir-autogen, elixir-format, fuzzy
msgid "Search tags"
msgstr ""
#: lib/cannery_web/live/range_live/index.html.heex:83
#: lib/cannery_web/live/range_live/index.html.heex:82
#, elixir-autogen, elixir-format
msgid "Search shot records"
msgstr ""
@ -1182,12 +1184,12 @@ msgstr ""
msgid "Welcome to Cannery"
msgstr "Bienvenide a %{name}"
#: lib/cannery_web/live/invite_live/index.html.heex:63
#: lib/cannery_web/live/invite_live/index.html.heex:64
#, elixir-autogen, elixir-format
msgid "Disable"
msgstr ""
#: lib/cannery_web/live/invite_live/index.html.heex:63
#: lib/cannery_web/live/invite_live/index.html.heex:64
#, elixir-autogen, elixir-format
msgid "Enable"
msgstr ""
@ -1216,3 +1218,108 @@ msgstr ""
#, elixir-autogen, elixir-format
msgid "Password"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/index.html.heex:78
#, elixir-autogen, elixir-format, fuzzy
msgid "Clone %{ammo_type_name}"
msgstr "Editar %{ammo_type_name}"
#: lib/cannery_web/live/container_live/index.html.heex:81
#: lib/cannery_web/live/container_live/index.html.heex:125
#, elixir-autogen, elixir-format
msgid "Clone %{container_name}"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/index.html.heex:151
#, elixir-autogen, elixir-format
msgid "Clone ammo group of %{ammo_group_count} bullets"
msgstr ""
#: lib/cannery_web/live/invite_live/index.html.heex:29
#, elixir-autogen, elixir-format
msgid "Copy invite link for %{invite_name}"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/index.html.heex:95
#: lib/cannery_web/live/ammo_type_live/show.html.heex:35
#, elixir-autogen, elixir-format, fuzzy
msgid "Delete %{ammo_type_name}"
msgstr "Editar %{ammo_type_name}"
#: lib/cannery_web/live/container_live/index.html.heex:94
#: lib/cannery_web/live/container_live/index.html.heex:138
#: lib/cannery_web/live/container_live/show.html.heex:57
#, elixir-autogen, elixir-format
msgid "Delete %{container_name}"
msgstr ""
#: lib/cannery_web/live/tag_live/index.html.heex:64
#, elixir-autogen, elixir-format
msgid "Delete %{tag_name}"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/index.html.heex:166
#: lib/cannery_web/live/ammo_group_live/show.html.heex:80
#, elixir-autogen, elixir-format
msgid "Delete ammo group of %{ammo_group_count} bullets"
msgstr ""
#: lib/cannery_web/live/invite_live/index.html.heex:53
#, elixir-autogen, elixir-format
msgid "Delete invite for %{invite_name}"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/show.ex:146
#: lib/cannery_web/live/range_live/index.html.heex:122
#, elixir-autogen, elixir-format
msgid "Delete shot record of %{shot_group_count} shots"
msgstr ""
#: lib/cannery_web/live/container_live/index.html.heex:73
#: lib/cannery_web/live/container_live/index.html.heex:117
#: lib/cannery_web/live/container_live/show.html.heex:45
#, elixir-autogen, elixir-format, fuzzy
msgid "Edit %{container_name}"
msgstr "Editar %{name}"
#: lib/cannery_web/live/tag_live/index.html.heex:51
#, elixir-autogen, elixir-format, fuzzy
msgid "Edit %{tag_name}"
msgstr "Editar %{name}"
#: lib/cannery_web/live/ammo_group_live/index.html.heex:139
#: lib/cannery_web/live/ammo_group_live/show.html.heex:66
#, elixir-autogen, elixir-format
msgid "Edit ammo group of %{ammo_group_count} bullets"
msgstr ""
#: lib/cannery_web/live/invite_live/index.html.heex:38
#, elixir-autogen, elixir-format
msgid "Edit invite for %{invite_name}"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/show.ex:133
#, elixir-autogen, elixir-format
msgid "Edit shot group of %{shot_group_count} shots"
msgstr ""
#: lib/cannery_web/live/range_live/index.html.heex:105
#, elixir-autogen, elixir-format
msgid "Edit shot record of %{shot_group_count} shots"
msgstr ""
#: lib/cannery_web/live/container_live/index.html.heex:63
#: lib/cannery_web/live/container_live/index.html.heex:108
#, elixir-autogen, elixir-format
msgid "Tag %{container_name}"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/index.html.heex:62
#, elixir-autogen, elixir-format, fuzzy
msgid "View %{ammo_type_name}"
msgstr "Editar %{ammo_type_name}"
#: lib/cannery_web/live/ammo_group_live/index.html.heex:127
#, elixir-autogen, elixir-format
msgid "View ammo group of %{ammo_group_count} bullets"
msgstr ""

View File

@ -154,17 +154,11 @@ msgstr "Etiqueta no encontrada"
msgid "Tag could not be added"
msgstr "No se ha podido añadir la etiqueta"
#: lib/cannery/activity_log/shot_group.ex:122
#: lib/cannery/activity_log/shot_group.ex:126
#, elixir-autogen, elixir-format
msgid "Count must be at least 1"
msgstr "El recuento debe dar al menos 1"
#: lib/cannery/activity_log/shot_group.ex:82
#: lib/cannery/activity_log/shot_group.ex:118
#, elixir-autogen, elixir-format
msgid "Count must be less than %{count}"
msgstr "El recuento debe ser menos de %{count}"
#: lib/cannery_web/controllers/user_auth.ex:39
#: lib/cannery_web/controllers/user_auth.ex:161
#, elixir-autogen, elixir-format
@ -205,3 +199,9 @@ msgstr "Su navegador no es compatible con el elemento lienzo."
#, elixir-autogen, elixir-format
msgid "Please select a valid user and ammo pack"
msgstr "Por favor escoja un usuario y tipo de munición valido"
#: lib/cannery/activity_log/shot_group.ex:83
#: lib/cannery/activity_log/shot_group.ex:121
#, elixir-autogen, elixir-format, fuzzy
msgid "Count must be less than %{count} shots"
msgstr "El recuento debe ser menos de %{count}"

View File

@ -59,22 +59,22 @@ msgstr ""
"Un enlace para confirmar el correo electrónico ha sido enviado a la nueva "
"dirección."
#: lib/cannery_web/live/invite_live/index.html.heex:98
#: lib/cannery_web/live/invite_live/index.html.heex:126
#: lib/cannery_web/live/invite_live/index.html.heex:99
#: lib/cannery_web/live/invite_live/index.html.heex:127
#, elixir-autogen, elixir-format
msgid "Are you sure you want to delete %{email}? This action is permanent!"
msgstr "Está seguro que desea eliminar %{email}? Esta acción es permanente!"
#: lib/cannery_web/live/container_live/index.html.heex:92
#: lib/cannery_web/live/container_live/index.html.heex:135
#: lib/cannery_web/live/container_live/index.html.heex:136
#: lib/cannery_web/live/container_live/show.html.heex:55
#: lib/cannery_web/live/tag_live/index.html.heex:63
#: lib/cannery_web/live/tag_live/index.html.heex:62
#, elixir-autogen, elixir-format
msgid "Are you sure you want to delete %{name}?"
msgstr "Está seguro que desea eliminar %{name}?"
#: lib/cannery_web/live/ammo_group_live/index.html.heex:153
#: lib/cannery_web/live/ammo_group_live/show.html.heex:75
#: lib/cannery_web/live/ammo_group_live/index.html.heex:164
#: lib/cannery_web/live/ammo_group_live/show.html.heex:78
#, elixir-autogen, elixir-format
msgid "Are you sure you want to delete this ammo?"
msgstr "Está seguro que desea eliminar esta munición?"
@ -175,8 +175,8 @@ msgstr "Tiros registrados exitosamente"
msgid "Are you sure you want to unstage this ammo?"
msgstr "Está seguro que desea desmontar esta munición?"
#: lib/cannery_web/live/ammo_group_live/show.ex:142
#: lib/cannery_web/live/range_live/index.html.heex:116
#: lib/cannery_web/live/ammo_group_live/show.ex:144
#: lib/cannery_web/live/range_live/index.html.heex:119
#, elixir-autogen, elixir-format
msgid "Are you sure you want to delete this shot record?"
msgstr "¿Está segure que quiere borrar este récord de disparos?"
@ -256,7 +256,7 @@ msgid_plural "Ammo added successfully"
msgstr[0] "Munición añadida exitosamente"
msgstr[1] "Municiones añadidas exitosamente"
#: lib/cannery_web/live/ammo_type_live/index.html.heex:90
#: lib/cannery_web/live/ammo_type_live/index.html.heex:89
#: lib/cannery_web/live/ammo_type_live/show.html.heex:29
#, elixir-autogen, elixir-format
msgid "Are you sure you want to delete %{name}? This will delete all %{name} type ammo as well!"
@ -294,12 +294,12 @@ msgstr "%{name} actualizado exitosamente"
msgid "%{user_email} deleted succesfully"
msgstr "%{name} borrado exitosamente"
#: lib/cannery_web/live/invite_live/index.html.heex:48
#: lib/cannery_web/live/invite_live/index.html.heex:49
#, elixir-autogen, elixir-format, fuzzy
msgid "Are you sure you want to delete the invite for %{invite_name}?"
msgstr "Está seguro que quiere eliminar la invitación para %{name}?"
#: lib/cannery_web/live/invite_live/index.html.heex:73
#: lib/cannery_web/live/invite_live/index.html.heex:74
#, elixir-autogen, elixir-format, fuzzy
msgid "Are you sure you want to make %{invite_name} unlimited?"
msgstr "Está seguro que desea hacer %{name} ilimitado?"

View File

@ -169,8 +169,8 @@ msgstr "Munition préparée"
msgid "Why not get some ready to shoot?"
msgstr "Pourquoi pas en préparer pour tirer?"
#: lib/cannery_web/live/ammo_group_live/index.html.heex:101
#: lib/cannery_web/live/ammo_group_live/show.html.heex:101
#: lib/cannery_web/live/ammo_group_live/index.html.heex:100
#: lib/cannery_web/live/ammo_group_live/show.html.heex:107
#: lib/cannery_web/live/range_live/index.html.heex:38
#, elixir-autogen, elixir-format
msgid "Record shots"
@ -181,7 +181,7 @@ msgstr "Enregistrer des tirs"
msgid "Add another container!"
msgstr "Ajoutez un autre conteneur!"
#: lib/cannery_web/live/ammo_group_live/show.html.heex:94
#: lib/cannery_web/live/ammo_group_live/show.html.heex:100
#, elixir-autogen, elixir-format
msgid "Move containers"
msgstr "Déplacer les conteneurs"
@ -191,7 +191,7 @@ msgstr "Déplacer les conteneurs"
msgid "Select"
msgstr "Sélectionner"
#: lib/cannery_web/live/invite_live/index.html.heex:30
#: lib/cannery_web/live/invite_live/index.html.heex:31
#, elixir-autogen, elixir-format
msgid "Copy to clipboard"
msgstr "Copier dans le presse-papier"
@ -216,7 +216,7 @@ msgstr "Changer la langue"
msgid "Change language"
msgstr "Changer la langue"
#: lib/cannery_web/live/ammo_group_live/show.html.heex:60
#: lib/cannery_web/live/ammo_group_live/show.html.heex:59
#, elixir-autogen, elixir-format
msgid "View in Catalog"
msgstr "Voir en catalogue"
@ -231,18 +231,18 @@ msgstr "Ajoutez d'abord un type de munitions"
msgid "Move ammo"
msgstr ""
#: lib/cannery_web/live/invite_live/index.html.heex:78
#: lib/cannery_web/live/invite_live/index.html.heex:79
#, elixir-autogen, elixir-format
msgid "Set Unlimited"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/show.html.heex:86
#: lib/cannery_web/live/ammo_group_live/show.html.heex:93
#: lib/cannery_web/live/range_live/index.html.heex:31
#, elixir-autogen, elixir-format
msgid "Stage for range"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/show.html.heex:85
#: lib/cannery_web/live/ammo_group_live/show.html.heex:92
#: lib/cannery_web/live/range_live/index.html.heex:30
#, elixir-autogen, elixir-format
msgid "Unstage from range"

View File

@ -19,7 +19,7 @@ msgstr ""
msgid "Access from any internet-capable device"
msgstr "Accédez depuis nimporte quel appareil connecté à internet"
#: lib/cannery_web/live/invite_live/index.html.heex:87
#: lib/cannery_web/live/invite_live/index.html.heex:88
#, elixir-autogen, elixir-format
msgid "Admins"
msgstr "Administrateur·ices"
@ -267,7 +267,7 @@ msgid "New Tag"
msgstr "Nouveau tag"
#: lib/cannery_web/live/ammo_group_live/index.html.heex:10
#: lib/cannery_web/live/ammo_group_live/index.html.heex:71
#: lib/cannery_web/live/ammo_group_live/index.html.heex:70
#, elixir-autogen, elixir-format
msgid "No Ammo"
msgstr "Aucune munition"
@ -278,7 +278,7 @@ msgid "No ammo for this type"
msgstr "Aucune munition pour ce type"
#: lib/cannery_web/live/container_live/index.html.heex:8
#: lib/cannery_web/live/container_live/index.html.heex:47
#: lib/cannery_web/live/container_live/index.html.heex:46
#, elixir-autogen, elixir-format
msgid "No containers"
msgstr "Aucun conteneur"
@ -290,7 +290,7 @@ msgstr "Aucune invitation"
#: lib/cannery_web/live/container_live/edit_tags_component.html.heex:29
#: lib/cannery_web/live/tag_live/index.html.heex:10
#: lib/cannery_web/live/tag_live/index.html.heex:43
#: lib/cannery_web/live/tag_live/index.html.heex:42
#, elixir-autogen, elixir-format
msgid "No tags"
msgstr "Aucun tag"
@ -372,7 +372,7 @@ msgstr "Simple:"
msgid "Steel"
msgstr "Acier"
#: lib/cannery_web/live/ammo_group_live/show.html.heex:111
#: lib/cannery_web/live/ammo_group_live/show.html.heex:117
#, elixir-autogen, elixir-format
msgid "Stored in"
msgstr "Est stocké dans"
@ -422,7 +422,7 @@ msgstr "Type"
msgid "Type:"
msgstr "Type:"
#: lib/cannery_web/live/invite_live/index.html.heex:115
#: lib/cannery_web/live/invite_live/index.html.heex:116
#, elixir-autogen, elixir-format
msgid "Users"
msgstr "Utilisateurs"
@ -489,7 +489,7 @@ msgid "New Shot Records"
msgstr "Nouveaux enregistrements de tir"
#: lib/cannery_web/live/range_live/index.html.heex:48
#: lib/cannery_web/live/range_live/index.html.heex:90
#: lib/cannery_web/live/range_live/index.html.heex:89
#, elixir-autogen, elixir-format
msgid "No shots recorded"
msgstr "Aucun tir enregistré"
@ -514,7 +514,7 @@ msgid "Shot Records"
msgstr "Enregistrements de tir"
#: lib/cannery_web/live/ammo_group_live/index.ex:38
#: lib/cannery_web/live/ammo_group_live/index.html.heex:118
#: lib/cannery_web/live/ammo_group_live/index.html.heex:117
#, elixir-autogen, elixir-format
msgid "Move ammo"
msgstr "Déplacer munition"
@ -594,12 +594,12 @@ msgstr "Mot de passe actuel"
msgid "New password"
msgstr "Nouveau mot de passe"
#: lib/cannery_web/live/ammo_group_live/index.html.heex:94
#: lib/cannery_web/live/ammo_group_live/index.html.heex:93
#, elixir-autogen, elixir-format
msgid "Stage"
msgstr "Sélectionné"
#: lib/cannery_web/live/ammo_group_live/index.html.heex:94
#: lib/cannery_web/live/ammo_group_live/index.html.heex:93
#, elixir-autogen, elixir-format
msgid "Unstage"
msgstr "Désélectionner"
@ -666,7 +666,7 @@ msgstr "Nombre original:"
msgid "Percentage left:"
msgstr "Pourcentage restant:"
#: lib/cannery_web/live/ammo_group_live/show.html.heex:124
#: lib/cannery_web/live/ammo_group_live/show.html.heex:130
#, elixir-autogen, elixir-format
msgid "Rounds used"
msgstr "Cartouches utilisées"
@ -781,7 +781,7 @@ msgstr "Aucun groupe de munition pour ce conteneur"
msgid "Show Ammo"
msgstr "Montrer le type de munition"
#: lib/cannery_web/live/ammo_group_live/show.html.heex:116
#: lib/cannery_web/live/ammo_group_live/show.html.heex:122
#, elixir-autogen, elixir-format, fuzzy
msgid "This ammo is not in a container"
msgstr "Ce groupe de munition nest pas dans un conteneur"
@ -815,8 +815,8 @@ msgstr ""
msgid "Container:"
msgstr "Conteneur"
#: lib/cannery_web/live/ammo_group_live/index.html.heex:64
#: lib/cannery_web/live/ammo_type_live/index.html.heex:39
#: lib/cannery_web/live/ammo_group_live/index.html.heex:63
#: lib/cannery_web/live/ammo_type_live/index.html.heex:38
#: lib/cannery_web/live/ammo_type_live/show.html.heex:153
#: lib/cannery_web/live/container_live/show.html.heex:99
#, elixir-autogen, elixir-format
@ -847,7 +847,7 @@ msgid "Rounds"
msgstr "Cartouches:"
#: lib/cannery_web/live/ammo_type_live/show.html.heex:159
#: lib/cannery_web/live/container_live/index.html.heex:39
#: lib/cannery_web/live/container_live/index.html.heex:38
#: lib/cannery_web/live/container_live/show.html.heex:105
#, elixir-autogen, elixir-format
msgid "View as table"
@ -1005,7 +1005,9 @@ msgid "Average CPR"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/index.ex:28
#: lib/cannery_web/live/ammo_type_live/index.html.heex:70
#: lib/cannery_web/live/ammo_type_live/show.ex:120
#: lib/cannery_web/live/ammo_type_live/show.html.heex:19
#, elixir-autogen, elixir-format, fuzzy
msgid "Edit %{ammo_type_name}"
msgstr "Éditer %{name}"
@ -1084,32 +1086,32 @@ msgid "Edit ammo"
msgstr "Éditer le type de munition"
#: lib/cannery_web/live/ammo_type_live/index.html.heex:8
#: lib/cannery_web/live/ammo_type_live/index.html.heex:46
#: lib/cannery_web/live/ammo_type_live/index.html.heex:45
#, elixir-autogen, elixir-format, fuzzy
msgid "No Ammo types"
msgstr "Aucun type de munition"
#: lib/cannery_web/live/ammo_type_live/index.html.heex:33
#: lib/cannery_web/live/ammo_type_live/index.html.heex:32
#, elixir-autogen, elixir-format
msgid "Search catalog"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/index.html.heex:58
#: lib/cannery_web/live/ammo_group_live/index.html.heex:57
#, elixir-autogen, elixir-format, fuzzy
msgid "Search ammo"
msgstr ""
#: lib/cannery_web/live/container_live/index.html.heex:33
#: lib/cannery_web/live/container_live/index.html.heex:32
#, elixir-autogen, elixir-format
msgid "Search containers"
msgstr ""
#: lib/cannery_web/live/tag_live/index.html.heex:36
#: lib/cannery_web/live/tag_live/index.html.heex:35
#, elixir-autogen, elixir-format, fuzzy
msgid "Search tags"
msgstr ""
#: lib/cannery_web/live/range_live/index.html.heex:83
#: lib/cannery_web/live/range_live/index.html.heex:82
#, elixir-autogen, elixir-format
msgid "Search shot records"
msgstr ""
@ -1183,12 +1185,12 @@ msgstr ""
msgid "Welcome to Cannery"
msgstr "Bienvenue à %{name}"
#: lib/cannery_web/live/invite_live/index.html.heex:63
#: lib/cannery_web/live/invite_live/index.html.heex:64
#, elixir-autogen, elixir-format
msgid "Disable"
msgstr ""
#: lib/cannery_web/live/invite_live/index.html.heex:63
#: lib/cannery_web/live/invite_live/index.html.heex:64
#, elixir-autogen, elixir-format
msgid "Enable"
msgstr ""
@ -1217,3 +1219,108 @@ msgstr ""
#, elixir-autogen, elixir-format
msgid "Password"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/index.html.heex:78
#, elixir-autogen, elixir-format, fuzzy
msgid "Clone %{ammo_type_name}"
msgstr "Éditer %{name}"
#: lib/cannery_web/live/container_live/index.html.heex:81
#: lib/cannery_web/live/container_live/index.html.heex:125
#, elixir-autogen, elixir-format
msgid "Clone %{container_name}"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/index.html.heex:151
#, elixir-autogen, elixir-format
msgid "Clone ammo group of %{ammo_group_count} bullets"
msgstr ""
#: lib/cannery_web/live/invite_live/index.html.heex:29
#, elixir-autogen, elixir-format
msgid "Copy invite link for %{invite_name}"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/index.html.heex:95
#: lib/cannery_web/live/ammo_type_live/show.html.heex:35
#, elixir-autogen, elixir-format, fuzzy
msgid "Delete %{ammo_type_name}"
msgstr "Éditer %{name}"
#: lib/cannery_web/live/container_live/index.html.heex:94
#: lib/cannery_web/live/container_live/index.html.heex:138
#: lib/cannery_web/live/container_live/show.html.heex:57
#, elixir-autogen, elixir-format
msgid "Delete %{container_name}"
msgstr ""
#: lib/cannery_web/live/tag_live/index.html.heex:64
#, elixir-autogen, elixir-format
msgid "Delete %{tag_name}"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/index.html.heex:166
#: lib/cannery_web/live/ammo_group_live/show.html.heex:80
#, elixir-autogen, elixir-format
msgid "Delete ammo group of %{ammo_group_count} bullets"
msgstr ""
#: lib/cannery_web/live/invite_live/index.html.heex:53
#, elixir-autogen, elixir-format
msgid "Delete invite for %{invite_name}"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/show.ex:146
#: lib/cannery_web/live/range_live/index.html.heex:122
#, elixir-autogen, elixir-format
msgid "Delete shot record of %{shot_group_count} shots"
msgstr ""
#: lib/cannery_web/live/container_live/index.html.heex:73
#: lib/cannery_web/live/container_live/index.html.heex:117
#: lib/cannery_web/live/container_live/show.html.heex:45
#, elixir-autogen, elixir-format, fuzzy
msgid "Edit %{container_name}"
msgstr "Éditer %{name}"
#: lib/cannery_web/live/tag_live/index.html.heex:51
#, elixir-autogen, elixir-format, fuzzy
msgid "Edit %{tag_name}"
msgstr "Éditer %{name}"
#: lib/cannery_web/live/ammo_group_live/index.html.heex:139
#: lib/cannery_web/live/ammo_group_live/show.html.heex:66
#, elixir-autogen, elixir-format
msgid "Edit ammo group of %{ammo_group_count} bullets"
msgstr ""
#: lib/cannery_web/live/invite_live/index.html.heex:38
#, elixir-autogen, elixir-format
msgid "Edit invite for %{invite_name}"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/show.ex:133
#, elixir-autogen, elixir-format
msgid "Edit shot group of %{shot_group_count} shots"
msgstr ""
#: lib/cannery_web/live/range_live/index.html.heex:105
#, elixir-autogen, elixir-format
msgid "Edit shot record of %{shot_group_count} shots"
msgstr ""
#: lib/cannery_web/live/container_live/index.html.heex:63
#: lib/cannery_web/live/container_live/index.html.heex:108
#, elixir-autogen, elixir-format
msgid "Tag %{container_name}"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/index.html.heex:62
#, elixir-autogen, elixir-format, fuzzy
msgid "View %{ammo_type_name}"
msgstr "Éditer %{name}"
#: lib/cannery_web/live/ammo_group_live/index.html.heex:127
#, elixir-autogen, elixir-format
msgid "View ammo group of %{ammo_group_count} bullets"
msgstr ""

View File

@ -153,17 +153,11 @@ msgstr "Tag pas trouvé"
msgid "Tag could not be added"
msgstr "Le tag na pas pu être ajouté"
#: lib/cannery/activity_log/shot_group.ex:122
#: lib/cannery/activity_log/shot_group.ex:126
#, elixir-autogen, elixir-format
msgid "Count must be at least 1"
msgstr "Le nombre doit être au moins égal à 1"
#: lib/cannery/activity_log/shot_group.ex:82
#: lib/cannery/activity_log/shot_group.ex:118
#, elixir-autogen, elixir-format
msgid "Count must be less than %{count}"
msgstr "La quantité doit être inférieur à %{count}"
#: lib/cannery_web/controllers/user_auth.ex:39
#: lib/cannery_web/controllers/user_auth.ex:161
#, elixir-autogen, elixir-format
@ -206,3 +200,9 @@ msgstr ""
#, elixir-autogen, elixir-format, fuzzy
msgid "Please select a valid user and ammo pack"
msgstr "Veuillez choisir un utilisateur valide et un groupe de munitions"
#: lib/cannery/activity_log/shot_group.ex:83
#: lib/cannery/activity_log/shot_group.ex:121
#, elixir-autogen, elixir-format, fuzzy
msgid "Count must be less than %{count} shots"
msgstr "La quantité doit être inférieur à %{count}"

View File

@ -59,23 +59,23 @@ msgstr ""
"Un lien pour confirmer votre changement de mél a été envoyé à la nouvelle "
"adresse."
#: lib/cannery_web/live/invite_live/index.html.heex:98
#: lib/cannery_web/live/invite_live/index.html.heex:126
#: lib/cannery_web/live/invite_live/index.html.heex:99
#: lib/cannery_web/live/invite_live/index.html.heex:127
#, elixir-autogen, elixir-format
msgid "Are you sure you want to delete %{email}? This action is permanent!"
msgstr ""
"Êtes-vous certain·e de supprimer %{email}? Cette action est définitive!"
#: lib/cannery_web/live/container_live/index.html.heex:92
#: lib/cannery_web/live/container_live/index.html.heex:135
#: lib/cannery_web/live/container_live/index.html.heex:136
#: lib/cannery_web/live/container_live/show.html.heex:55
#: lib/cannery_web/live/tag_live/index.html.heex:63
#: lib/cannery_web/live/tag_live/index.html.heex:62
#, elixir-autogen, elixir-format
msgid "Are you sure you want to delete %{name}?"
msgstr "Êtes-vous certain·e de supprimer %{name}?"
#: lib/cannery_web/live/ammo_group_live/index.html.heex:153
#: lib/cannery_web/live/ammo_group_live/show.html.heex:75
#: lib/cannery_web/live/ammo_group_live/index.html.heex:164
#: lib/cannery_web/live/ammo_group_live/show.html.heex:78
#, elixir-autogen, elixir-format
msgid "Are you sure you want to delete this ammo?"
msgstr "Êtes-vous certain·e de supprimer cette munition?"
@ -177,8 +177,8 @@ msgstr "Tirs enregistré avec succès"
msgid "Are you sure you want to unstage this ammo?"
msgstr "Êtes-vous certain·e de vouloir désélectionner cette munition?"
#: lib/cannery_web/live/ammo_group_live/show.ex:142
#: lib/cannery_web/live/range_live/index.html.heex:116
#: lib/cannery_web/live/ammo_group_live/show.ex:144
#: lib/cannery_web/live/range_live/index.html.heex:119
#, elixir-autogen, elixir-format
msgid "Are you sure you want to delete this shot record?"
msgstr "Êtes-vous certain·e de vouloir supprimer cet enregistrement de tir?"
@ -258,7 +258,7 @@ msgid_plural "Ammo added successfully"
msgstr[0] "Groupe de munition mis à jour avec succès"
msgstr[1] "Groupe de munition mis à jour avec succès"
#: lib/cannery_web/live/ammo_type_live/index.html.heex:90
#: lib/cannery_web/live/ammo_type_live/index.html.heex:89
#: lib/cannery_web/live/ammo_type_live/show.html.heex:29
#, elixir-autogen, elixir-format, fuzzy
msgid "Are you sure you want to delete %{name}? This will delete all %{name} type ammo as well!"
@ -294,12 +294,12 @@ msgstr "%{name} mis à jour avec succès"
msgid "%{user_email} deleted succesfully"
msgstr "%{name} supprimé· avec succès"
#: lib/cannery_web/live/invite_live/index.html.heex:48
#: lib/cannery_web/live/invite_live/index.html.heex:49
#, elixir-autogen, elixir-format, fuzzy
msgid "Are you sure you want to delete the invite for %{invite_name}?"
msgstr "Êtes-vous certain·e de supprimer linvitation pour %{name}?"
#: lib/cannery_web/live/invite_live/index.html.heex:73
#: lib/cannery_web/live/invite_live/index.html.heex:74
#, elixir-autogen, elixir-format, fuzzy
msgid "Are you sure you want to make %{invite_name} unlimited?"
msgstr "Êtes-vous certain·e de vouloir rendre %{name} illimité?"

View File

@ -167,8 +167,8 @@ msgstr ""
msgid "Why not get some ready to shoot?"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/index.html.heex:101
#: lib/cannery_web/live/ammo_group_live/show.html.heex:101
#: lib/cannery_web/live/ammo_group_live/index.html.heex:100
#: lib/cannery_web/live/ammo_group_live/show.html.heex:107
#: lib/cannery_web/live/range_live/index.html.heex:38
#, elixir-autogen, elixir-format
msgid "Record shots"
@ -179,7 +179,7 @@ msgstr ""
msgid "Add another container!"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/show.html.heex:94
#: lib/cannery_web/live/ammo_group_live/show.html.heex:100
#, elixir-autogen, elixir-format
msgid "Move containers"
msgstr ""
@ -189,7 +189,7 @@ msgstr ""
msgid "Select"
msgstr ""
#: lib/cannery_web/live/invite_live/index.html.heex:30
#: lib/cannery_web/live/invite_live/index.html.heex:31
#, elixir-autogen, elixir-format
msgid "Copy to clipboard"
msgstr ""
@ -214,7 +214,7 @@ msgstr ""
msgid "Change language"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/show.html.heex:60
#: lib/cannery_web/live/ammo_group_live/show.html.heex:59
#, elixir-autogen, elixir-format
msgid "View in Catalog"
msgstr ""
@ -229,18 +229,18 @@ msgstr ""
msgid "Move ammo"
msgstr ""
#: lib/cannery_web/live/invite_live/index.html.heex:78
#: lib/cannery_web/live/invite_live/index.html.heex:79
#, elixir-autogen, elixir-format
msgid "Set Unlimited"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/show.html.heex:86
#: lib/cannery_web/live/ammo_group_live/show.html.heex:93
#: lib/cannery_web/live/range_live/index.html.heex:31
#, elixir-autogen, elixir-format
msgid "Stage for range"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/show.html.heex:85
#: lib/cannery_web/live/ammo_group_live/show.html.heex:92
#: lib/cannery_web/live/range_live/index.html.heex:30
#, elixir-autogen, elixir-format
msgid "Unstage from range"

View File

@ -17,7 +17,7 @@ msgstr ""
msgid "Access from any internet-capable device"
msgstr ""
#: lib/cannery_web/live/invite_live/index.html.heex:87
#: lib/cannery_web/live/invite_live/index.html.heex:88
#, elixir-autogen, elixir-format
msgid "Admins"
msgstr ""
@ -265,7 +265,7 @@ msgid "New Tag"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/index.html.heex:10
#: lib/cannery_web/live/ammo_group_live/index.html.heex:71
#: lib/cannery_web/live/ammo_group_live/index.html.heex:70
#, elixir-autogen, elixir-format
msgid "No Ammo"
msgstr ""
@ -276,7 +276,7 @@ msgid "No ammo for this type"
msgstr ""
#: lib/cannery_web/live/container_live/index.html.heex:8
#: lib/cannery_web/live/container_live/index.html.heex:47
#: lib/cannery_web/live/container_live/index.html.heex:46
#, elixir-autogen, elixir-format
msgid "No containers"
msgstr ""
@ -288,7 +288,7 @@ msgstr ""
#: lib/cannery_web/live/container_live/edit_tags_component.html.heex:29
#: lib/cannery_web/live/tag_live/index.html.heex:10
#: lib/cannery_web/live/tag_live/index.html.heex:43
#: lib/cannery_web/live/tag_live/index.html.heex:42
#, elixir-autogen, elixir-format
msgid "No tags"
msgstr ""
@ -368,7 +368,7 @@ msgstr ""
msgid "Steel"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/show.html.heex:111
#: lib/cannery_web/live/ammo_group_live/show.html.heex:117
#, elixir-autogen, elixir-format
msgid "Stored in"
msgstr ""
@ -416,7 +416,7 @@ msgstr ""
msgid "Type:"
msgstr ""
#: lib/cannery_web/live/invite_live/index.html.heex:115
#: lib/cannery_web/live/invite_live/index.html.heex:116
#, elixir-autogen, elixir-format
msgid "Users"
msgstr ""
@ -483,7 +483,7 @@ msgid "New Shot Records"
msgstr ""
#: lib/cannery_web/live/range_live/index.html.heex:48
#: lib/cannery_web/live/range_live/index.html.heex:90
#: lib/cannery_web/live/range_live/index.html.heex:89
#, elixir-autogen, elixir-format
msgid "No shots recorded"
msgstr ""
@ -508,7 +508,7 @@ msgid "Shot Records"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/index.ex:38
#: lib/cannery_web/live/ammo_group_live/index.html.heex:118
#: lib/cannery_web/live/ammo_group_live/index.html.heex:117
#, elixir-autogen, elixir-format
msgid "Move ammo"
msgstr ""
@ -588,12 +588,12 @@ msgstr ""
msgid "New password"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/index.html.heex:94
#: lib/cannery_web/live/ammo_group_live/index.html.heex:93
#, elixir-autogen, elixir-format
msgid "Stage"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/index.html.heex:94
#: lib/cannery_web/live/ammo_group_live/index.html.heex:93
#, elixir-autogen, elixir-format
msgid "Unstage"
msgstr ""
@ -660,7 +660,7 @@ msgstr ""
msgid "Percentage left:"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/show.html.heex:124
#: lib/cannery_web/live/ammo_group_live/show.html.heex:130
#, elixir-autogen, elixir-format
msgid "Rounds used"
msgstr ""
@ -775,7 +775,7 @@ msgstr ""
msgid "Show Ammo"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/show.html.heex:116
#: lib/cannery_web/live/ammo_group_live/show.html.heex:122
#, elixir-autogen, elixir-format
msgid "This ammo is not in a container"
msgstr ""
@ -808,8 +808,8 @@ msgstr ""
msgid "Container:"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/index.html.heex:64
#: lib/cannery_web/live/ammo_type_live/index.html.heex:39
#: lib/cannery_web/live/ammo_group_live/index.html.heex:63
#: lib/cannery_web/live/ammo_type_live/index.html.heex:38
#: lib/cannery_web/live/ammo_type_live/show.html.heex:153
#: lib/cannery_web/live/container_live/show.html.heex:99
#, elixir-autogen, elixir-format
@ -840,7 +840,7 @@ msgid "Rounds"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/show.html.heex:159
#: lib/cannery_web/live/container_live/index.html.heex:39
#: lib/cannery_web/live/container_live/index.html.heex:38
#: lib/cannery_web/live/container_live/show.html.heex:105
#, elixir-autogen, elixir-format
msgid "View as table"
@ -998,7 +998,9 @@ msgid "Average CPR"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/index.ex:28
#: lib/cannery_web/live/ammo_type_live/index.html.heex:70
#: lib/cannery_web/live/ammo_type_live/show.ex:120
#: lib/cannery_web/live/ammo_type_live/show.html.heex:19
#, elixir-autogen, elixir-format, fuzzy
msgid "Edit %{ammo_type_name}"
msgstr ""
@ -1077,32 +1079,32 @@ msgid "Edit ammo"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/index.html.heex:8
#: lib/cannery_web/live/ammo_type_live/index.html.heex:46
#: lib/cannery_web/live/ammo_type_live/index.html.heex:45
#, elixir-autogen, elixir-format, fuzzy
msgid "No Ammo types"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/index.html.heex:33
#: lib/cannery_web/live/ammo_type_live/index.html.heex:32
#, elixir-autogen, elixir-format
msgid "Search catalog"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/index.html.heex:58
#: lib/cannery_web/live/ammo_group_live/index.html.heex:57
#, elixir-autogen, elixir-format, fuzzy
msgid "Search ammo"
msgstr ""
#: lib/cannery_web/live/container_live/index.html.heex:33
#: lib/cannery_web/live/container_live/index.html.heex:32
#, elixir-autogen, elixir-format
msgid "Search containers"
msgstr ""
#: lib/cannery_web/live/tag_live/index.html.heex:36
#: lib/cannery_web/live/tag_live/index.html.heex:35
#, elixir-autogen, elixir-format, fuzzy
msgid "Search tags"
msgstr ""
#: lib/cannery_web/live/range_live/index.html.heex:83
#: lib/cannery_web/live/range_live/index.html.heex:82
#, elixir-autogen, elixir-format
msgid "Search shot records"
msgstr ""
@ -1174,12 +1176,12 @@ msgstr ""
msgid "Welcome to Cannery"
msgstr ""
#: lib/cannery_web/live/invite_live/index.html.heex:63
#: lib/cannery_web/live/invite_live/index.html.heex:64
#, elixir-autogen, elixir-format
msgid "Disable"
msgstr ""
#: lib/cannery_web/live/invite_live/index.html.heex:63
#: lib/cannery_web/live/invite_live/index.html.heex:64
#, elixir-autogen, elixir-format
msgid "Enable"
msgstr ""
@ -1208,3 +1210,108 @@ msgstr ""
#, elixir-autogen, elixir-format
msgid "Password"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/index.html.heex:78
#, elixir-autogen, elixir-format, fuzzy
msgid "Clone %{ammo_type_name}"
msgstr ""
#: lib/cannery_web/live/container_live/index.html.heex:81
#: lib/cannery_web/live/container_live/index.html.heex:125
#, elixir-autogen, elixir-format
msgid "Clone %{container_name}"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/index.html.heex:151
#, elixir-autogen, elixir-format
msgid "Clone ammo group of %{ammo_group_count} bullets"
msgstr ""
#: lib/cannery_web/live/invite_live/index.html.heex:29
#, elixir-autogen, elixir-format
msgid "Copy invite link for %{invite_name}"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/index.html.heex:95
#: lib/cannery_web/live/ammo_type_live/show.html.heex:35
#, elixir-autogen, elixir-format, fuzzy
msgid "Delete %{ammo_type_name}"
msgstr ""
#: lib/cannery_web/live/container_live/index.html.heex:94
#: lib/cannery_web/live/container_live/index.html.heex:138
#: lib/cannery_web/live/container_live/show.html.heex:57
#, elixir-autogen, elixir-format
msgid "Delete %{container_name}"
msgstr ""
#: lib/cannery_web/live/tag_live/index.html.heex:64
#, elixir-autogen, elixir-format
msgid "Delete %{tag_name}"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/index.html.heex:166
#: lib/cannery_web/live/ammo_group_live/show.html.heex:80
#, elixir-autogen, elixir-format
msgid "Delete ammo group of %{ammo_group_count} bullets"
msgstr ""
#: lib/cannery_web/live/invite_live/index.html.heex:53
#, elixir-autogen, elixir-format
msgid "Delete invite for %{invite_name}"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/show.ex:146
#: lib/cannery_web/live/range_live/index.html.heex:122
#, elixir-autogen, elixir-format
msgid "Delete shot record of %{shot_group_count} shots"
msgstr ""
#: lib/cannery_web/live/container_live/index.html.heex:73
#: lib/cannery_web/live/container_live/index.html.heex:117
#: lib/cannery_web/live/container_live/show.html.heex:45
#, elixir-autogen, elixir-format, fuzzy
msgid "Edit %{container_name}"
msgstr ""
#: lib/cannery_web/live/tag_live/index.html.heex:51
#, elixir-autogen, elixir-format, fuzzy
msgid "Edit %{tag_name}"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/index.html.heex:139
#: lib/cannery_web/live/ammo_group_live/show.html.heex:66
#, elixir-autogen, elixir-format
msgid "Edit ammo group of %{ammo_group_count} bullets"
msgstr ""
#: lib/cannery_web/live/invite_live/index.html.heex:38
#, elixir-autogen, elixir-format
msgid "Edit invite for %{invite_name}"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/show.ex:133
#, elixir-autogen, elixir-format
msgid "Edit shot group of %{shot_group_count} shots"
msgstr ""
#: lib/cannery_web/live/range_live/index.html.heex:105
#, elixir-autogen, elixir-format
msgid "Edit shot record of %{shot_group_count} shots"
msgstr ""
#: lib/cannery_web/live/container_live/index.html.heex:63
#: lib/cannery_web/live/container_live/index.html.heex:108
#, elixir-autogen, elixir-format
msgid "Tag %{container_name}"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/index.html.heex:62
#, elixir-autogen, elixir-format, fuzzy
msgid "View %{ammo_type_name}"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/index.html.heex:127
#, elixir-autogen, elixir-format
msgid "View ammo group of %{ammo_group_count} bullets"
msgstr ""

View File

@ -154,17 +154,11 @@ msgstr ""
msgid "Tag could not be added"
msgstr ""
#: lib/cannery/activity_log/shot_group.ex:122
#: lib/cannery/activity_log/shot_group.ex:126
#, elixir-autogen, elixir-format
msgid "Count must be at least 1"
msgstr ""
#: lib/cannery/activity_log/shot_group.ex:82
#: lib/cannery/activity_log/shot_group.ex:118
#, elixir-autogen, elixir-format
msgid "Count must be less than %{count}"
msgstr ""
#: lib/cannery_web/controllers/user_auth.ex:39
#: lib/cannery_web/controllers/user_auth.ex:161
#, elixir-autogen, elixir-format
@ -205,3 +199,9 @@ msgstr ""
#, elixir-autogen, elixir-format, fuzzy
msgid "Please select a valid user and ammo pack"
msgstr ""
#: lib/cannery/activity_log/shot_group.ex:83
#: lib/cannery/activity_log/shot_group.ex:121
#, elixir-autogen, elixir-format, fuzzy
msgid "Count must be less than %{count} shots"
msgstr ""

View File

@ -55,22 +55,22 @@ msgstr ""
msgid "A link to confirm your email change has been sent to the new address."
msgstr ""
#: lib/cannery_web/live/invite_live/index.html.heex:98
#: lib/cannery_web/live/invite_live/index.html.heex:126
#: lib/cannery_web/live/invite_live/index.html.heex:99
#: lib/cannery_web/live/invite_live/index.html.heex:127
#, elixir-autogen, elixir-format
msgid "Are you sure you want to delete %{email}? This action is permanent!"
msgstr ""
#: lib/cannery_web/live/container_live/index.html.heex:92
#: lib/cannery_web/live/container_live/index.html.heex:135
#: lib/cannery_web/live/container_live/index.html.heex:136
#: lib/cannery_web/live/container_live/show.html.heex:55
#: lib/cannery_web/live/tag_live/index.html.heex:63
#: lib/cannery_web/live/tag_live/index.html.heex:62
#, elixir-autogen, elixir-format
msgid "Are you sure you want to delete %{name}?"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/index.html.heex:153
#: lib/cannery_web/live/ammo_group_live/show.html.heex:75
#: lib/cannery_web/live/ammo_group_live/index.html.heex:164
#: lib/cannery_web/live/ammo_group_live/show.html.heex:78
#, elixir-autogen, elixir-format
msgid "Are you sure you want to delete this ammo?"
msgstr ""
@ -166,8 +166,8 @@ msgstr ""
msgid "Are you sure you want to unstage this ammo?"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/show.ex:142
#: lib/cannery_web/live/range_live/index.html.heex:116
#: lib/cannery_web/live/ammo_group_live/show.ex:144
#: lib/cannery_web/live/range_live/index.html.heex:119
#, elixir-autogen, elixir-format
msgid "Are you sure you want to delete this shot record?"
msgstr ""
@ -247,7 +247,7 @@ msgid_plural "Ammo added successfully"
msgstr[0] ""
msgstr[1] ""
#: lib/cannery_web/live/ammo_type_live/index.html.heex:90
#: lib/cannery_web/live/ammo_type_live/index.html.heex:89
#: lib/cannery_web/live/ammo_type_live/show.html.heex:29
#, elixir-autogen, elixir-format
msgid "Are you sure you want to delete %{name}? This will delete all %{name} type ammo as well!"
@ -283,12 +283,12 @@ msgstr ""
msgid "%{user_email} deleted succesfully"
msgstr ""
#: lib/cannery_web/live/invite_live/index.html.heex:48
#: lib/cannery_web/live/invite_live/index.html.heex:49
#, elixir-autogen, elixir-format, fuzzy
msgid "Are you sure you want to delete the invite for %{invite_name}?"
msgstr ""
#: lib/cannery_web/live/invite_live/index.html.heex:73
#: lib/cannery_web/live/invite_live/index.html.heex:74
#, elixir-autogen, elixir-format, fuzzy
msgid "Are you sure you want to make %{invite_name} unlimited?"
msgstr ""

View File

@ -44,22 +44,22 @@ msgstr ""
msgid "A link to confirm your email change has been sent to the new address."
msgstr ""
#: lib/cannery_web/live/invite_live/index.html.heex:98
#: lib/cannery_web/live/invite_live/index.html.heex:126
#: lib/cannery_web/live/invite_live/index.html.heex:99
#: lib/cannery_web/live/invite_live/index.html.heex:127
#, elixir-autogen, elixir-format
msgid "Are you sure you want to delete %{email}? This action is permanent!"
msgstr ""
#: lib/cannery_web/live/container_live/index.html.heex:92
#: lib/cannery_web/live/container_live/index.html.heex:135
#: lib/cannery_web/live/container_live/index.html.heex:136
#: lib/cannery_web/live/container_live/show.html.heex:55
#: lib/cannery_web/live/tag_live/index.html.heex:63
#: lib/cannery_web/live/tag_live/index.html.heex:62
#, elixir-autogen, elixir-format
msgid "Are you sure you want to delete %{name}?"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/index.html.heex:153
#: lib/cannery_web/live/ammo_group_live/show.html.heex:75
#: lib/cannery_web/live/ammo_group_live/index.html.heex:164
#: lib/cannery_web/live/ammo_group_live/show.html.heex:78
#, elixir-autogen, elixir-format
msgid "Are you sure you want to delete this ammo?"
msgstr ""
@ -155,8 +155,8 @@ msgstr ""
msgid "Are you sure you want to unstage this ammo?"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/show.ex:142
#: lib/cannery_web/live/range_live/index.html.heex:116
#: lib/cannery_web/live/ammo_group_live/show.ex:144
#: lib/cannery_web/live/range_live/index.html.heex:119
#, elixir-autogen, elixir-format
msgid "Are you sure you want to delete this shot record?"
msgstr ""
@ -236,7 +236,7 @@ msgid_plural "Ammo added successfully"
msgstr[0] ""
msgstr[1] ""
#: lib/cannery_web/live/ammo_type_live/index.html.heex:90
#: lib/cannery_web/live/ammo_type_live/index.html.heex:89
#: lib/cannery_web/live/ammo_type_live/show.html.heex:29
#, elixir-autogen, elixir-format
msgid "Are you sure you want to delete %{name}? This will delete all %{name} type ammo as well!"
@ -272,12 +272,12 @@ msgstr ""
msgid "%{user_email} deleted succesfully"
msgstr ""
#: lib/cannery_web/live/invite_live/index.html.heex:48
#: lib/cannery_web/live/invite_live/index.html.heex:49
#, elixir-autogen, elixir-format
msgid "Are you sure you want to delete the invite for %{invite_name}?"
msgstr ""
#: lib/cannery_web/live/invite_live/index.html.heex:73
#: lib/cannery_web/live/invite_live/index.html.heex:74
#, elixir-autogen, elixir-format
msgid "Are you sure you want to make %{invite_name} unlimited?"
msgstr ""

View File

@ -74,7 +74,7 @@ defmodule CanneryWeb.AmmoGroupLiveTest do
assert html =~ ammo_group.ammo_type.name
assert index_live
|> form("[data-qa=\"ammo_group_search\"]",
|> form(~s/form[phx-change="search"]/,
search: %{search_term: ammo_group.ammo_type.name}
)
|> render_change() =~ ammo_group.ammo_type.name
@ -85,13 +85,13 @@ defmodule CanneryWeb.AmmoGroupLiveTest do
)
refute index_live
|> form("[data-qa=\"ammo_group_search\"]", search: %{search_term: "something_else"})
|> form(~s/form[phx-change="search"]/, search: %{search_term: "something_else"})
|> render_change() =~ ammo_group.ammo_type.name
assert_patch(index_live, Routes.ammo_group_index_path(conn, :search, "something_else"))
assert index_live
|> form("[data-qa=\"ammo_group_search\"]", search: %{search_term: ""})
|> form(~s/form[phx-change="search"]/, search: %{search_term: ""})
|> render_change() =~ ammo_group.ammo_type.name
assert_patch(index_live, Routes.ammo_group_index_path(conn, :index))
@ -185,7 +185,7 @@ defmodule CanneryWeb.AmmoGroupLiveTest do
{:ok, index_live, _html} = live(conn, Routes.ammo_group_index_path(conn, :index))
assert index_live
|> element("[data-qa=\"edit-#{ammo_group.id}\"]")
|> element(~s/a[aria-label="Edit ammo group of #{ammo_group.count} bullets"]/)
|> render_click() =~
gettext("Edit ammo")
@ -210,7 +210,7 @@ defmodule CanneryWeb.AmmoGroupLiveTest do
html =
index_live
|> element("[data-qa=\"clone-#{ammo_group.id}\"]")
|> element(~s/a[aria-label="Clone ammo group of #{ammo_group.count} bullets"]/)
|> render_click()
assert html =~ dgettext("actions", "Add Ammo")
@ -238,7 +238,7 @@ defmodule CanneryWeb.AmmoGroupLiveTest do
html =
index_live
|> element("[data-qa=\"clone-#{ammo_group.id}\"]")
|> element(~s/a[aria-label="Clone ammo group of #{ammo_group.count} bullets"]/)
|> render_click()
assert html =~ dgettext("actions", "Add Ammo")
@ -265,7 +265,7 @@ defmodule CanneryWeb.AmmoGroupLiveTest do
{:ok, index_live, _html} = live(conn, Routes.ammo_group_index_path(conn, :index))
assert index_live
|> element("[data-qa=\"delete-#{ammo_group.id}\"]")
|> element(~s/a[aria-label="Delete ammo group of #{ammo_group.count} bullets"]/)
|> render_click()
refute has_element?(index_live, "#ammo_group-#{ammo_group.id}")
@ -309,7 +309,10 @@ defmodule CanneryWeb.AmmoGroupLiveTest do
) <>
"\n"
html = show_live |> element("[data-qa=\"toggle_show_used\"]") |> render_click()
html =
show_live
|> element(~s/input[type="checkbox"][aria-labelledby="toggle_show_used-label"}]/)
|> render_click()
assert html =~ gettext("$%{amount}", amount: 50.00 |> :erlang.float_to_binary(decimals: 2))
@ -337,7 +340,7 @@ defmodule CanneryWeb.AmmoGroupLiveTest do
{:ok, show_live, _html} = live(conn, Routes.ammo_group_show_path(conn, :show, ammo_group))
assert show_live
|> element("[data-qa=\"edit\"]")
|> element(~s/a[aria-label="Edit ammo group of #{ammo_group.count} bullets"]/)
|> render_click() =~
gettext("Edit Ammo")
@ -386,7 +389,9 @@ defmodule CanneryWeb.AmmoGroupLiveTest do
%{conn: conn, ammo_group: ammo_group, shot_group: shot_group} do
{:ok, index_live, _html} = live(conn, Routes.ammo_group_show_path(conn, :edit, ammo_group))
assert index_live |> element("[data-qa=\"edit-#{shot_group.id}\"]") |> render_click() =~
assert index_live
|> element(~s/a[aria-label="Edit shot group of #{shot_group.count} shots"]/)
|> render_click() =~
gettext("Edit Shot Records")
assert_patch(
@ -413,7 +418,10 @@ defmodule CanneryWeb.AmmoGroupLiveTest do
{:ok, index_live, _html} =
live(conn, Routes.ammo_group_show_path(conn, :edit_shot_group, ammo_group, shot_group))
assert index_live |> element("[data-qa=\"delete-#{shot_group.id}\"]") |> render_click()
assert index_live
|> element(~s/a[aria-label="Delete shot record of #{shot_group.count} shots"]/)
|> render_click()
refute has_element?(index_live, "#shot_group-#{shot_group.id}")
end
end

View File

@ -80,7 +80,7 @@ defmodule CanneryWeb.AmmoTypeLiveTest do
assert html =~ ammo_type.bullet_type
assert index_live
|> form("[data-qa=\"ammo_type_search\"]",
|> form(~s/form[phx-change="search"]/,
search: %{search_term: ammo_type.bullet_type}
)
|> render_change() =~ ammo_type.bullet_type
@ -88,13 +88,13 @@ defmodule CanneryWeb.AmmoTypeLiveTest do
assert_patch(index_live, Routes.ammo_type_index_path(conn, :search, ammo_type.bullet_type))
refute index_live
|> form("[data-qa=\"ammo_type_search\"]", search: %{search_term: "something_else"})
|> form(~s/form[phx-change="search"]/, search: %{search_term: "something_else"})
|> render_change() =~ ammo_type.bullet_type
assert_patch(index_live, Routes.ammo_type_index_path(conn, :search, "something_else"))
assert index_live
|> form("[data-qa=\"ammo_type_search\"]", search: %{search_term: ""})
|> form(~s/form[phx-change="search"]/, search: %{search_term: ""})
|> render_change() =~ ammo_type.bullet_type
assert_patch(index_live, Routes.ammo_type_index_path(conn, :index))
@ -127,7 +127,7 @@ defmodule CanneryWeb.AmmoTypeLiveTest do
%{conn: conn, current_user: current_user, ammo_type: ammo_type} do
{:ok, index_live, _html} = live(conn, Routes.ammo_type_index_path(conn, :index))
assert index_live |> element("[data-qa=\"edit-#{ammo_type.id}\"]") |> render_click() =~
assert index_live |> element(~s/a[aria-label="Edit #{ammo_type.name}"]/) |> render_click() =~
gettext("Edit %{ammo_type_name}", ammo_type_name: ammo_type.name)
assert_patch(index_live, Routes.ammo_type_index_path(conn, :edit, ammo_type))
@ -151,7 +151,7 @@ defmodule CanneryWeb.AmmoTypeLiveTest do
%{conn: conn, current_user: current_user, ammo_type: ammo_type} do
{:ok, index_live, _html} = live(conn, Routes.ammo_type_index_path(conn, :index))
html = index_live |> element("[data-qa=\"clone-#{ammo_type.id}\"]") |> render_click()
html = index_live |> element(~s/a[aria-label="Clone #{ammo_type.name}"]/) |> render_click()
assert html =~ gettext("New Ammo type")
assert html =~ "some bullet_type"
@ -176,7 +176,7 @@ defmodule CanneryWeb.AmmoTypeLiveTest do
%{conn: conn, current_user: current_user, ammo_type: ammo_type} do
{:ok, index_live, _html} = live(conn, Routes.ammo_type_index_path(conn, :index))
html = index_live |> element("[data-qa=\"clone-#{ammo_type.id}\"]") |> render_click()
html = index_live |> element(~s/a[aria-label="Clone #{ammo_type.name}"]/) |> render_click()
assert html =~ gettext("New Ammo type")
assert html =~ "some bullet_type"
@ -202,7 +202,7 @@ defmodule CanneryWeb.AmmoTypeLiveTest do
test "deletes ammo_type in listing", %{conn: conn, ammo_type: ammo_type} do
{:ok, index_live, _html} = live(conn, Routes.ammo_type_index_path(conn, :index))
assert index_live |> element("[data-qa=\"delete-#{ammo_type.id}\"]") |> render_click()
assert index_live |> element(~s/a[aria-label="Delete #{ammo_type.name}"]/) |> render_click()
refute has_element?(index_live, "#ammo_type-#{ammo_type.id}")
end
end
@ -220,7 +220,10 @@ defmodule CanneryWeb.AmmoTypeLiveTest do
refute html =~ gettext("Used packs")
refute html =~ gettext("Total ever packs")
html = index_live |> element("[data-qa=\"toggle_show_used\"]") |> render_click()
html =
index_live
|> element(~s/input[type="checkbox"][aria-labelledby="toggle_show_used-label"}]/)
|> render_click()
assert html =~ gettext("Used rounds")
assert html =~ gettext("Total ever rounds")
@ -234,7 +237,11 @@ defmodule CanneryWeb.AmmoTypeLiveTest do
shot_group_fixture(%{"count" => 5}, current_user, ammo_group)
{:ok, index_live, _html} = live(conn, Routes.ammo_type_index_path(conn, :index))
html = index_live |> element("[data-qa=\"toggle_show_used\"]") |> render_click()
html =
index_live
|> element(~s/input[type="checkbox"][aria-labelledby="toggle_show_used-label"}]/)
|> render_click()
assert html =~ "15"
assert html =~ "5"
@ -258,7 +265,7 @@ defmodule CanneryWeb.AmmoTypeLiveTest do
%{conn: conn, current_user: current_user, ammo_type: %{name: name} = ammo_type} do
{:ok, show_live, _html} = live(conn, Routes.ammo_type_show_path(conn, :show, ammo_type))
assert show_live |> element("[data-qa=\"edit\"]") |> render_click() =~
assert show_live |> element(~s/a[aria-label="Edit #{ammo_type.name}"]/) |> render_click() =~
gettext("Edit %{ammo_type_name}", ammo_type_name: name)
assert_patch(show_live, Routes.ammo_type_show_path(conn, :edit, ammo_type))
@ -298,7 +305,11 @@ defmodule CanneryWeb.AmmoTypeLiveTest do
%{conn: conn, ammo_type: ammo_type, container: %{name: container_name}} do
{:ok, show_live, _html} = live(conn, Routes.ammo_type_show_path(conn, :show, ammo_type))
html = show_live |> element("[data-qa=\"toggle_table\"]") |> render_click()
html =
show_live
|> element(~s/input[type="checkbox"][aria-labelledby="toggle_table-label"}]/)
|> render_click()
assert_patch(show_live, Routes.ammo_type_show_path(conn, :table, ammo_type))
assert html =~ "some ammo group"
@ -316,7 +327,10 @@ defmodule CanneryWeb.AmmoTypeLiveTest do
assert html =~ dgettext("actions", "Show used")
refute html =~ "some ammo group"
html = show_live |> element("[data-qa=\"toggle_show_used\"]") |> render_click()
html =
show_live
|> element(~s/input[type="checkbox"][aria-labelledby="toggle_show_used-label"}]/)
|> render_click()
assert html =~ "some ammo group"
assert html =~ "Empty"
@ -327,13 +341,20 @@ defmodule CanneryWeb.AmmoTypeLiveTest do
%{conn: conn, ammo_type: ammo_type, container: %{name: container_name}} do
{:ok, show_live, _html} = live(conn, Routes.ammo_type_show_path(conn, :show, ammo_type))
html = show_live |> element("[data-qa=\"toggle_table\"]") |> render_click()
html =
show_live
|> element(~s/input[type="checkbox"][aria-labelledby="toggle_table-label"}]/)
|> render_click()
assert_patch(show_live, Routes.ammo_type_show_path(conn, :table, ammo_type))
assert html =~ dgettext("actions", "Show used")
refute html =~ "some ammo group"
html = show_live |> element("[data-qa=\"toggle_show_used\"]") |> render_click()
html =
show_live
|> element(~s/input[type="checkbox"][aria-labelledby="toggle_show_used-label"}]/)
|> render_click()
assert html =~ "some ammo group"
assert html =~ "Empty"

View File

@ -75,7 +75,10 @@ defmodule CanneryWeb.ContainerLiveTest do
test "lists all containers in table mode", %{conn: conn, container: container} do
{:ok, index_live, _html} = live(conn, Routes.container_index_path(conn, :index))
html = index_live |> element("[data-qa=\"toggle_table\"]") |> render_click()
html =
index_live
|> element(~s/input[type="checkbox"][aria-labelledby="toggle_table-label"}]/)
|> render_click()
assert html =~ gettext("Containers")
assert html =~ container.location
@ -87,7 +90,7 @@ defmodule CanneryWeb.ContainerLiveTest do
assert html =~ container.location
assert index_live
|> form("[data-qa=\"container_search\"]",
|> form(~s/form[phx-change="search"]/,
search: %{search_term: container.location}
)
|> render_change() =~ container.location
@ -95,13 +98,13 @@ defmodule CanneryWeb.ContainerLiveTest do
assert_patch(index_live, Routes.container_index_path(conn, :search, container.location))
refute index_live
|> form("[data-qa=\"container_search\"]", search: %{search_term: "something_else"})
|> form(~s/form[phx-change="search"]/, search: %{search_term: "something_else"})
|> render_change() =~ container.location
assert_patch(index_live, Routes.container_index_path(conn, :search, "something_else"))
assert index_live
|> form("[data-qa=\"container_search\"]", search: %{search_term: ""})
|> form(~s/form[phx-change="search"]/, search: %{search_term: ""})
|> render_change() =~ container.location
assert_patch(index_live, Routes.container_index_path(conn, :index))
@ -136,7 +139,7 @@ defmodule CanneryWeb.ContainerLiveTest do
} do
{:ok, index_live, _html} = live(conn, Routes.container_index_path(conn, :index))
assert index_live |> element("[data-qa=\"edit-#{container.id}\"]") |> render_click() =~
assert index_live |> element(~s/a[aria-label="Edit #{container.name}"]/) |> render_click() =~
gettext("Edit %{name}", name: container.name)
assert_patch(index_live, Routes.container_index_path(conn, :edit, container))
@ -163,7 +166,7 @@ defmodule CanneryWeb.ContainerLiveTest do
} do
{:ok, index_live, _html} = live(conn, Routes.container_index_path(conn, :index))
html = index_live |> element("[data-qa=\"clone-#{container.id}\"]") |> render_click()
html = index_live |> element(~s/a[aria-label="Clone #{container.name}"]/) |> render_click()
assert html =~ gettext("New Container")
assert html =~ "some location"
@ -191,7 +194,7 @@ defmodule CanneryWeb.ContainerLiveTest do
} do
{:ok, index_live, _html} = live(conn, Routes.container_index_path(conn, :index))
assert index_live |> element("[data-qa=\"clone-#{container.id}\"]") |> render_click() =~
assert index_live |> element(~s/a[aria-label="Clone #{container.name}"]/) |> render_click() =~
gettext("New Container")
assert_patch(index_live, Routes.container_index_path(conn, :clone, container))
@ -216,7 +219,7 @@ defmodule CanneryWeb.ContainerLiveTest do
test "deletes container in listing", %{conn: conn, container: container} do
{:ok, index_live, _html} = live(conn, Routes.container_index_path(conn, :index))
assert index_live |> element("[data-qa=\"delete-#{container.id}\"]") |> render_click()
assert index_live |> element(~s/a[aria-label="Delete #{container.name}"]/) |> render_click()
refute has_element?(index_live, "#container-#{container.id}")
end
end
@ -241,7 +244,7 @@ defmodule CanneryWeb.ContainerLiveTest do
} do
{:ok, show_live, _html} = live(conn, Routes.container_show_path(conn, :show, container))
assert show_live |> element("[data-qa=\"edit\"]") |> render_click() =~
assert show_live |> element(~s/a[aria-label="Edit #{container.name}"]/) |> render_click() =~
gettext("Edit %{name}", name: container.name)
assert_patch(show_live, Routes.container_show_path(conn, :edit, container))
@ -277,7 +280,10 @@ defmodule CanneryWeb.ContainerLiveTest do
%{conn: conn, ammo_type: %{name: ammo_type_name}, container: container} do
{:ok, show_live, _html} = live(conn, Routes.container_show_path(conn, :show, container))
html = show_live |> element("[data-qa=\"toggle_table\"]") |> render_click()
html =
show_live
|> element(~s/input[type="checkbox"][aria-labelledby="toggle_table-label"}]/)
|> render_click()
assert html =~ ammo_type_name
assert html =~ "some ammo group"
@ -294,7 +300,10 @@ defmodule CanneryWeb.ContainerLiveTest do
assert html =~ dgettext("actions", "Show used")
refute html =~ "some ammo group"
html = show_live |> element("[data-qa=\"toggle_show_used\"]") |> render_click()
html =
show_live
|> element(~s/input[type="checkbox"][aria-labelledby="toggle_show_used-label"}]/)
|> render_click()
assert html =~ ammo_type_name
assert html =~ "some ammo group"
@ -305,12 +314,18 @@ defmodule CanneryWeb.ContainerLiveTest do
%{conn: conn, ammo_type: %{name: ammo_type_name}, container: container} do
{:ok, show_live, _html} = live(conn, Routes.container_show_path(conn, :show, container))
html = show_live |> element("[data-qa=\"toggle_table\"]") |> render_click()
html =
show_live
|> element(~s/input[type="checkbox"][aria-labelledby="toggle_table-label"}]/)
|> render_click()
assert html =~ dgettext("actions", "Show used")
refute html =~ "some ammo group"
html = show_live |> element("[data-qa=\"toggle_show_used\"]") |> render_click()
html =
show_live
|> element(~s/input[type="checkbox"][aria-labelledby="toggle_show_used-label"}]/)
|> render_click()
assert html =~ ammo_type_name
assert html =~ "some ammo group"

View File

@ -55,7 +55,9 @@ defmodule CanneryWeb.InviteLiveTest do
test "updates invite in listing", %{conn: conn, invite: invite} do
{:ok, index_live, _html} = live(conn, Routes.invite_index_path(conn, :index))
assert index_live |> element("[data-qa=\"edit-#{invite.id}\"]") |> render_click() =~
assert index_live
|> element(~s/a[aria-label="Edit invite for #{invite.name}"]/)
|> render_click() =~
gettext("Edit Invite")
assert_patch(index_live, Routes.invite_index_path(conn, :edit, invite))
@ -81,7 +83,10 @@ defmodule CanneryWeb.InviteLiveTest do
test "deletes invite in listing", %{conn: conn, invite: invite} do
{:ok, index_live, _html} = live(conn, Routes.invite_index_path(conn, :index))
assert index_live |> element("[data-qa=\"delete-#{invite.id}\"]") |> render_click()
assert index_live
|> element(~s/a[aria-label="Delete invite for #{invite.name}"]/)
|> render_click()
refute has_element?(index_live, "#invite-#{invite.id}")
end
end

View File

@ -43,7 +43,7 @@ defmodule CanneryWeb.RangeLiveTest do
assert html =~ shot_group.notes
assert index_live
|> form("[data-qa=\"shot_group_search\"]",
|> form(~s/form[phx-change="search"]/,
search: %{search_term: shot_group.notes}
)
|> render_change() =~ shot_group.notes
@ -51,13 +51,13 @@ defmodule CanneryWeb.RangeLiveTest do
assert_patch(index_live, Routes.range_index_path(conn, :search, shot_group.notes))
refute index_live
|> form("[data-qa=\"shot_group_search\"]", search: %{search_term: "something_else"})
|> form(~s/form[phx-change="search"]/, search: %{search_term: "something_else"})
|> render_change() =~ shot_group.notes
assert_patch(index_live, Routes.range_index_path(conn, :search, "something_else"))
assert index_live
|> form("[data-qa=\"shot_group_search\"]", search: %{search_term: ""})
|> form(~s/form[phx-change="search"]/, search: %{search_term: ""})
|> render_change() =~ shot_group.notes
assert_patch(index_live, Routes.range_index_path(conn, :index))
@ -88,7 +88,9 @@ defmodule CanneryWeb.RangeLiveTest do
test "updates shot_group in listing", %{conn: conn, shot_group: shot_group} do
{:ok, index_live, _html} = live(conn, Routes.range_index_path(conn, :index))
assert index_live |> element("[data-qa=\"edit-#{shot_group.id}\"]") |> render_click() =~
assert index_live
|> element(~s/a[aria-label="Edit shot record of #{shot_group.count} shots"]/)
|> render_click() =~
gettext("Edit Shot Records")
assert_patch(index_live, Routes.range_index_path(conn, :edit, shot_group))
@ -110,7 +112,10 @@ defmodule CanneryWeb.RangeLiveTest do
test "deletes shot_group in listing", %{conn: conn, shot_group: shot_group} do
{:ok, index_live, _html} = live(conn, Routes.range_index_path(conn, :index))
assert index_live |> element("[data-qa=\"delete-#{shot_group.id}\"]") |> render_click()
assert index_live
|> element(~s/a[aria-label="Delete shot record of #{shot_group.count} shots"]/)
|> render_click()
refute has_element?(index_live, "#shot_group-#{shot_group.id}")
end
end

View File

@ -47,7 +47,7 @@ defmodule CanneryWeb.TagLiveTest do
assert html =~ tag.name
assert index_live
|> form("[data-qa=\"tag_search\"]",
|> form(~s/form[phx-change="search"]/,
search: %{search_term: tag.name}
)
|> render_change() =~ tag.name
@ -55,13 +55,13 @@ defmodule CanneryWeb.TagLiveTest do
assert_patch(index_live, Routes.tag_index_path(conn, :search, tag.name))
refute index_live
|> form("[data-qa=\"tag_search\"]", search: %{search_term: "something_else"})
|> form(~s/form[phx-change="search"]/, search: %{search_term: "something_else"})
|> render_change() =~ tag.name
assert_patch(index_live, Routes.tag_index_path(conn, :search, "something_else"))
assert index_live
|> form("[data-qa=\"tag_search\"]", search: %{search_term: ""})
|> form(~s/form[phx-change="search"]/, search: %{search_term: ""})
|> render_change() =~ tag.name
assert_patch(index_live, Routes.tag_index_path(conn, :index))
@ -92,7 +92,7 @@ defmodule CanneryWeb.TagLiveTest do
test "updates tag in listing", %{conn: conn, tag: tag} do
{:ok, index_live, _html} = live(conn, Routes.tag_index_path(conn, :index))
assert index_live |> element("[data-qa=\"edit-#{tag.id}\"]") |> render_click() =~
assert index_live |> element(~s/a[aria-label="Edit #{tag.name}"]/) |> render_click() =~
dgettext("actions", "Edit Tag")
assert_patch(index_live, Routes.tag_index_path(conn, :edit, tag))
@ -116,7 +116,7 @@ defmodule CanneryWeb.TagLiveTest do
test "deletes tag in listing", %{conn: conn, tag: tag} do
{:ok, index_live, _html} = live(conn, Routes.tag_index_path(conn, :index))
assert index_live |> element("[data-qa=\"delete-#{tag.id}\"]") |> render_click()
assert index_live |> element(~s/a[aria-label="Delete #{tag.name}"]/) |> render_click()
refute has_element?(index_live, "#tag-#{tag.id}")
end
end