use strict context boundaries and remove all n+1 queries
All checks were successful
continuous-integration/drone/push Build is passing

This commit is contained in:
2023-03-18 21:06:00 -04:00
parent 0b7146ba32
commit a54cf8b87d
84 changed files with 4345 additions and 3090 deletions

View File

@ -66,11 +66,11 @@ msgstr ""
msgid "Invite someone new!"
msgstr ""
#: lib/cannery_web/components/topbar.ex:137
#: lib/cannery_web/templates/user_confirmation/new.html.heex:31
#: lib/cannery_web/components/core_components/topbar.html.heex:122
#: lib/cannery_web/templates/user_confirmation/new.html.heex:32
#: lib/cannery_web/templates/user_registration/new.html.heex:44
#: lib/cannery_web/templates/user_reset_password/edit.html.heex:45
#: lib/cannery_web/templates/user_reset_password/new.html.heex:31
#: lib/cannery_web/templates/user_reset_password/new.html.heex:32
#: lib/cannery_web/templates/user_session/new.html.heex:3
#: lib/cannery_web/templates/user_session/new.html.heex:28
#, elixir-autogen, elixir-format
@ -97,19 +97,19 @@ msgstr ""
msgid "New Tag"
msgstr ""
#: lib/cannery_web/components/topbar.ex:129
#: lib/cannery_web/templates/user_confirmation/new.html.heex:28
#: lib/cannery_web/components/core_components/topbar.html.heex:114
#: lib/cannery_web/templates/user_confirmation/new.html.heex:29
#: lib/cannery_web/templates/user_registration/new.html.heex:3
#: lib/cannery_web/templates/user_registration/new.html.heex:37
#: lib/cannery_web/templates/user_reset_password/edit.html.heex:42
#: lib/cannery_web/templates/user_reset_password/new.html.heex:28
#: lib/cannery_web/templates/user_reset_password/new.html.heex:29
#: lib/cannery_web/templates/user_session/new.html.heex:39
#, elixir-autogen, elixir-format
msgid "Register"
msgstr ""
#: lib/cannery_web/templates/user_confirmation/new.html.heex:3
#: lib/cannery_web/templates/user_confirmation/new.html.heex:15
#: lib/cannery_web/templates/user_confirmation/new.html.heex:16
#, elixir-autogen, elixir-format
msgid "Resend confirmation instructions"
msgstr ""
@ -131,17 +131,17 @@ msgstr ""
msgid "Save"
msgstr ""
#: lib/cannery_web/templates/user_reset_password/new.html.heex:15
#: lib/cannery_web/templates/user_reset_password/new.html.heex:16
#, elixir-autogen, elixir-format
msgid "Send instructions to reset password"
msgstr ""
#: lib/cannery_web/live/container_live/show.html.heex:78
#: lib/cannery_web/live/container_live/show.html.heex:75
#, elixir-autogen, elixir-format
msgid "Why not add one?"
msgstr ""
#: lib/cannery_web/live/container_live/edit_tags_component.html.heex:50
#: lib/cannery_web/live/container_live/edit_tags_component.html.heex:51
#, elixir-autogen, elixir-format
msgid "Add"
msgstr ""
@ -156,9 +156,9 @@ msgstr ""
msgid "Why not get some ready to shoot?"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/index.html.heex:102
#: lib/cannery_web/live/ammo_group_live/show.html.heex:107
#: lib/cannery_web/live/range_live/index.html.heex:38
#: lib/cannery_web/live/ammo_group_live/index.html.heex:103
#: lib/cannery_web/live/ammo_group_live/show.html.heex:103
#: lib/cannery_web/live/range_live/index.html.heex:45
#, elixir-autogen, elixir-format
msgid "Record shots"
msgstr ""
@ -168,17 +168,12 @@ msgstr ""
msgid "Add another container!"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/show.html.heex:100
#, elixir-autogen, elixir-format
msgid "Move containers"
msgstr ""
#: lib/cannery_web/components/move_ammo_group_component.ex:126
#, elixir-autogen, elixir-format
msgid "Select"
msgstr ""
#: lib/cannery_web/live/invite_live/index.html.heex:33
#: lib/cannery_web/live/invite_live/index.html.heex:38
#, elixir-autogen, elixir-format
msgid "Copy to clipboard"
msgstr ""
@ -203,7 +198,7 @@ msgstr ""
msgid "Change language"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/show.html.heex:59
#: lib/cannery_web/live/ammo_group_live/show.html.heex:55
#, elixir-autogen, elixir-format
msgid "View in Catalog"
msgstr ""
@ -214,23 +209,25 @@ msgid "add an ammo type first"
msgstr ""
#: lib/cannery_web/components/move_ammo_group_component.ex:80
#: lib/cannery_web/live/ammo_group_live/index.html.heex:120
#: lib/cannery_web/live/ammo_group_live/show.html.heex:96
#, elixir-autogen, elixir-format
msgid "Move ammo"
msgstr ""
#: lib/cannery_web/live/invite_live/index.html.heex:85
#: lib/cannery_web/live/invite_live/index.html.heex:90
#, elixir-autogen, elixir-format
msgid "Set Unlimited"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/show.html.heex:93
#: lib/cannery_web/live/range_live/index.html.heex:31
#: lib/cannery_web/live/ammo_group_live/show.html.heex:89
#: lib/cannery_web/live/range_live/index.html.heex:38
#, elixir-autogen, elixir-format
msgid "Stage for range"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/show.html.heex:92
#: lib/cannery_web/live/range_live/index.html.heex:30
#: lib/cannery_web/live/ammo_group_live/show.html.heex:88
#: lib/cannery_web/live/range_live/index.html.heex:37
#, elixir-autogen, elixir-format
msgid "Unstage from range"
msgstr ""
@ -240,106 +237,123 @@ msgstr ""
msgid "Export Data as JSON"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/index.html.heex:83
#: lib/cannery_web/live/ammo_type_live/index.html.heex:84
#, elixir-autogen, elixir-format
msgid "Clone %{ammo_type_name}"
msgstr ""
#: lib/cannery_web/live/container_live/index.html.heex:86
#: lib/cannery_web/live/container_live/index.html.heex:138
#: lib/cannery_web/live/container_live/index.html.heex:87
#: lib/cannery_web/live/container_live/index.html.heex:143
#, elixir-autogen, elixir-format
msgid "Clone %{container_name}"
msgstr ""
#: lib/cannery_web/live/invite_live/index.html.heex:30
#: lib/cannery_web/live/invite_live/index.html.heex:35
#, elixir-autogen, elixir-format
msgid "Copy invite link for %{invite_name}"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/index.html.heex:102
#: lib/cannery_web/live/ammo_type_live/index.html.heex:103
#: lib/cannery_web/live/ammo_type_live/show.html.heex:36
#, elixir-autogen, elixir-format
msgid "Delete %{ammo_type_name}"
msgstr ""
#: lib/cannery_web/live/container_live/index.html.heex:101
#: lib/cannery_web/live/container_live/index.html.heex:153
#: lib/cannery_web/live/container_live/show.html.heex:58
#: lib/cannery_web/live/container_live/index.html.heex:102
#: lib/cannery_web/live/container_live/index.html.heex:158
#: lib/cannery_web/live/container_live/show.html.heex:55
#, elixir-autogen, elixir-format
msgid "Delete %{container_name}"
msgstr ""
#: lib/cannery_web/live/tag_live/index.html.heex:64
#: lib/cannery_web/live/tag_live/index.html.heex:65
#, elixir-autogen, elixir-format
msgid "Delete %{tag_name}"
msgstr ""
#: lib/cannery_web/live/invite_live/index.html.heex:58
#: lib/cannery_web/live/invite_live/index.html.heex:63
#, elixir-autogen, elixir-format
msgid "Delete invite for %{invite_name}"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/show.ex:145
#: lib/cannery_web/live/range_live/index.html.heex:122
#: lib/cannery_web/live/ammo_group_live/show.ex:161
#: lib/cannery_web/live/range_live/index.html.heex:130
#, elixir-autogen, elixir-format
msgid "Delete shot record of %{shot_group_count} shots"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/index.html.heex:73
#: lib/cannery_web/live/ammo_type_live/index.html.heex:74
#: lib/cannery_web/live/ammo_type_live/show.html.heex:19
#, elixir-autogen, elixir-format
msgid "Edit %{ammo_type_name}"
msgstr ""
#: lib/cannery_web/live/container_live/index.html.heex:76
#: lib/cannery_web/live/container_live/index.html.heex:128
#: lib/cannery_web/live/container_live/show.html.heex:45
#: lib/cannery_web/live/container_live/index.html.heex:77
#: lib/cannery_web/live/container_live/index.html.heex:133
#: lib/cannery_web/live/container_live/show.html.heex:42
#, elixir-autogen, elixir-format
msgid "Edit %{container_name}"
msgstr ""
#: lib/cannery_web/live/tag_live/index.html.heex:51
#: lib/cannery_web/live/tag_live/index.html.heex:52
#, elixir-autogen, elixir-format
msgid "Edit %{tag_name}"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/show.html.heex:66
#: lib/cannery_web/live/ammo_group_live/index.html.heex:142
#: lib/cannery_web/live/ammo_group_live/show.html.heex:62
#, elixir-autogen, elixir-format
msgid "Edit ammo group of %{ammo_group_count} bullets"
msgstr ""
#: lib/cannery_web/live/invite_live/index.html.heex:41
#: lib/cannery_web/live/invite_live/index.html.heex:46
#, elixir-autogen, elixir-format
msgid "Edit invite for %{invite_name}"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/show.ex:130
#: lib/cannery_web/live/ammo_group_live/show.ex:146
#, elixir-autogen, elixir-format
msgid "Edit shot group of %{shot_group_count} shots"
msgstr ""
#: lib/cannery_web/live/range_live/index.html.heex:105
#: lib/cannery_web/live/range_live/index.html.heex:113
#, elixir-autogen, elixir-format
msgid "Edit shot record of %{shot_group_count} shots"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/index.html.heex:95
#: lib/cannery_web/live/ammo_group_live/index.html.heex:96
#, elixir-autogen, elixir-format, fuzzy
msgid "Stage"
msgstr ""
#: lib/cannery_web/live/container_live/index.html.heex:64
#: lib/cannery_web/live/container_live/index.html.heex:117
#: lib/cannery_web/live/container_live/index.html.heex:65
#: lib/cannery_web/live/container_live/index.html.heex:122
#, elixir-autogen, elixir-format
msgid "Tag %{container_name}"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/index.html.heex:94
#: lib/cannery_web/live/ammo_group_live/index.html.heex:95
#, elixir-autogen, elixir-format
msgid "Unstage"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/index.html.heex:63
#: lib/cannery_web/live/ammo_type_live/index.html.heex:64
#, elixir-autogen, elixir-format
msgid "View %{ammo_type_name}"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/index.html.heex:154
#, elixir-autogen, elixir-format, fuzzy
msgid "Clone ammo group of %{ammo_group_count} bullets"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/index.html.heex:169
#: lib/cannery_web/live/ammo_group_live/show.html.heex:76
#, elixir-autogen, elixir-format, fuzzy
msgid "Delete ammo group of %{ammo_group_count} bullets"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/index.html.heex:130
#, elixir-autogen, elixir-format, fuzzy
msgid "View ammo group of %{ammo_group_count} bullets"
msgstr ""

View File

@ -10,23 +10,23 @@ msgid ""
msgstr ""
"Language: en\n"
#: lib/cannery_web/live/home_live.html.heex:46
#: lib/cannery_web/live/home_live.html.heex:44
#, elixir-autogen, elixir-format
msgid "Access from any internet-capable device"
msgstr ""
#: lib/cannery_web/live/invite_live/index.html.heex:94
#: lib/cannery_web/live/invite_live/index.html.heex:99
#, elixir-autogen, elixir-format
msgid "Admins"
msgstr ""
#: lib/cannery_web/live/home_live.html.heex:60
#: lib/cannery_web/live/home_live.html.heex:58
#, elixir-autogen, elixir-format
msgid "Admins:"
msgstr ""
#: lib/cannery_web/components/core_components/topbar.html.heex:58
#: lib/cannery_web/components/shot_group_table_component.ex:41
#: lib/cannery_web/components/topbar.ex:73
#: lib/cannery_web/live/ammo_group_live/index.ex:70
#: lib/cannery_web/live/ammo_group_live/index.ex:79
#: lib/cannery_web/live/ammo_group_live/index.html.heex:3
@ -93,9 +93,9 @@ msgstr ""
msgid "Container"
msgstr ""
#: lib/cannery_web/components/topbar.ex:57
#: lib/cannery_web/live/container_live/index.ex:49
#: lib/cannery_web/live/container_live/index.ex:58
#: lib/cannery_web/components/core_components/topbar.html.heex:42
#: lib/cannery_web/live/container_live/index.ex:45
#: lib/cannery_web/live/container_live/index.ex:54
#: lib/cannery_web/live/container_live/index.html.heex:3
#, elixir-autogen, elixir-format
msgid "Containers"
@ -113,36 +113,36 @@ msgstr ""
msgid "Count"
msgstr ""
#: lib/cannery_web/components/ammo_group_card.ex:39
#: lib/cannery_web/components/core_components/ammo_group_card.html.heex:16
#: lib/cannery_web/live/ammo_group_live/show.html.heex:8
#, elixir-autogen, elixir-format
msgid "Count:"
msgstr ""
#: lib/cannery_web/components/container_table_component.ex:47
#: lib/cannery_web/components/container_table_component.ex:46
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:25
#: lib/cannery_web/live/container_live/form_component.html.heex:28
#, elixir-autogen, elixir-format
msgid "Description"
msgstr ""
#: lib/cannery_web/components/container_card.ex:39
#: lib/cannery_web/components/core_components/container_card.html.heex:16
#: lib/cannery_web/live/container_live/show.html.heex:7
#, elixir-autogen, elixir-format
msgid "Description:"
msgstr ""
#: lib/cannery_web/live/home_live.html.heex:23
#: lib/cannery_web/live/home_live.html.heex:22
#, elixir-autogen, elixir-format
msgid "Easy to Use:"
msgstr ""
#: lib/cannery_web/live/invite_live/index.ex:34
#: lib/cannery_web/live/invite_live/index.ex:33
#, elixir-autogen, elixir-format
msgid "Edit Invite"
msgstr ""
#: lib/cannery_web/live/tag_live/index.ex:28
#: lib/cannery_web/live/tag_live/index.ex:27
#, elixir-autogen, elixir-format
msgid "Edit Tag"
msgstr ""
@ -169,23 +169,23 @@ msgstr ""
msgid "Incendiary"
msgstr ""
#: lib/cannery_web/live/home_live.html.heex:55
#: lib/cannery_web/live/home_live.html.heex:53
#, elixir-autogen, elixir-format
msgid "Instance Information"
msgstr ""
#: lib/cannery_web/components/invite_card.ex:42
#: lib/cannery_web/components/core_components/invite_card.html.heex:21
#, elixir-autogen, elixir-format
msgid "Invite Disabled"
msgstr ""
#: lib/cannery_web/live/home_live.html.heex:82
#: lib/cannery_web/live/home_live.html.heex:84
#, elixir-autogen, elixir-format
msgid "Invite Only"
msgstr ""
#: lib/cannery_web/components/topbar.ex:89
#: lib/cannery_web/live/invite_live/index.ex:42
#: lib/cannery_web/components/core_components/topbar.html.heex:74
#: lib/cannery_web/live/invite_live/index.ex:41
#: lib/cannery_web/live/invite_live/index.html.heex:3
#, elixir-autogen, elixir-format
msgid "Invites"
@ -196,14 +196,14 @@ msgstr ""
msgid "Keep me logged in for 60 days"
msgstr ""
#: lib/cannery_web/components/container_table_component.ex:48
#: lib/cannery_web/components/container_table_component.ex:47
#: lib/cannery_web/components/move_ammo_group_component.ex:69
#: lib/cannery_web/live/container_live/form_component.html.heex:43
#, elixir-autogen, elixir-format
msgid "Location"
msgstr ""
#: lib/cannery_web/components/container_card.ex:49
#: lib/cannery_web/components/core_components/container_card.html.heex:26
#: lib/cannery_web/live/container_live/show.html.heex:17
#, elixir-autogen, elixir-format
msgid "Location:"
@ -231,7 +231,7 @@ msgid "My cool ammo can"
msgstr ""
#: lib/cannery_web/components/ammo_type_table_component.ex:45
#: lib/cannery_web/components/container_table_component.ex:46
#: lib/cannery_web/components/container_table_component.ex:45
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:21
#: lib/cannery_web/live/container_live/form_component.html.heex:21
#: lib/cannery_web/live/invite_live/form_component.html.heex:21
@ -246,35 +246,35 @@ msgstr ""
msgid "New Ammo type"
msgstr ""
#: lib/cannery_web/live/container_live/index.ex:36
#: lib/cannery_web/live/container_live/index.ex:43
#: lib/cannery_web/live/container_live/index.ex:32
#: lib/cannery_web/live/container_live/index.ex:39
#, elixir-autogen, elixir-format
msgid "New Container"
msgstr ""
#: lib/cannery_web/live/invite_live/index.ex:38
#: lib/cannery_web/live/invite_live/index.ex:37
#, elixir-autogen, elixir-format
msgid "New Invite"
msgstr ""
#: lib/cannery_web/live/tag_live/index.ex:36
#: lib/cannery_web/live/tag_live/index.ex:35
#, elixir-autogen, elixir-format
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:70
#: lib/cannery_web/live/ammo_group_live/index.html.heex:71
#, elixir-autogen, elixir-format
msgid "No Ammo"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/show.html.heex:169
#: lib/cannery_web/live/ammo_type_live/show.html.heex:167
#, elixir-autogen, elixir-format
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:46
#: lib/cannery_web/live/container_live/index.html.heex:47
#, 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:42
#: lib/cannery_web/live/tag_live/index.html.heex:43
#, elixir-autogen, elixir-format
msgid "No tags"
msgstr ""
@ -295,13 +295,13 @@ msgstr ""
#: lib/cannery_web/components/ammo_group_table_component.ex:81
#: lib/cannery_web/components/shot_group_table_component.ex:43
#: lib/cannery_web/live/ammo_group_live/form_component.html.heex:50
#: lib/cannery_web/live/ammo_group_live/show.ex:90
#: lib/cannery_web/live/ammo_group_live/show.ex:92
#: lib/cannery_web/live/range_live/form_component.html.heex:30
#, elixir-autogen, elixir-format
msgid "Notes"
msgstr ""
#: lib/cannery_web/components/ammo_group_card.ex:52
#: lib/cannery_web/components/core_components/ammo_group_card.html.heex:26
#: lib/cannery_web/live/ammo_group_live/show.html.heex:24
#, elixir-autogen, elixir-format
msgid "Notes:"
@ -324,7 +324,7 @@ msgstr ""
msgid "Price paid"
msgstr ""
#: lib/cannery_web/components/ammo_group_card.ex:68
#: lib/cannery_web/components/core_components/ammo_group_card.html.heex:41
#, elixir-autogen, elixir-format
msgid "Price paid:"
msgstr ""
@ -335,17 +335,17 @@ msgstr ""
msgid "Primer type"
msgstr ""
#: lib/cannery_web/live/home_live.html.heex:81
#: lib/cannery_web/live/home_live.html.heex:83
#, elixir-autogen, elixir-format
msgid "Public Signups"
msgstr ""
#: lib/cannery_web/live/home_live.html.heex:33
#: lib/cannery_web/live/home_live.html.heex:32
#, elixir-autogen, elixir-format
msgid "Secure:"
msgstr ""
#: lib/cannery_web/live/home_live.html.heex:36
#: lib/cannery_web/live/home_live.html.heex:35
#, elixir-autogen, elixir-format
msgid "Self-host your own instance, or use an instance from someone you trust."
msgstr ""
@ -356,7 +356,7 @@ msgstr ""
msgid "Settings"
msgstr ""
#: lib/cannery_web/live/home_live.html.heex:43
#: lib/cannery_web/live/home_live.html.heex:41
#, elixir-autogen, elixir-format
msgid "Simple:"
msgstr ""
@ -366,15 +366,15 @@ msgstr ""
msgid "Steel"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/show.html.heex:117
#: lib/cannery_web/live/ammo_group_live/show.html.heex:113
#, elixir-autogen, elixir-format
msgid "Stored in"
msgstr ""
#: lib/cannery_web/components/container_table_component.ex:52
#: lib/cannery_web/components/topbar.ex:49
#: lib/cannery_web/live/tag_live/index.ex:44
#: lib/cannery_web/live/tag_live/index.ex:54
#: lib/cannery_web/components/container_table_component.ex:66
#: lib/cannery_web/components/core_components/topbar.html.heex:34
#: lib/cannery_web/live/tag_live/index.ex:43
#: lib/cannery_web/live/tag_live/index.ex:53
#: lib/cannery_web/live/tag_live/index.html.heex:3
#, elixir-autogen, elixir-format
msgid "Tags"
@ -401,20 +401,20 @@ msgstr ""
msgid "Tracer"
msgstr ""
#: lib/cannery_web/components/container_table_component.ex:49
#: lib/cannery_web/components/container_table_component.ex:48
#: lib/cannery_web/components/move_ammo_group_component.ex:68
#: lib/cannery_web/live/container_live/form_component.html.heex:36
#, elixir-autogen, elixir-format
msgid "Type"
msgstr ""
#: lib/cannery_web/components/container_card.ex:44
#: lib/cannery_web/components/core_components/container_card.html.heex:21
#: lib/cannery_web/live/container_live/show.html.heex:12
#, elixir-autogen, elixir-format
msgid "Type:"
msgstr ""
#: lib/cannery_web/live/invite_live/index.html.heex:122
#: lib/cannery_web/live/invite_live/index.html.heex:127
#, elixir-autogen, elixir-format
msgid "Users"
msgstr ""
@ -424,18 +424,18 @@ msgstr ""
msgid "Uses left"
msgstr ""
#: lib/cannery_web/live/home_live.html.heex:37
#: lib/cannery_web/live/home_live.html.heex:36
#, elixir-autogen, elixir-format
msgid "Your data stays with you, period"
msgstr ""
#: lib/cannery_web/live/container_live/show.html.heex:70
#: lib/cannery_web/live/container_live/show.html.heex:67
#, elixir-autogen, elixir-format
msgid "No tags for this container"
msgstr ""
#: lib/cannery_web/components/ammo_group_table_component.ex:72
#: lib/cannery_web/components/topbar.ex:81
#: lib/cannery_web/components/core_components/topbar.html.heex:66
#, elixir-autogen, elixir-format
msgid "Range"
msgstr ""
@ -447,7 +447,7 @@ msgstr ""
#: lib/cannery_web/components/add_shot_group_component.html.heex:46
#: lib/cannery_web/components/shot_group_table_component.ex:44
#: lib/cannery_web/live/ammo_group_live/show.ex:91
#: lib/cannery_web/live/ammo_group_live/show.ex:93
#: lib/cannery_web/live/range_live/form_component.html.heex:37
#, elixir-autogen, elixir-format
msgid "Date"
@ -469,19 +469,19 @@ msgstr ""
msgid "Record shots"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/show.ex:41
#: lib/cannery_web/live/range_live/index.ex:41
#: lib/cannery_web/live/ammo_group_live/show.ex:42
#: lib/cannery_web/live/range_live/index.ex:40
#, elixir-autogen, elixir-format
msgid "Edit Shot Records"
msgstr ""
#: lib/cannery_web/live/range_live/index.ex:49
#: lib/cannery_web/live/range_live/index.ex:48
#, elixir-autogen, elixir-format
msgid "New Shot Records"
msgstr ""
#: lib/cannery_web/live/range_live/index.html.heex:48
#: lib/cannery_web/live/range_live/index.html.heex:89
#: lib/cannery_web/live/range_live/index.html.heex:55
#: lib/cannery_web/live/range_live/index.html.heex:97
#, elixir-autogen, elixir-format
msgid "No shots recorded"
msgstr ""
@ -493,20 +493,19 @@ msgid "Rounds left"
msgstr ""
#: lib/cannery_web/components/shot_group_table_component.ex:42
#: lib/cannery_web/live/ammo_group_live/show.ex:89
#: lib/cannery_web/live/range_live/index.html.heex:62
#: lib/cannery_web/live/ammo_group_live/show.ex:91
#: lib/cannery_web/live/range_live/index.html.heex:69
#, elixir-autogen, elixir-format
msgid "Rounds shot"
msgstr ""
#: lib/cannery_web/live/range_live/index.ex:57
#: lib/cannery_web/live/range_live/index.ex:67
#: lib/cannery_web/live/range_live/index.ex:56
#: lib/cannery_web/live/range_live/index.ex:66
#, elixir-autogen, elixir-format
msgid "Shot Records"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/index.ex:38
#: lib/cannery_web/live/ammo_group_live/index.html.heex:119
#, elixir-autogen, elixir-format
msgid "Move ammo"
msgstr ""
@ -516,18 +515,18 @@ msgstr ""
msgid "No other containers"
msgstr ""
#: lib/cannery_web/live/range_live/index.html.heex:53
#: lib/cannery_web/live/range_live/index.html.heex:60
#, elixir-autogen, elixir-format
msgid "Shot log"
msgstr ""
#: lib/cannery_web/components/ammo_group_card.ex:69
#: lib/cannery_web/components/ammo_group_card.ex:76
#: lib/cannery_web/components/ammo_group_table_component.ex:153
#: lib/cannery_web/components/ammo_group_table_component.ex:225
#: lib/cannery_web/components/ammo_type_table_component.ex:180
#: lib/cannery_web/components/ammo_group_table_component.ex:229
#: lib/cannery_web/components/ammo_type_table_component.ex:224
#: lib/cannery_web/components/core_components/ammo_group_card.html.heex:42
#: lib/cannery_web/components/core_components/ammo_group_card.html.heex:47
#: lib/cannery_web/live/ammo_group_live/show.html.heex:37
#: lib/cannery_web/live/ammo_group_live/show.html.heex:44
#: lib/cannery_web/live/ammo_group_live/show.html.heex:42
#: lib/cannery_web/live/ammo_type_live/show.html.heex:139
#, elixir-autogen, elixir-format
msgid "$%{amount}"
@ -597,28 +596,28 @@ msgstr ""
msgid "Reconnecting..."
msgstr ""
#: lib/cannery_web/live/container_live/index.ex:32
#: lib/cannery_web/live/container_live/show.ex:110
#: lib/cannery_web/live/container_live/index.ex:28
#: lib/cannery_web/live/container_live/show.ex:108
#, elixir-autogen, elixir-format
msgid "Edit %{name}"
msgstr ""
#: lib/cannery_web/live/container_live/index.ex:69
#: lib/cannery_web/live/container_live/show.ex:111
#: lib/cannery_web/live/container_live/index.ex:63
#: lib/cannery_web/live/container_live/show.ex:109
#, elixir-autogen, elixir-format
msgid "Edit %{name} tags"
msgstr ""
#: lib/cannery_web/components/container_card.ex:60
#: lib/cannery_web/components/core_components/container_card.html.heex:37
#: lib/cannery_web/live/ammo_type_live/show.html.heex:70
#: lib/cannery_web/live/container_live/show.html.heex:35
#: lib/cannery_web/live/container_live/show.html.heex:33
#, elixir-autogen, elixir-format, fuzzy
msgid "Rounds:"
msgstr ""
#: lib/cannery_web/components/ammo_group_table_component.ex:222
#: lib/cannery_web/components/ammo_type_table_component.ex:179
#: lib/cannery_web/live/ammo_type_live/show.html.heex:145
#: lib/cannery_web/components/ammo_group_table_component.ex:226
#: lib/cannery_web/components/ammo_type_table_component.ex:223
#: lib/cannery_web/live/ammo_type_live/show.html.heex:143
#, elixir-autogen, elixir-format
msgid "No cost information"
msgstr ""
@ -628,7 +627,7 @@ msgstr ""
msgid "% left"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/show.html.heex:43
#: lib/cannery_web/live/ammo_group_live/show.html.heex:41
#, elixir-autogen, elixir-format
msgid "Current value:"
msgstr ""
@ -648,7 +647,7 @@ msgstr ""
msgid "Percentage left:"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/show.html.heex:130
#: lib/cannery_web/live/ammo_group_live/show.html.heex:126
#, elixir-autogen, elixir-format, fuzzy
msgid "Rounds used"
msgstr ""
@ -668,7 +667,7 @@ msgstr ""
msgid "Log in"
msgstr ""
#: lib/cannery_web/controllers/user_registration_controller.ex:32
#: lib/cannery_web/controllers/user_registration_controller.ex:33
#, elixir-autogen, elixir-format
msgid "Register"
msgstr ""
@ -678,8 +677,8 @@ msgstr ""
msgid "Reset your password"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/show.ex:40
#: lib/cannery_web/live/range_live/index.ex:33
#: lib/cannery_web/live/ammo_group_live/show.ex:41
#: lib/cannery_web/live/range_live/index.ex:32
#, elixir-autogen, elixir-format, fuzzy
msgid "Record Shots"
msgstr ""
@ -715,27 +714,27 @@ msgstr ""
msgid "Language"
msgstr ""
#: lib/cannery_web/live/home_live.html.heex:107
#: lib/cannery_web/live/home_live.html.heex:109
#, elixir-autogen, elixir-format
msgid "Get involved!"
msgstr ""
#: lib/cannery_web/live/home_live.html.heex:128
#: lib/cannery_web/live/home_live.html.heex:130
#, elixir-autogen, elixir-format
msgid "Help translate"
msgstr ""
#: lib/cannery_web/live/home_live.html.heex:139
#: lib/cannery_web/live/home_live.html.heex:141
#, elixir-autogen, elixir-format
msgid "Report bugs or request features"
msgstr ""
#: lib/cannery_web/live/home_live.html.heex:117
#: lib/cannery_web/live/home_live.html.heex:119
#, elixir-autogen, elixir-format
msgid "View the source code"
msgstr ""
#: lib/cannery_web/components/topbar.ex:65
#: lib/cannery_web/components/core_components/topbar.html.heex:50
#: lib/cannery_web/live/ammo_type_live/index.ex:52
#: lib/cannery_web/live/ammo_type_live/index.ex:62
#: lib/cannery_web/live/ammo_type_live/index.html.heex:3
@ -743,39 +742,39 @@ msgstr ""
msgid "Catalog"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/show.ex:44
#: lib/cannery_web/live/ammo_group_live/show.ex:45
#, elixir-autogen, elixir-format, fuzzy
msgid "Edit Ammo"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/show.ex:42
#: lib/cannery_web/live/ammo_group_live/show.ex:43
#, elixir-autogen, elixir-format, fuzzy
msgid "Move Ammo"
msgstr ""
#: lib/cannery_web/live/container_live/show.html.heex:115
#: lib/cannery_web/live/container_live/show.html.heex:112
#, elixir-autogen, elixir-format, fuzzy
msgid "No ammo in this container"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/show.ex:43
#: lib/cannery_web/live/ammo_group_live/show.ex:44
#, elixir-autogen, elixir-format, fuzzy
msgid "Show Ammo"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/show.html.heex:122
#: lib/cannery_web/live/ammo_group_live/show.html.heex:118
#, elixir-autogen, elixir-format, fuzzy
msgid "This ammo is not in a container"
msgstr ""
#: lib/cannery_web/components/container_card.ex:55
#: lib/cannery_web/components/core_components/container_card.html.heex:32
#: lib/cannery_web/live/ammo_type_live/show.html.heex:98
#: lib/cannery_web/live/container_live/show.html.heex:26
#: lib/cannery_web/live/container_live/show.html.heex:23
#, elixir-autogen, elixir-format
msgid "Packs:"
msgstr ""
#: lib/cannery_web/components/topbar.ex:25
#: lib/cannery_web/components/core_components/topbar.html.heex:10
#: lib/cannery_web/live/home_live.html.heex:4
#, elixir-autogen, elixir-format
msgid "Cannery logo"
@ -791,45 +790,45 @@ msgstr ""
msgid "Leave \"Uses left\" blank to make invite unlimited"
msgstr ""
#: lib/cannery_web/components/ammo_group_card.ex:83
#: lib/cannery_web/components/core_components/ammo_group_card.html.heex:54
#, elixir-autogen, elixir-format, fuzzy
msgid "Container:"
msgstr ""
#: 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:155
#: lib/cannery_web/live/container_live/show.html.heex:101
#: 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_type_live/show.html.heex:153
#: lib/cannery_web/live/container_live/show.html.heex:98
#, elixir-autogen, elixir-format
msgid "Show used"
msgstr ""
#: lib/cannery_web/components/ammo_group_table_component.ex:193
#: lib/cannery_web/components/ammo_group_table_component.ex:187
#: lib/cannery_web/live/ammo_group_live/show.html.heex:19
#, elixir-autogen, elixir-format
msgid "%{percentage}%"
msgstr ""
#: lib/cannery_web/live/range_live/index.ex:134
#: lib/cannery_web/live/range_live/index.ex:135
#, elixir-autogen, elixir-format, fuzzy
msgid "Rounds shot: %{count}"
msgstr ""
#: lib/cannery_web/components/ammo_type_table_component.ex:100
#: lib/cannery_web/components/container_table_component.ex:50
#: lib/cannery_web/components/container_table_component.ex:64
#, elixir-autogen, elixir-format, fuzzy
msgid "Packs"
msgstr ""
#: lib/cannery_web/components/ammo_type_table_component.ex:80
#: lib/cannery_web/components/container_table_component.ex:51
#: lib/cannery_web/components/container_table_component.ex:65
#, elixir-autogen, elixir-format, fuzzy
msgid "Rounds"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/show.html.heex:161
#: lib/cannery_web/live/container_live/index.html.heex:38
#: lib/cannery_web/live/container_live/show.html.heex:107
#: 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/show.html.heex:104
#, elixir-autogen, elixir-format
msgid "View as table"
msgstr ""
@ -879,102 +878,102 @@ msgstr ""
msgid "Used up!"
msgstr ""
#: lib/cannery_web/live/range_live/index.html.heex:64
#: lib/cannery_web/live/range_live/index.html.heex:71
#, elixir-autogen, elixir-format, fuzzy
msgid "Rounds shot chart"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/show.ex:27
#: lib/cannery_web/live/ammo_type_live/show.ex:26
#, elixir-autogen, elixir-format, fuzzy
msgid "Blank:"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/show.ex:13
#: lib/cannery_web/live/ammo_type_live/show.ex:12
#, elixir-autogen, elixir-format, fuzzy
msgid "Bullet core:"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/show.ex:12
#: lib/cannery_web/live/ammo_type_live/show.ex:11
#, elixir-autogen, elixir-format, fuzzy
msgid "Bullet type:"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/show.ex:15
#: lib/cannery_web/live/ammo_type_live/show.ex:14
#, elixir-autogen, elixir-format, fuzzy
msgid "Caliber:"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/show.ex:14
#: lib/cannery_web/live/ammo_type_live/show.ex:13
#, elixir-autogen, elixir-format, fuzzy
msgid "Cartridge:"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/show.ex:16
#: lib/cannery_web/live/ammo_type_live/show.ex:15
#, elixir-autogen, elixir-format, fuzzy
msgid "Case material:"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/show.ex:28
#: lib/cannery_web/live/ammo_type_live/show.ex:27
#, elixir-autogen, elixir-format, fuzzy
msgid "Corrosive:"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/show.ex:24
#: lib/cannery_web/live/ammo_type_live/show.ex:23
#, elixir-autogen, elixir-format, fuzzy
msgid "Firing type:"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/show.ex:21
#: lib/cannery_web/live/ammo_type_live/show.ex:20
#, elixir-autogen, elixir-format, fuzzy
msgid "Grains:"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/show.ex:26
#: lib/cannery_web/live/ammo_type_live/show.ex:25
#, elixir-autogen, elixir-format, fuzzy
msgid "Incendiary:"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/show.ex:17
#: lib/cannery_web/live/ammo_type_live/show.ex:16
#, elixir-autogen, elixir-format, fuzzy
msgid "Jacket type:"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/show.ex:29
#: lib/cannery_web/live/ammo_type_live/show.ex:28
#, elixir-autogen, elixir-format, fuzzy
msgid "Manufacturer:"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/show.ex:18
#: lib/cannery_web/live/ammo_type_live/show.ex:17
#, elixir-autogen, elixir-format, fuzzy
msgid "Muzzle velocity:"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/show.ex:20
#: lib/cannery_web/live/ammo_type_live/show.ex:19
#, elixir-autogen, elixir-format, fuzzy
msgid "Powder grains per charge:"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/show.ex:19
#: lib/cannery_web/live/ammo_type_live/show.ex:18
#, elixir-autogen, elixir-format, fuzzy
msgid "Powder type:"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/show.ex:22
#: lib/cannery_web/live/ammo_type_live/show.ex:21
#, elixir-autogen, elixir-format, fuzzy
msgid "Pressure:"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/show.ex:23
#: lib/cannery_web/live/ammo_type_live/show.ex:22
#, elixir-autogen, elixir-format, fuzzy
msgid "Primer type:"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/show.ex:25
#: lib/cannery_web/live/ammo_type_live/show.ex:24
#, elixir-autogen, elixir-format, fuzzy
msgid "Tracer:"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/show.ex:30
#: lib/cannery_web/live/ammo_type_live/show.ex:29
#, elixir-autogen, elixir-format, fuzzy
msgid "UPC:"
msgstr ""
@ -986,13 +985,13 @@ msgid "Average CPR"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/index.ex:28
#: lib/cannery_web/live/ammo_type_live/show.ex:118
#: lib/cannery_web/live/ammo_type_live/show.ex:135
#, elixir-autogen, elixir-format, fuzzy
msgid "Edit %{ammo_type_name}"
msgstr ""
#: lib/cannery_web/components/ammo_group_card.ex:40
#: lib/cannery_web/components/ammo_group_table_component.ex:231
#: lib/cannery_web/components/ammo_group_table_component.ex:233
#: lib/cannery_web/components/core_components/ammo_group_card.html.heex:17
#, elixir-autogen, elixir-format
msgid "Empty"
msgstr ""
@ -1002,7 +1001,7 @@ msgstr ""
msgid "CPR"
msgstr ""
#: lib/cannery_web/components/ammo_group_card.ex:75
#: lib/cannery_web/components/core_components/ammo_group_card.html.heex:46
#, elixir-autogen, elixir-format
msgid "CPR:"
msgstr ""
@ -1012,7 +1011,7 @@ msgstr ""
msgid "Original Count"
msgstr ""
#: lib/cannery_web/components/ammo_group_card.ex:47
#: lib/cannery_web/components/core_components/ammo_group_card.html.heex:21
#, elixir-autogen, elixir-format, fuzzy
msgid "Original Count:"
msgstr ""
@ -1022,27 +1021,22 @@ msgstr ""
msgid "Home"
msgstr ""
#: lib/cannery_web/live/container_live/show.html.heex:24
#: lib/cannery_web/live/container_live/show.html.heex:28
#, elixir-autogen, elixir-format, fuzzy
msgid "Total packs:"
msgstr ""
#: lib/cannery_web/live/container_live/show.html.heex:33
#, elixir-autogen, elixir-format, fuzzy
msgid "Total rounds:"
msgstr ""
#: lib/cannery_web/components/ammo_group_table_component.ex:58
#, elixir-autogen, elixir-format
msgid "Last used on"
msgstr ""
#: lib/cannery_web/components/ammo_group_card.ex:62
#: lib/cannery_web/components/core_components/ammo_group_card.html.heex:36
#, elixir-autogen, elixir-format
msgid "Last used on:"
msgstr ""
#: lib/cannery_web/components/ammo_group_table_component.ex:178
#: lib/cannery_web/components/ammo_group_table_component.ex:171
#, elixir-autogen, elixir-format
msgid "Never used"
msgstr ""
@ -1053,7 +1047,7 @@ msgstr ""
msgid "Purchased on"
msgstr ""
#: lib/cannery_web/components/ammo_group_card.ex:57
#: lib/cannery_web/components/core_components/ammo_group_card.html.heex:31
#: lib/cannery_web/live/ammo_group_live/show.html.heex:30
#, elixir-autogen, elixir-format
msgid "Purchased on:"
@ -1065,32 +1059,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:45
#: lib/cannery_web/live/ammo_type_live/index.html.heex:46
#, elixir-autogen, elixir-format, fuzzy
msgid "No Ammo types"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/index.html.heex:32
#: lib/cannery_web/live/ammo_type_live/index.html.heex:33
#, elixir-autogen, elixir-format
msgid "Search catalog"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/index.html.heex:57
#: lib/cannery_web/live/ammo_group_live/index.html.heex:58
#, elixir-autogen, elixir-format, fuzzy
msgid "Search ammo"
msgstr ""
#: lib/cannery_web/live/container_live/index.html.heex:32
#: lib/cannery_web/live/container_live/index.html.heex:33
#, elixir-autogen, elixir-format
msgid "Search containers"
msgstr ""
#: lib/cannery_web/live/tag_live/index.html.heex:35
#: lib/cannery_web/live/tag_live/index.html.heex:36
#, elixir-autogen, elixir-format, fuzzy
msgid "Search tags"
msgstr ""
#: lib/cannery_web/live/range_live/index.html.heex:82
#: lib/cannery_web/live/range_live/index.html.heex:90
#, elixir-autogen, elixir-format
msgid "Search shot records"
msgstr ""
@ -1103,47 +1097,47 @@ msgstr ""
#: lib/cannery_web/templates/error/error.html.heex:8
#: lib/cannery_web/templates/layout/root.html.heex:13
#: lib/cannery_web/templates/layout/root.html.heex:14
#: lib/cannery_web/views/layout_view.ex:15
#: lib/cannery_web/views/layout_view.ex:14
#, elixir-autogen, elixir-format, fuzzy
msgid "Cannery"
msgstr ""
#: lib/cannery_web/components/user_card.ex:33
#: lib/cannery_web/components/core_components/user_card.html.heex:20
#, elixir-autogen, elixir-format
msgid "Email unconfirmed"
msgstr ""
#: lib/cannery_web/components/user_card.ex:38
#: lib/cannery_web/components/core_components/user_card.html.heex:25
#, elixir-autogen, elixir-format, fuzzy
msgid "User registered on%{registered_datetime}"
msgstr ""
#: lib/cannery_web/components/user_card.ex:27
#: lib/cannery_web/components/core_components/user_card.html.heex:14
#, elixir-autogen, elixir-format
msgid "User was confirmed at%{confirmed_datetime}"
msgstr ""
#: lib/cannery_web/components/invite_card.ex:37
#: lib/cannery_web/components/core_components/invite_card.html.heex:16
#, elixir-autogen, elixir-format, fuzzy
msgid "Uses Left: Unlimited"
msgstr ""
#: lib/cannery_web/live/home_live.html.heex:26
#: lib/cannery_web/live/home_live.html.heex:25
#, elixir-autogen, elixir-format, fuzzy
msgid "Cannery lets you easily keep an eye on your ammo levels before and after range day"
msgstr ""
#: lib/cannery_web/views/layout_view.ex:11
#: lib/cannery_web/views/layout_view.ex:10
#, elixir-autogen, elixir-format
msgid "Cannery | %{title}"
msgstr ""
#: lib/cannery_web/live/home_live.html.heex:78
#: lib/cannery_web/live/home_live.html.heex:80
#, elixir-autogen, elixir-format, fuzzy
msgid "Registration:"
msgstr ""
#: lib/cannery_web/live/home_live.html.heex:88
#: lib/cannery_web/live/home_live.html.heex:90
#, elixir-autogen, elixir-format
msgid "Version:"
msgstr ""
@ -1153,29 +1147,29 @@ msgstr ""
msgid "Welcome to Cannery"
msgstr ""
#: lib/cannery_web/live/invite_live/index.html.heex:70
#: lib/cannery_web/live/invite_live/index.html.heex:75
#, elixir-autogen, elixir-format
msgid "Disable"
msgstr ""
#: lib/cannery_web/live/invite_live/index.html.heex:70
#: lib/cannery_web/live/invite_live/index.html.heex:75
#, elixir-autogen, elixir-format
msgid "Enable"
msgstr ""
#: lib/cannery_web/components/invite_card.ex:32
#: lib/cannery_web/components/core_components/invite_card.html.heex:11
#, elixir-autogen, elixir-format, fuzzy
msgid "Uses Left: %{uses_left_count}"
msgstr ""
#: lib/cannery_web/components/invite_card.ex:52
#: lib/cannery_web/components/core_components/invite_card.html.heex:31
#, elixir-autogen, elixir-format
msgid "Uses: %{uses_count}"
msgstr ""
#: lib/cannery_web/templates/user_confirmation/new.html.heex:12
#: lib/cannery_web/templates/user_confirmation/new.html.heex:13
#: lib/cannery_web/templates/user_registration/new.html.heex:20
#: lib/cannery_web/templates/user_reset_password/new.html.heex:12
#: lib/cannery_web/templates/user_reset_password/new.html.heex:13
#: lib/cannery_web/templates/user_session/new.html.heex:17
#: lib/cannery_web/templates/user_settings/edit.html.heex:27
#, elixir-autogen, elixir-format
@ -1187,24 +1181,3 @@ msgstr ""
#, elixir-autogen, elixir-format
msgid "Password"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/index.html.heex:153
#, elixir-autogen, elixir-format
msgid "Clone ammo group of %{ammo_group_count} bullets"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/index.html.heex:168
#: 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/ammo_group_live/index.html.heex:141
#, elixir-autogen, elixir-format
msgid "Edit ammo group of %{ammo_group_count} bullets"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/index.html.heex:129
#, elixir-autogen, elixir-format
msgid "View ammo group of %{ammo_group_count} bullets"
msgstr ""

View File

@ -10,18 +10,18 @@ msgid ""
msgstr ""
"Language: en\n"
#: lib/cannery/containers.ex:179
#: lib/cannery/containers.ex:200
#, elixir-autogen, elixir-format
msgid "Container must be empty before deleting"
msgstr ""
#: lib/cannery_web/live/container_live/index.ex:92
#: lib/cannery_web/live/container_live/show.ex:72
#: lib/cannery_web/live/container_live/index.ex:86
#: lib/cannery_web/live/container_live/show.ex:71
#, elixir-autogen, elixir-format
msgid "Could not delete %{name}: %{error}"
msgstr ""
#: lib/cannery_web/live/container_live/index.ex:80
#: lib/cannery_web/live/container_live/index.ex:74
#, elixir-autogen, elixir-format
msgid "Could not find that container"
msgstr ""
@ -36,12 +36,12 @@ msgstr ""
msgid "Error"
msgstr ""
#: lib/cannery_web/templates/error/error.html.heex:28
#: lib/cannery_web/templates/error/error.html.heex:31
#, elixir-autogen, elixir-format
msgid "Go back home"
msgstr ""
#: lib/cannery_web/views/error_view.ex:11
#: lib/cannery_web/views/error_view.ex:10
#, elixir-autogen, elixir-format
msgid "Internal Server Error"
msgstr ""
@ -51,7 +51,7 @@ msgstr ""
msgid "Invalid email or password"
msgstr ""
#: lib/cannery_web/views/error_view.ex:9
#: lib/cannery_web/views/error_view.ex:8
#, elixir-autogen, elixir-format
msgid "Not found"
msgstr ""
@ -70,15 +70,15 @@ msgstr ""
msgid "Reset password link is invalid or it has expired."
msgstr ""
#: lib/cannery_web/controllers/user_registration_controller.ex:22
#: lib/cannery_web/controllers/user_registration_controller.ex:51
#: lib/cannery_web/controllers/user_registration_controller.ex:23
#: lib/cannery_web/controllers/user_registration_controller.ex:52
#, elixir-autogen, elixir-format
msgid "Sorry, public registration is disabled"
msgstr ""
#: lib/cannery_web/controllers/user_registration_controller.ex:12
#: lib/cannery_web/controllers/user_registration_controller.ex:41
#: lib/cannery_web/controllers/user_registration_controller.ex:70
#: lib/cannery_web/controllers/user_registration_controller.ex:13
#: lib/cannery_web/controllers/user_registration_controller.ex:42
#: lib/cannery_web/controllers/user_registration_controller.ex:71
#, elixir-autogen, elixir-format
msgid "Sorry, this invite was not found or expired"
msgstr ""
@ -88,7 +88,7 @@ msgstr ""
msgid "Unable to delete user"
msgstr ""
#: lib/cannery_web/views/error_view.ex:10
#: lib/cannery_web/views/error_view.ex:9
#, elixir-autogen, elixir-format
msgid "Unauthorized"
msgstr ""
@ -98,7 +98,7 @@ msgstr ""
msgid "User confirmation link is invalid or it has expired."
msgstr ""
#: lib/cannery_web/live/invite_live/index.ex:19
#: lib/cannery_web/live/invite_live/index.ex:18
#, elixir-autogen, elixir-format
msgid "You are not authorized to view this page"
msgstr ""
@ -129,64 +129,73 @@ msgstr ""
msgid "must have the @ sign and no spaces"
msgstr ""
#: lib/cannery/tags.ex:66
#: lib/cannery_web/live/container_live/show.ex:46
#, elixir-autogen, elixir-format
msgid "Tag not found"
msgstr ""
#: lib/cannery_web/live/container_live/edit_tags_component.ex:45
#: lib/cannery_web/live/container_live/edit_tags_component.ex:46
#, elixir-autogen, elixir-format
msgid "Tag could not be added"
msgstr ""
#: lib/cannery/activity_log/shot_group.ex:126
#, elixir-autogen, elixir-format
msgid "Count must be at least 1"
msgstr ""
#: lib/cannery_web/controllers/user_auth.ex:39
#: lib/cannery_web/controllers/user_auth.ex:161
#, elixir-autogen, elixir-format
msgid "You must confirm your account and log in to access this page."
msgstr ""
#: lib/cannery_web/live/container_live/edit_tags_component.ex:72
#: lib/cannery_web/live/container_live/edit_tags_component.ex:73
#, elixir-autogen, elixir-format, fuzzy
msgid "Tag could not be removed"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/form_component.ex:157
#: lib/cannery_web/live/ammo_group_live/form_component.ex:160
#, elixir-autogen, elixir-format
msgid "Could not parse number of copies"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/form_component.ex:142
#: lib/cannery_web/live/ammo_group_live/form_component.ex:150
#, elixir-autogen, elixir-format
msgid "Invalid number of copies, must be between 1 and %{max}. Was %{multiplier}"
msgstr ""
#: lib/cannery/ammo.ex:686
#: lib/cannery/ammo.ex:1015
#, elixir-autogen, elixir-format
msgid "Invalid multiplier"
msgstr ""
#: lib/cannery/ammo/ammo_group.ex:97
#: lib/cannery/ammo/ammo_group.ex:92
#, elixir-autogen, elixir-format
msgid "Please select an ammo type and container"
msgstr ""
#: lib/cannery_web/live/range_live/index.html.heex:67
#: lib/cannery_web/live/range_live/index.html.heex:74
#, elixir-autogen, elixir-format
msgid "Your browser does not support the canvas element."
msgstr ""
#: lib/cannery/activity_log/shot_group.ex:77
#: lib/cannery/activity_log/shot_group.ex:72
#, 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"
#: lib/cannery/activity_log/shot_group.ex:86
#, elixir-autogen, elixir-format
msgid "Ammo left can be at most %{count} rounds"
msgstr ""
#: lib/cannery/activity_log/shot_group.ex:82
#, elixir-autogen, elixir-format
msgid "Ammo left must be at least 0"
msgstr ""
#: lib/cannery/activity_log/shot_group.ex:119
#, elixir-autogen, elixir-format, fuzzy
msgid "Count can be at most %{count} shots"
msgstr ""
#: lib/cannery/activity_log/shot_group.ex:78
#, elixir-autogen, elixir-format
msgid "can't be blank"
msgstr ""

View File

@ -10,31 +10,31 @@ msgid ""
msgstr ""
"Language: en\n"
#: lib/cannery_web/live/ammo_type_live/form_component.ex:86
#: lib/cannery_web/live/ammo_type_live/form_component.ex:89
#: lib/cannery_web/live/container_live/form_component.ex:89
#: lib/cannery_web/live/invite_live/form_component.ex:80
#: lib/cannery_web/live/tag_live/form_component.ex:79
#: lib/cannery_web/live/tag_live/form_component.ex:78
#, elixir-autogen, elixir-format
msgid "%{name} created successfully"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/index.ex:73
#: lib/cannery_web/live/ammo_type_live/show.ex:55
#: lib/cannery_web/live/tag_live/index.ex:64
#: lib/cannery_web/live/ammo_type_live/index.ex:72
#: lib/cannery_web/live/ammo_type_live/show.ex:54
#: lib/cannery_web/live/tag_live/index.ex:65
#, elixir-autogen, elixir-format
msgid "%{name} deleted succesfully"
msgstr ""
#: lib/cannery_web/live/container_live/index.ex:85
#: lib/cannery_web/live/container_live/show.ex:62
#: lib/cannery_web/live/container_live/index.ex:79
#: lib/cannery_web/live/container_live/show.ex:61
#, elixir-autogen, elixir-format
msgid "%{name} has been deleted"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/form_component.ex:67
#: lib/cannery_web/live/ammo_type_live/form_component.ex:70
#: lib/cannery_web/live/container_live/form_component.ex:70
#: lib/cannery_web/live/invite_live/form_component.ex:62
#: lib/cannery_web/live/tag_live/form_component.ex:61
#: lib/cannery_web/live/tag_live/form_component.ex:60
#, elixir-autogen, elixir-format
msgid "%{name} updated successfully"
msgstr ""
@ -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:105
#: lib/cannery_web/live/invite_live/index.html.heex:133
#: lib/cannery_web/live/invite_live/index.html.heex:110
#: lib/cannery_web/live/invite_live/index.html.heex:138
#, 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:98
#: lib/cannery_web/live/container_live/index.html.heex:150
#: lib/cannery_web/live/container_live/show.html.heex:55
#: lib/cannery_web/live/tag_live/index.html.heex:62
#: lib/cannery_web/live/container_live/index.html.heex:99
#: lib/cannery_web/live/container_live/index.html.heex:155
#: lib/cannery_web/live/container_live/show.html.heex:52
#: lib/cannery_web/live/tag_live/index.html.heex:63
#, elixir-autogen, elixir-format
msgid "Are you sure you want to delete %{name}?"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/index.html.heex:166
#: lib/cannery_web/live/ammo_group_live/show.html.heex:78
#: lib/cannery_web/live/ammo_group_live/index.html.heex:167
#: lib/cannery_web/live/ammo_group_live/show.html.heex:74
#, elixir-autogen, elixir-format
msgid "Are you sure you want to delete this ammo?"
msgstr ""
@ -69,7 +69,7 @@ msgstr ""
msgid "Are you sure you want to delete your account?"
msgstr ""
#: lib/cannery_web/components/topbar.ex:104
#: lib/cannery_web/components/core_components/topbar.html.heex:89
#, elixir-autogen, elixir-format
msgid "Are you sure you want to log out?"
msgstr ""
@ -104,7 +104,7 @@ msgstr ""
msgid "Password updated successfully."
msgstr ""
#: lib/cannery_web/controllers/user_registration_controller.ex:65
#: lib/cannery_web/controllers/user_registration_controller.ex:66
#, elixir-autogen, elixir-format
msgid "Please check your email to verify your account"
msgstr ""
@ -130,44 +130,44 @@ msgstr ""
msgid "Are you sure you want to remove the %{tag_name} tag from %{container_name}?"
msgstr ""
#: lib/cannery_web/live/container_live/edit_tags_component.ex:50
#: lib/cannery_web/live/container_live/edit_tags_component.ex:51
#, elixir-autogen, elixir-format
msgid "%{name} added successfully"
msgstr ""
#: lib/cannery_web/live/container_live/show.ex:39
#: lib/cannery_web/live/container_live/show.ex:38
#, elixir-autogen, elixir-format
msgid "%{tag_name} has been removed from %{container_name}"
msgstr ""
#: lib/cannery_web/live/container_live/edit_tags_component.html.heex:52
#: lib/cannery_web/live/container_live/edit_tags_component.html.heex:53
#, elixir-autogen, elixir-format
msgid "Adding..."
msgstr ""
#: lib/cannery_web/components/add_shot_group_component.ex:56
#: lib/cannery_web/components/add_shot_group_component.ex:60
#, elixir-autogen, elixir-format
msgid "Shots recorded successfully"
msgstr ""
#: lib/cannery_web/live/range_live/index.html.heex:27
#: lib/cannery_web/live/range_live/index.html.heex:34
#, elixir-autogen, elixir-format
msgid "Are you sure you want to unstage this ammo?"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/show.ex:143
#: lib/cannery_web/live/range_live/index.html.heex:119
#: lib/cannery_web/live/ammo_group_live/show.ex:159
#: lib/cannery_web/live/range_live/index.html.heex:127
#, elixir-autogen, elixir-format
msgid "Are you sure you want to delete this shot record?"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/show.ex:80
#: lib/cannery_web/live/range_live/index.ex:80
#: lib/cannery_web/live/ammo_group_live/show.ex:81
#: lib/cannery_web/live/range_live/index.ex:79
#, elixir-autogen, elixir-format
msgid "Shot records deleted succesfully"
msgstr ""
#: lib/cannery_web/live/range_live/form_component.ex:55
#: lib/cannery_web/live/range_live/form_component.ex:54
#, elixir-autogen, elixir-format
msgid "Shot records updated successfully"
msgstr ""
@ -177,17 +177,17 @@ msgstr ""
msgid "%{email} confirmed successfully."
msgstr ""
#: lib/cannery_web/components/move_ammo_group_component.ex:53
#: lib/cannery_web/components/move_ammo_group_component.ex:54
#, elixir-autogen, elixir-format
msgid "Ammo moved to %{name} successfully"
msgstr ""
#: lib/cannery_web/live/invite_live/index.ex:127
#: lib/cannery_web/live/invite_live/index.ex:126
#, elixir-autogen, elixir-format
msgid "Copied to clipboard"
msgstr ""
#: lib/cannery_web/live/container_live/edit_tags_component.ex:77
#: lib/cannery_web/live/container_live/edit_tags_component.ex:78
#, elixir-autogen, elixir-format, fuzzy
msgid "%{name} removed successfully"
msgstr ""
@ -214,70 +214,70 @@ msgid "Language updated successfully."
msgstr ""
#: lib/cannery_web/live/ammo_group_live/index.ex:89
#: lib/cannery_web/live/ammo_group_live/show.ex:54
#: lib/cannery_web/live/ammo_group_live/show.ex:55
#, elixir-autogen, elixir-format, fuzzy
msgid "Ammo deleted succesfully"
msgstr ""
#: lib/cannery_web/live/range_live/index.ex:94
#: lib/cannery_web/live/range_live/index.ex:93
#, elixir-autogen, elixir-format, fuzzy
msgid "Ammo unstaged succesfully"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/form_component.ex:118
#: lib/cannery_web/live/ammo_group_live/form_component.ex:126
#, elixir-autogen, elixir-format, fuzzy
msgid "Ammo updated successfully"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/form_component.ex:178
#: lib/cannery_web/live/ammo_group_live/form_component.ex:185
#, elixir-autogen, elixir-format, fuzzy
msgid "Ammo added successfully"
msgid_plural "Ammo added successfully"
msgstr[0] ""
msgstr[1] ""
#: lib/cannery_web/live/ammo_type_live/index.html.heex:95
#: lib/cannery_web/live/ammo_type_live/index.html.heex:96
#: 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!"
msgstr ""
#: lib/cannery_web/live/home_live.html.heex:65
#: lib/cannery_web/live/home_live.html.heex:63
#, elixir-autogen, elixir-format, fuzzy
msgid "Register to setup Cannery"
msgstr ""
#: lib/cannery_web/live/invite_live/index.ex:54
#: lib/cannery_web/live/invite_live/index.ex:53
#, elixir-autogen, elixir-format, fuzzy
msgid "%{invite_name} deleted succesfully"
msgstr ""
#: lib/cannery_web/live/invite_live/index.ex:115
#: lib/cannery_web/live/invite_live/index.ex:114
#, elixir-autogen, elixir-format, fuzzy
msgid "%{invite_name} disabled succesfully"
msgstr ""
#: lib/cannery_web/live/invite_live/index.ex:91
#: lib/cannery_web/live/invite_live/index.ex:90
#, elixir-autogen, elixir-format, fuzzy
msgid "%{invite_name} enabled succesfully"
msgstr ""
#: lib/cannery_web/live/invite_live/index.ex:69
#: lib/cannery_web/live/invite_live/index.ex:68
#, elixir-autogen, elixir-format, fuzzy
msgid "%{invite_name} updated succesfully"
msgstr ""
#: lib/cannery_web/live/invite_live/index.ex:138
#: lib/cannery_web/live/invite_live/index.ex:135
#, elixir-autogen, elixir-format, fuzzy
msgid "%{user_email} deleted succesfully"
msgstr ""
#: lib/cannery_web/live/invite_live/index.html.heex:53
#: lib/cannery_web/live/invite_live/index.html.heex:58
#, 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:80
#: lib/cannery_web/live/invite_live/index.html.heex:85
#, elixir-autogen, elixir-format, fuzzy
msgid "Are you sure you want to make %{invite_name} unlimited?"
msgstr ""