fix: correct mail adapter message interpolation in login page

Fixes fragmented translation that displayed raw '%{link}' placeholder text
instead of properly interpolated link in development mail adapter notice.

Changes:
- Consolidate separate translation calls into single interpolated string
- Use raw() helper to safely inject HTML link into translated text
- Update Spanish translation to include %{link} placeholder
- Extract updated translations with mix gettext.extract

Before: "To see sent emails, visit %{link}. the mailbox page."
After: "To see sent emails, visit the mailbox page." (with proper link)
This commit is contained in:
Graham McIntire 2026-03-05 13:32:34 -06:00
parent 7607a583cf
commit ade7e2fe15
No known key found for this signature in database
17 changed files with 5363 additions and 3177 deletions

View file

@ -1,4 +1,14 @@
2026-03-05
fix: correct mail adapter message interpolation in login page
- Fix gettext translation to use proper %{link} interpolation
- Consolidate fragmented translation strings into single interpolated message
- Update Spanish translation to include placeholder
- Prevents display of raw "%{link}" text in development mode
Files: lib/towerops_web/controllers/user_session_html/new.html.heex,
priv/gettext/auth.pot,
priv/gettext/en/LC_MESSAGES/auth.po,
priv/gettext/es/LC_MESSAGES/auth.po
perf: optimize CI database setup with structure.sql dumps (99.7% faster)
- Replace sequential migration runs (4m8s) with structure.sql loading (416ms)
- Configure Ecto to dump schema to priv/repo/structure.sql

View file

@ -885,6 +885,39 @@ const NetworkMap = {
}
}
// Dynamic Favicon - alternates favicon between status indicator SVGs
const DynamicFavicon = {
interval: null as ReturnType<typeof setInterval> | null,
isGreen: true,
mounted(this: any) {
const greenSvg = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><defs><radialGradient id="g" cx="50%" cy="50%" r="50%"><stop offset="0%" stop-color="#4ade80"/><stop offset="60%" stop-color="#22c55e"/><stop offset="100%" stop-color="#16a34a"/></radialGradient><filter id="glow"><feGaussianBlur stdDeviation="2" result="blur"/><feMerge><feMergeNode in="blur"/><feMergeNode in="SourceGraphic"/></feMerge></filter></defs><circle cx="16" cy="16" r="12" fill="url(#g)" filter="url(#glow)"/><circle cx="13" cy="13" r="3" fill="white" opacity="0.3"/></svg>`
const redSvg = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><defs><radialGradient id="r" cx="50%" cy="50%" r="50%"><stop offset="0%" stop-color="#f87171"/><stop offset="60%" stop-color="#ef4444"/><stop offset="100%" stop-color="#dc2626"/></radialGradient><filter id="glow"><feGaussianBlur stdDeviation="2" result="blur"/><feMerge><feMergeNode in="blur"/><feMergeNode in="SourceGraphic"/></feMerge></filter></defs><circle cx="16" cy="16" r="12" fill="url(#r)" filter="url(#glow)"/><circle cx="13" cy="13" r="3" fill="white" opacity="0.3"/></svg>`
const greenDataUri = 'data:image/svg+xml,' + encodeURIComponent(greenSvg)
const redDataUri = 'data:image/svg+xml,' + encodeURIComponent(redSvg)
const faviconEl = document.getElementById('favicon') as HTMLLinkElement
if (!faviconEl) return
this.isGreen = true
faviconEl.type = 'image/svg+xml'
faviconEl.href = greenDataUri
this.interval = setInterval(() => {
this.isGreen = !this.isGreen
faviconEl.href = this.isGreen ? greenDataUri : redDataUri
}, 1000)
},
destroyed(this: any) {
if (this.interval) {
clearInterval(this.interval)
this.interval = null
}
}
}
// MikroTik Port Sync - automatically switches port when SSL checkbox is toggled
const MikrotikPortSync = {
handleSslChange: null as ((e: Event) => void) | null,
@ -1133,7 +1166,7 @@ const GlobalSearch = {
const liveSocket = new LiveSocket("/live", Socket, {
longPollFallbackMs: 2500,
params: { _csrf_token: csrfToken, timezone: userTimezone },
hooks: { ...colocatedHooks, SensorChart, CopyToClipboard, ScrollToTop, AutoDismissFlash, BetaBannerDismiss, NetworkMap, SitesMap, LeafletMap, DeviceListReorder, MikrotikPortSync, GlobalSearch, GlobalSearchTrigger },
hooks: { ...colocatedHooks, SensorChart, CopyToClipboard, ScrollToTop, AutoDismissFlash, BetaBannerDismiss, NetworkMap, SitesMap, LeafletMap, DeviceListReorder, MikrotikPortSync, GlobalSearch, GlobalSearchTrigger, DynamicFavicon },
})
// Show progress bar on live navigation and form submits

View file

@ -23,7 +23,7 @@
/>
<!-- Favicon -->
<link rel="icon" type="image/png" href={~p"/images/towerops_logo.png"} />
<link id="favicon" rel="icon" type="image/png" href={~p"/images/towerops_logo.png"} />
<link rel="apple-touch-icon" href={~p"/images/towerops_logo.png"} />
<.live_title default="TowerOps">

View file

@ -65,10 +65,7 @@
{t_auth("You are running the local mail adapter.")}
</p>
<p class="mt-1 text-sm text-blue-700 dark:text-blue-200">
{t_auth("To see sent emails, visit")}
<a href="/dev/mailbox" class="font-medium underline">
{t_auth("the mailbox page")}
</a>.
<%= t_auth("To see sent emails, visit %{link}.", link: raw(~s(<a href="/dev/mailbox" class="font-medium underline">#{t_auth("the mailbox page")}</a>))) %>
</p>
</div>
</div>

View file

@ -3,6 +3,7 @@
current_scope={@current_scope}
active_page="dashboard"
>
<div id="dynamic-favicon" phx-hook="DynamicFavicon" class="hidden"></div>
<%!-- ═══════════════════════════════════════════════
NOC HEADER — dense, zero chrome
═══════════════════════════════════════════════ --%>

View file

@ -24,7 +24,7 @@ msgstr ""
msgid "Failed to delete user"
msgstr ""
#: lib/towerops_web/user_auth.ex:859
#: lib/towerops_web/user_auth.ex:876
#, elixir-autogen, elixir-format
msgid "Now impersonating %{email}"
msgstr ""
@ -34,7 +34,7 @@ msgstr ""
msgid "Organization deleted successfully"
msgstr ""
#: lib/towerops_web/user_auth.ex:892
#: lib/towerops_web/user_auth.ex:909
#, elixir-autogen, elixir-format
msgid "Stopped impersonating"
msgstr ""
@ -44,7 +44,7 @@ msgstr ""
msgid "User deleted successfully"
msgstr ""
#: lib/towerops_web/user_auth.ex:837
#: lib/towerops_web/user_auth.ex:854
#, elixir-autogen, elixir-format
msgid "You cannot impersonate yourself."
msgstr ""

View file

@ -14,12 +14,12 @@ msgid ""
msgstr ""
"Language: en\n"
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:133
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:203
#, elixir-autogen, elixir-format
msgid "Accept invitation and create account"
msgstr ""
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:11
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:57
#, elixir-autogen, elixir-format
msgid "Already registered?"
msgstr ""
@ -31,31 +31,31 @@ msgid "Back to log in"
msgstr ""
#: lib/towerops_web/controllers/user_reset_password_html/edit.html.heex:25
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:32
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:34
#, elixir-autogen, elixir-format
msgid "Confirm new password"
msgstr ""
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:134
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:204
#, elixir-autogen, elixir-format
msgid "Create an account"
msgstr ""
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:128
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:198
#, elixir-autogen, elixir-format
msgid "Creating account..."
msgstr ""
#: lib/towerops_web/controllers/user_session_html/new.html.heex:10
#: lib/towerops_web/controllers/user_session_html/new.html.heex:43
#, elixir-autogen, elixir-format
msgid "Don't have an account?"
msgstr ""
#: lib/towerops_web/controllers/user_confirmation_html/new.html.heex:6
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:55
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:97
#: lib/towerops_web/controllers/user_reset_password_html/new.html.heex:17
#: lib/towerops_web/controllers/user_session_html/new.html.heex:54
#: lib/towerops_web/controllers/user_session_html/new.html.heex:100
#: lib/towerops_web/controllers/user_session_html/new.html.heex:88
#: lib/towerops_web/controllers/user_session_html/new.html.heex:143
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:12
#, elixir-autogen, elixir-format
msgid "Email"
@ -71,7 +71,7 @@ msgstr ""
msgid "Enter your new password below."
msgstr ""
#: lib/towerops_web/controllers/user_session_html/new.html.heex:72
#: lib/towerops_web/controllers/user_session_html/new.html.heex:115
#, elixir-autogen, elixir-format
msgid "Forgot password?"
msgstr ""
@ -81,70 +81,60 @@ msgstr ""
msgid "Forgot your password?"
msgstr ""
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:34
#, elixir-autogen, elixir-format
msgid "Free tier includes:"
msgstr ""
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:92
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:115
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:162
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:185
#, elixir-autogen, elixir-format
msgid "I agree to the %{link}"
msgstr ""
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:6
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:51
#, elixir-autogen, elixir-format
msgid "Join %{organization}"
msgstr ""
#: lib/towerops_web/controllers/user_confirmation_html/new.html.heex:11
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:16
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:62
#: lib/towerops_web/controllers/user_session_html/confirm.html.heex:42
#: lib/towerops_web/controllers/user_session_html/new.html.heex:5
#: lib/towerops_web/controllers/user_session_html/new.html.heex:77
#: lib/towerops_web/controllers/user_session_html/new.html.heex:37
#: lib/towerops_web/controllers/user_session_html/new.html.heex:120
#, elixir-autogen, elixir-format
msgid "Log in"
msgstr ""
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:74
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:144
#, elixir-autogen, elixir-format
msgid "My Company"
msgstr ""
#: lib/towerops_web/controllers/user_reset_password_html/edit.html.heex:17
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:25
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:27
#, elixir-autogen, elixir-format
msgid "New password"
msgstr ""
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:73
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:143
#, elixir-autogen, elixir-format
msgid "Organization Name"
msgstr ""
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:63
#: lib/towerops_web/controllers/user_session_html/new.html.heex:63
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:105
#: lib/towerops_web/controllers/user_session_html/new.html.heex:97
#, elixir-autogen, elixir-format
msgid "Password"
msgstr ""
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:95
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:165
#, elixir-autogen, elixir-format
msgid "Privacy Policy"
msgstr ""
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:8
#, elixir-autogen, elixir-format
msgid "Register for an account"
msgstr ""
#: lib/towerops_web/controllers/user_reset_password_html/edit.html.heex:5
#: lib/towerops_web/controllers/user_reset_password_html/edit.html.heex:31
#, elixir-autogen, elixir-format
msgid "Reset password"
msgstr ""
#: lib/towerops_web/controllers/user_session_html/new.html.heex:105
#: lib/towerops_web/controllers/user_session_html/new.html.heex:149
#, elixir-autogen, elixir-format
msgid "Send me a login link instead"
msgstr ""
@ -154,66 +144,36 @@ msgstr ""
msgid "Send reset instructions"
msgstr ""
#: lib/towerops_web/controllers/user_session_html/new.html.heex:15
#: lib/towerops_web/controllers/user_session_html/new.html.heex:48
#, elixir-autogen, elixir-format
msgid "Sign up"
msgstr ""
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:118
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:188
#, elixir-autogen, elixir-format
msgid "Terms of Service"
msgstr ""
#: lib/towerops_web/controllers/user_session_html/new.html.heex:34
#: lib/towerops_web/controllers/user_session_html/new.html.heex:65
#, elixir-autogen, elixir-format
msgid "You are running the local mail adapter."
msgstr ""
#: lib/towerops_web/controllers/user_session_html/new.html.heex:8
#: lib/towerops_web/controllers/user_session_html/new.html.heex:41
#, elixir-autogen, elixir-format
msgid "You need to reauthenticate to perform sensitive actions on your account."
msgstr ""
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:25
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:80
#, elixir-autogen, elixir-format
msgid "You've been invited to join %{organization} as a %{role}."
msgstr ""
#: lib/towerops_web/controllers/user_session_html/new.html.heex:17
#, elixir-autogen, elixir-format
msgid "for an account now."
msgstr ""
#: lib/towerops_web/controllers/user_session_html/new.html.heex:39
#: lib/towerops_web/controllers/user_session_html/new.html.heex:68
#, elixir-autogen, elixir-format
msgid "the mailbox page"
msgstr ""
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:18
#, elixir-autogen, elixir-format
msgid "to your account now."
msgstr ""
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:37
#, elixir-autogen, elixir-format
msgid "✓ Monitor up to 10 devices"
msgstr ""
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:40
#, elixir-autogen, elixir-format
msgid "✓ No credit card required"
msgstr ""
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:39
#, elixir-autogen, elixir-format
msgid "✓ Performance charts and historical data"
msgstr ""
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:38
#, elixir-autogen, elixir-format
msgid "✓ Real-time alerts and notifications"
msgstr ""
#: lib/towerops_web/live/user_settings_live/session_manager.ex:35
#, elixir-autogen, elixir-format
msgid "Alerts disabled for device"
@ -239,55 +199,55 @@ msgstr ""
msgid "Mobile device removed successfully."
msgstr ""
#: lib/towerops_web/user_auth.ex:440
#: lib/towerops_web/user_auth.ex:447
#: lib/towerops_web/user_auth.ex:512
#: lib/towerops_web/user_auth.ex:521
#: lib/towerops_web/user_auth.ex:452
#: lib/towerops_web/user_auth.ex:459
#: lib/towerops_web/user_auth.ex:526
#: lib/towerops_web/user_auth.ex:535
#, elixir-autogen, elixir-format
msgid "Organization not found."
msgstr ""
#: lib/towerops_web/user_auth.ex:292
#: lib/towerops_web/user_auth.ex:571
#: lib/towerops_web/user_auth.ex:585
#, elixir-autogen, elixir-format
msgid "Please verify your identity to continue."
msgstr ""
#: lib/towerops_web/user_auth.ex:659
#: lib/towerops_web/user_auth.ex:673
#, elixir-autogen, elixir-format
msgid "Thank you for accepting the updated policies."
msgstr ""
#: lib/towerops_web/user_auth.ex:299
#: lib/towerops_web/user_auth.ex:579
#: lib/towerops_web/user_auth.ex:593
#, elixir-autogen, elixir-format
msgid "Two-factor authentication is required for this action."
msgstr ""
#: lib/towerops_web/user_auth.ex:434
#: lib/towerops_web/user_auth.ex:504
#: lib/towerops_web/user_auth.ex:446
#: lib/towerops_web/user_auth.ex:518
#, elixir-autogen, elixir-format
msgid "You don't have access to this organization."
msgstr ""
#: lib/towerops_web/user_auth.ex:365
#: lib/towerops_web/user_auth.ex:550
#: lib/towerops_web/user_auth.ex:374
#: lib/towerops_web/user_auth.ex:564
#, elixir-autogen, elixir-format
msgid "You must be a superuser to access this page."
msgstr ""
#: lib/towerops_web/user_auth.ex:618
#: lib/towerops_web/user_auth.ex:632
#, elixir-autogen, elixir-format
msgid "You must be an organization owner to access this page."
msgstr ""
#: lib/towerops_web/user_auth.ex:348
#: lib/towerops_web/user_auth.ex:482
#: lib/towerops_web/user_auth.ex:357
#: lib/towerops_web/user_auth.ex:496
#, elixir-autogen, elixir-format
msgid "You must log in to access this page."
msgstr ""
#: lib/towerops_web/user_auth.ex:600
#: lib/towerops_web/user_auth.ex:614
#, elixir-autogen, elixir-format
msgid "You must set up two-factor authentication to continue."
msgstr ""
@ -382,32 +342,32 @@ msgstr ""
msgid "Account Settings"
msgstr ""
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:141
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:145
#, elixir-autogen, elixir-format
msgid "Add Mobile Device"
msgstr ""
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:59
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:61
#, elixir-autogen, elixir-format
msgid "Add a mobile device to receive push notifications for alerts"
msgstr ""
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:45
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:47
#, elixir-autogen, elixir-format
msgid "Alert Notification Devices"
msgstr ""
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:110
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:114
#, elixir-autogen, elixir-format
msgid "Alerts Off"
msgstr ""
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:108
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:112
#, elixir-autogen, elixir-format
msgid "Alerts On"
msgstr ""
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:125
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:129
#, elixir-autogen, elixir-format
msgid "Are you sure you want to remove this device?"
msgstr ""
@ -418,13 +378,13 @@ msgstr ""
msgid "Authentication Code"
msgstr ""
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:14
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:15
#, elixir-autogen, elixir-format
msgid "Change Email"
msgstr ""
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:14
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:36
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:38
#, elixir-autogen, elixir-format
msgid "Changing..."
msgstr ""
@ -445,7 +405,7 @@ msgstr ""
msgid "Confirming..."
msgstr ""
#: lib/towerops_web/controllers/user_session_html/new.html.heex:114
#: lib/towerops_web/controllers/user_session_html/new.html.heex:158
#, elixir-autogen, elixir-format
msgid "Didn't receive confirmation instructions?"
msgstr ""
@ -470,7 +430,7 @@ msgstr ""
msgid "Enter the 6-digit code from your authenticator app. Recovery codes are not allowed for sensitive operations."
msgstr ""
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:76
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:78
#, elixir-autogen, elixir-format
msgid "Last used %{date}"
msgstr ""
@ -492,7 +452,7 @@ msgstr ""
msgid "Logging in..."
msgstr ""
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:48
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:50
#, elixir-autogen, elixir-format
msgid "Manage mobile devices that receive push notifications for alerts"
msgstr ""
@ -502,7 +462,7 @@ msgstr ""
msgid "Manage your account email address and password settings"
msgstr ""
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:56
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:58
#, elixir-autogen, elixir-format
msgid "No mobile devices registered"
msgstr ""
@ -517,7 +477,7 @@ msgstr ""
msgid "Register"
msgstr ""
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:128
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:132
#, elixir-autogen, elixir-format
msgid "Remove"
msgstr ""
@ -528,7 +488,7 @@ msgstr ""
msgid "Resend confirmation instructions"
msgstr ""
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:37
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:39
#, elixir-autogen, elixir-format
msgid "Save Password"
msgstr ""
@ -538,23 +498,18 @@ msgstr ""
msgid "Tip: If you prefer passwords, you can enable them in the user settings."
msgstr ""
#: lib/towerops_web/controllers/user_session_html/new.html.heex:37
#, elixir-autogen, elixir-format
msgid "To see sent emails, visit"
msgstr ""
#: lib/towerops_web/controllers/user_session_html/totp.html.heex:5
#, elixir-autogen, elixir-format
msgid "Two-Factor Authentication"
msgstr ""
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:70
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:72
#, elixir-autogen, elixir-format
msgid "Unknown Device"
msgstr ""
#: lib/towerops_web/controllers/user_session_html/totp.html.heex:31
#: lib/towerops_web/controllers/user_sudo_html/verify.html.heex:31
#: lib/towerops_web/controllers/user_session_html/totp.html.heex:33
#: lib/towerops_web/controllers/user_sudo_html/verify.html.heex:33
#, elixir-autogen, elixir-format
msgid "Verify"
msgstr ""
@ -564,12 +519,37 @@ msgstr ""
msgid "Welcome %{email}"
msgstr ""
#: lib/towerops_web/controllers/user_session_html/totp.html.heex:41
#: lib/towerops_web/controllers/user_session_html/totp.html.heex:43
#, elixir-autogen, elixir-format
msgid "← Back to login"
msgstr ""
#: lib/towerops_web/controllers/user_sudo_html/verify.html.heex:42
#: lib/towerops_web/controllers/user_sudo_html/verify.html.heex:44
#, elixir-autogen, elixir-format
msgid "← Log out instead"
msgstr ""
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:53
#, elixir-autogen, elixir-format
msgid "Create your account"
msgstr ""
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:72
#, elixir-autogen, elixir-format
msgid "First 10 devices free — no credit card needed"
msgstr ""
#: lib/towerops_web/controllers/user_session_html/new.html.heex:109
#, elixir-autogen, elixir-format
msgid "Remember me"
msgstr ""
#: lib/towerops_web/controllers/user_session_html/new.html.heex:68
#, elixir-autogen, elixir-format
msgid "To see sent emails, visit %{link}."
msgstr ""
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:134
#, elixir-autogen, elixir-format
msgid "Use 12+ characters for a strong password"
msgstr ""

File diff suppressed because it is too large Load diff

View file

@ -21,7 +21,7 @@ msgstr "Failed to delete organization"
msgid "Failed to delete user"
msgstr "Failed to delete user"
#: lib/towerops_web/user_auth.ex:859
#: lib/towerops_web/user_auth.ex:876
#, elixir-autogen, elixir-format
msgid "Now impersonating %{email}"
msgstr "Now impersonating %{email}"
@ -31,7 +31,7 @@ msgstr "Now impersonating %{email}"
msgid "Organization deleted successfully"
msgstr "Organization deleted successfully"
#: lib/towerops_web/user_auth.ex:892
#: lib/towerops_web/user_auth.ex:909
#, elixir-autogen, elixir-format
msgid "Stopped impersonating"
msgstr "Stopped impersonating"
@ -41,7 +41,7 @@ msgstr "Stopped impersonating"
msgid "User deleted successfully"
msgstr "User deleted successfully"
#: lib/towerops_web/user_auth.ex:837
#: lib/towerops_web/user_auth.ex:854
#, elixir-autogen, elixir-format
msgid "You cannot impersonate yourself."
msgstr "You cannot impersonate yourself."

View file

@ -11,12 +11,12 @@ msgstr ""
"Language: en\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:133
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:203
#, elixir-autogen, elixir-format
msgid "Accept invitation and create account"
msgstr "Accept invitation and create account"
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:11
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:57
#, elixir-autogen, elixir-format
msgid "Already registered?"
msgstr "Already registered?"
@ -28,31 +28,31 @@ msgid "Back to log in"
msgstr "Back to log in"
#: lib/towerops_web/controllers/user_reset_password_html/edit.html.heex:25
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:32
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:34
#, elixir-autogen, elixir-format
msgid "Confirm new password"
msgstr "Confirm new password"
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:134
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:204
#, elixir-autogen, elixir-format
msgid "Create an account"
msgstr "Create an account"
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:128
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:198
#, elixir-autogen, elixir-format
msgid "Creating account..."
msgstr "Creating account..."
#: lib/towerops_web/controllers/user_session_html/new.html.heex:10
#: lib/towerops_web/controllers/user_session_html/new.html.heex:43
#, elixir-autogen, elixir-format
msgid "Don't have an account?"
msgstr "Don't have an account?"
#: lib/towerops_web/controllers/user_confirmation_html/new.html.heex:6
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:55
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:97
#: lib/towerops_web/controllers/user_reset_password_html/new.html.heex:17
#: lib/towerops_web/controllers/user_session_html/new.html.heex:54
#: lib/towerops_web/controllers/user_session_html/new.html.heex:100
#: lib/towerops_web/controllers/user_session_html/new.html.heex:88
#: lib/towerops_web/controllers/user_session_html/new.html.heex:143
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:12
#, elixir-autogen, elixir-format
msgid "Email"
@ -68,7 +68,7 @@ msgstr "Enter your email address and we'll send you a link to reset your passwor
msgid "Enter your new password below."
msgstr "Enter your new password below."
#: lib/towerops_web/controllers/user_session_html/new.html.heex:72
#: lib/towerops_web/controllers/user_session_html/new.html.heex:115
#, elixir-autogen, elixir-format
msgid "Forgot password?"
msgstr "Forgot password?"
@ -78,70 +78,60 @@ msgstr "Forgot password?"
msgid "Forgot your password?"
msgstr "Forgot your password?"
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:34
#, elixir-autogen, elixir-format
msgid "Free tier includes:"
msgstr "Free tier includes:"
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:92
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:115
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:162
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:185
#, elixir-autogen, elixir-format
msgid "I agree to the %{link}"
msgstr "I agree to the %{link}"
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:6
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:51
#, elixir-autogen, elixir-format
msgid "Join %{organization}"
msgstr "Join %{organization}"
#: lib/towerops_web/controllers/user_confirmation_html/new.html.heex:11
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:16
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:62
#: lib/towerops_web/controllers/user_session_html/confirm.html.heex:42
#: lib/towerops_web/controllers/user_session_html/new.html.heex:5
#: lib/towerops_web/controllers/user_session_html/new.html.heex:77
#: lib/towerops_web/controllers/user_session_html/new.html.heex:37
#: lib/towerops_web/controllers/user_session_html/new.html.heex:120
#, elixir-autogen, elixir-format
msgid "Log in"
msgstr "Log in"
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:74
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:144
#, elixir-autogen, elixir-format
msgid "My Company"
msgstr "My Company"
#: lib/towerops_web/controllers/user_reset_password_html/edit.html.heex:17
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:25
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:27
#, elixir-autogen, elixir-format
msgid "New password"
msgstr "New password"
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:73
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:143
#, elixir-autogen, elixir-format
msgid "Organization Name"
msgstr "Organization Name"
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:63
#: lib/towerops_web/controllers/user_session_html/new.html.heex:63
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:105
#: lib/towerops_web/controllers/user_session_html/new.html.heex:97
#, elixir-autogen, elixir-format
msgid "Password"
msgstr "Password"
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:95
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:165
#, elixir-autogen, elixir-format
msgid "Privacy Policy"
msgstr "Privacy Policy"
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:8
#, elixir-autogen, elixir-format
msgid "Register for an account"
msgstr "Register for an account"
#: lib/towerops_web/controllers/user_reset_password_html/edit.html.heex:5
#: lib/towerops_web/controllers/user_reset_password_html/edit.html.heex:31
#, elixir-autogen, elixir-format
msgid "Reset password"
msgstr "Reset password"
#: lib/towerops_web/controllers/user_session_html/new.html.heex:105
#: lib/towerops_web/controllers/user_session_html/new.html.heex:149
#, elixir-autogen, elixir-format
msgid "Send me a login link instead"
msgstr "Send me a login link instead"
@ -151,66 +141,36 @@ msgstr "Send me a login link instead"
msgid "Send reset instructions"
msgstr "Send reset instructions"
#: lib/towerops_web/controllers/user_session_html/new.html.heex:15
#: lib/towerops_web/controllers/user_session_html/new.html.heex:48
#, elixir-autogen, elixir-format
msgid "Sign up"
msgstr "Sign up"
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:118
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:188
#, elixir-autogen, elixir-format
msgid "Terms of Service"
msgstr "Terms of Service"
#: lib/towerops_web/controllers/user_session_html/new.html.heex:34
#: lib/towerops_web/controllers/user_session_html/new.html.heex:65
#, elixir-autogen, elixir-format
msgid "You are running the local mail adapter."
msgstr "You are running the local mail adapter."
#: lib/towerops_web/controllers/user_session_html/new.html.heex:8
#: lib/towerops_web/controllers/user_session_html/new.html.heex:41
#, elixir-autogen, elixir-format
msgid "You need to reauthenticate to perform sensitive actions on your account."
msgstr "You need to reauthenticate to perform sensitive actions on your account."
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:25
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:80
#, elixir-autogen, elixir-format
msgid "You've been invited to join %{organization} as a %{role}."
msgstr "You've been invited to join %{organization} as a %{role}."
#: lib/towerops_web/controllers/user_session_html/new.html.heex:17
#, elixir-autogen, elixir-format
msgid "for an account now."
msgstr "for an account now."
#: lib/towerops_web/controllers/user_session_html/new.html.heex:39
#: lib/towerops_web/controllers/user_session_html/new.html.heex:68
#, elixir-autogen, elixir-format
msgid "the mailbox page"
msgstr "the mailbox page"
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:18
#, elixir-autogen, elixir-format
msgid "to your account now."
msgstr "to your account now."
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:37
#, elixir-autogen, elixir-format
msgid "✓ Monitor up to 10 devices"
msgstr "✓ Monitor up to 10 devices"
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:40
#, elixir-autogen, elixir-format
msgid "✓ No credit card required"
msgstr "✓ No credit card required"
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:39
#, elixir-autogen, elixir-format
msgid "✓ Performance charts and historical data"
msgstr "✓ Performance charts and historical data"
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:38
#, elixir-autogen, elixir-format
msgid "✓ Real-time alerts and notifications"
msgstr "✓ Real-time alerts and notifications"
#: lib/towerops_web/live/user_settings_live/session_manager.ex:35
#, elixir-autogen, elixir-format
msgid "Alerts disabled for device"
@ -236,55 +196,55 @@ msgstr "Failed to update alert preferences."
msgid "Mobile device removed successfully."
msgstr "Mobile device removed successfully."
#: lib/towerops_web/user_auth.ex:440
#: lib/towerops_web/user_auth.ex:447
#: lib/towerops_web/user_auth.ex:512
#: lib/towerops_web/user_auth.ex:521
#: lib/towerops_web/user_auth.ex:452
#: lib/towerops_web/user_auth.ex:459
#: lib/towerops_web/user_auth.ex:526
#: lib/towerops_web/user_auth.ex:535
#, elixir-autogen, elixir-format
msgid "Organization not found."
msgstr "Organization not found."
#: lib/towerops_web/user_auth.ex:292
#: lib/towerops_web/user_auth.ex:571
#: lib/towerops_web/user_auth.ex:585
#, elixir-autogen, elixir-format
msgid "Please verify your identity to continue."
msgstr "Please verify your identity to continue."
#: lib/towerops_web/user_auth.ex:659
#: lib/towerops_web/user_auth.ex:673
#, elixir-autogen, elixir-format
msgid "Thank you for accepting the updated policies."
msgstr "Thank you for accepting the updated policies."
#: lib/towerops_web/user_auth.ex:299
#: lib/towerops_web/user_auth.ex:579
#: lib/towerops_web/user_auth.ex:593
#, elixir-autogen, elixir-format
msgid "Two-factor authentication is required for this action."
msgstr "Two-factor authentication is required for this action."
#: lib/towerops_web/user_auth.ex:434
#: lib/towerops_web/user_auth.ex:504
#: lib/towerops_web/user_auth.ex:446
#: lib/towerops_web/user_auth.ex:518
#, elixir-autogen, elixir-format
msgid "You don't have access to this organization."
msgstr "You don't have access to this organization."
#: lib/towerops_web/user_auth.ex:365
#: lib/towerops_web/user_auth.ex:550
#: lib/towerops_web/user_auth.ex:374
#: lib/towerops_web/user_auth.ex:564
#, elixir-autogen, elixir-format
msgid "You must be a superuser to access this page."
msgstr "You must be a superuser to access this page."
#: lib/towerops_web/user_auth.ex:618
#: lib/towerops_web/user_auth.ex:632
#, elixir-autogen, elixir-format
msgid "You must be an organization owner to access this page."
msgstr "You must be an organization owner to access this page."
#: lib/towerops_web/user_auth.ex:348
#: lib/towerops_web/user_auth.ex:482
#: lib/towerops_web/user_auth.ex:357
#: lib/towerops_web/user_auth.ex:496
#, elixir-autogen, elixir-format
msgid "You must log in to access this page."
msgstr "You must log in to access this page."
#: lib/towerops_web/user_auth.ex:600
#: lib/towerops_web/user_auth.ex:614
#, elixir-autogen, elixir-format
msgid "You must set up two-factor authentication to continue."
msgstr "You must set up two-factor authentication to continue."
@ -379,32 +339,32 @@ msgstr "You cannot revoke your current session."
msgid "Account Settings"
msgstr "Account Settings"
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:141
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:145
#, elixir-autogen, elixir-format
msgid "Add Mobile Device"
msgstr "Add Mobile Device"
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:59
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:61
#, elixir-autogen, elixir-format
msgid "Add a mobile device to receive push notifications for alerts"
msgstr "Add a mobile device to receive push notifications for alerts"
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:45
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:47
#, elixir-autogen, elixir-format
msgid "Alert Notification Devices"
msgstr "Alert Notification Devices"
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:110
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:114
#, elixir-autogen, elixir-format
msgid "Alerts Off"
msgstr "Alerts Off"
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:108
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:112
#, elixir-autogen, elixir-format
msgid "Alerts On"
msgstr "Alerts On"
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:125
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:129
#, elixir-autogen, elixir-format
msgid "Are you sure you want to remove this device?"
msgstr "Are you sure you want to remove this device?"
@ -415,13 +375,13 @@ msgstr "Are you sure you want to remove this device?"
msgid "Authentication Code"
msgstr "Authentication Code"
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:14
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:15
#, elixir-autogen, elixir-format
msgid "Change Email"
msgstr "Change Email"
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:14
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:36
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:38
#, elixir-autogen, elixir-format
msgid "Changing..."
msgstr "Changing..."
@ -442,7 +402,7 @@ msgstr "Confirm and stay logged in"
msgid "Confirming..."
msgstr "Confirming..."
#: lib/towerops_web/controllers/user_session_html/new.html.heex:114
#: lib/towerops_web/controllers/user_session_html/new.html.heex:158
#, elixir-autogen, elixir-format
msgid "Didn't receive confirmation instructions?"
msgstr "Didn't receive confirmation instructions?"
@ -467,7 +427,7 @@ msgstr "Enter the 6-digit code from your authenticator app, or use a recovery co
msgid "Enter the 6-digit code from your authenticator app. Recovery codes are not allowed for sensitive operations."
msgstr "Enter the 6-digit code from your authenticator app. Recovery codes are not allowed for sensitive operations."
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:76
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:78
#, elixir-autogen, elixir-format
msgid "Last used %{date}"
msgstr "Last used %{date}"
@ -489,7 +449,7 @@ msgstr "Log in only this time"
msgid "Logging in..."
msgstr "Logging in..."
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:48
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:50
#, elixir-autogen, elixir-format
msgid "Manage mobile devices that receive push notifications for alerts"
msgstr "Manage mobile devices that receive push notifications for alerts"
@ -499,7 +459,7 @@ msgstr "Manage mobile devices that receive push notifications for alerts"
msgid "Manage your account email address and password settings"
msgstr "Manage your account email address and password settings"
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:56
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:58
#, elixir-autogen, elixir-format
msgid "No mobile devices registered"
msgstr "No mobile devices registered"
@ -514,7 +474,7 @@ msgstr "Re-authenticate"
msgid "Register"
msgstr "Register"
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:128
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:132
#, elixir-autogen, elixir-format
msgid "Remove"
msgstr "Remove"
@ -525,7 +485,7 @@ msgstr "Remove"
msgid "Resend confirmation instructions"
msgstr "Resend confirmation instructions"
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:37
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:39
#, elixir-autogen, elixir-format
msgid "Save Password"
msgstr "Save Password"
@ -535,23 +495,18 @@ msgstr "Save Password"
msgid "Tip: If you prefer passwords, you can enable them in the user settings."
msgstr "Tip: If you prefer passwords, you can enable them in the user settings."
#: lib/towerops_web/controllers/user_session_html/new.html.heex:37
#, elixir-autogen, elixir-format, fuzzy
msgid "To see sent emails, visit"
msgstr "To see sent emails, visit %{link}."
#: lib/towerops_web/controllers/user_session_html/totp.html.heex:5
#, elixir-autogen, elixir-format
msgid "Two-Factor Authentication"
msgstr "Two-Factor Authentication"
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:70
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:72
#, elixir-autogen, elixir-format
msgid "Unknown Device"
msgstr "Unknown Device"
#: lib/towerops_web/controllers/user_session_html/totp.html.heex:31
#: lib/towerops_web/controllers/user_sudo_html/verify.html.heex:31
#: lib/towerops_web/controllers/user_session_html/totp.html.heex:33
#: lib/towerops_web/controllers/user_sudo_html/verify.html.heex:33
#, elixir-autogen, elixir-format
msgid "Verify"
msgstr "Verify"
@ -561,12 +516,37 @@ msgstr "Verify"
msgid "Welcome %{email}"
msgstr "Welcome %{email}"
#: lib/towerops_web/controllers/user_session_html/totp.html.heex:41
#: lib/towerops_web/controllers/user_session_html/totp.html.heex:43
#, elixir-autogen, elixir-format, fuzzy
msgid "← Back to login"
msgstr "Back to log in"
#: lib/towerops_web/controllers/user_sudo_html/verify.html.heex:42
#: lib/towerops_web/controllers/user_sudo_html/verify.html.heex:44
#, elixir-autogen, elixir-format
msgid "← Log out instead"
msgstr "← Log out instead"
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:53
#, elixir-autogen, elixir-format, fuzzy
msgid "Create your account"
msgstr "Create an account"
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:72
#, elixir-autogen, elixir-format
msgid "First 10 devices free — no credit card needed"
msgstr ""
#: lib/towerops_web/controllers/user_session_html/new.html.heex:109
#, elixir-autogen, elixir-format
msgid "Remember me"
msgstr ""
#: lib/towerops_web/controllers/user_session_html/new.html.heex:68
#, elixir-autogen, elixir-format, fuzzy
msgid "To see sent emails, visit %{link}."
msgstr "To see sent emails, visit %{link}."
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:134
#, elixir-autogen, elixir-format
msgid "Use 12+ characters for a strong password"
msgstr ""

File diff suppressed because it is too large Load diff

View file

@ -26,7 +26,7 @@ msgstr "Device created. SNMP discovery started. "
msgid "Device deleted successfully"
msgstr "Device deleted successfully"
#: lib/towerops_web/live/device_live/show.ex:1379
#: lib/towerops_web/live/device_live/show.ex:1394
#, elixir-autogen, elixir-format
msgid "Device has no agent assigned. Assign an agent to create backups."
msgstr "Device has no agent assigned. Assign an agent to create backups."
@ -37,13 +37,13 @@ msgid "Device no longer exists"
msgstr "Device no longer exists"
#: lib/towerops_web/live/device_live/form.ex:109
#: lib/towerops_web/live/device_live/index.ex:147
#: lib/towerops_web/live/device_live/index.ex:167
#: lib/towerops_web/live/device_live/show.ex:90
#, elixir-autogen, elixir-format
msgid "Device not found"
msgstr "Device not found"
#: lib/towerops_web/live/device_live/index.ex:215
#: lib/towerops_web/live/device_live/index.ex:235
#, elixir-autogen, elixir-format
msgid "Device order updated"
msgstr "Device order updated"
@ -68,8 +68,8 @@ msgstr "Devices"
msgid "Discovery completed"
msgstr "Discovery completed"
#: lib/towerops_web/live/device_live/index.ex:114
#: lib/towerops_web/live/site_live/show.ex:75
#: lib/towerops_web/live/device_live/index.ex:134
#: lib/towerops_web/live/site_live/show.ex:92
#, elixir-autogen, elixir-format
msgid "Discovery started for %{count} device"
msgstr "Discovery started for %{count} device"
@ -79,37 +79,37 @@ msgstr "Discovery started for %{count} device"
msgid "Discovery started..."
msgstr "Discovery started..."
#: lib/towerops_web/live/device_live/show.ex:1462
#: lib/towerops_web/live/device_live/show.ex:1477
#, elixir-autogen, elixir-format
msgid "Failed to create backup request. Please try again."
msgstr "Failed to create backup request. Please try again."
#: lib/towerops_web/live/device_live/index.ex:228
#: lib/towerops_web/live/device_live/index.ex:248
#, elixir-autogen, elixir-format
msgid "Failed to reorder device"
msgstr "Failed to reorder device"
#: lib/towerops_web/live/device_live/index.ex:227
#: lib/towerops_web/live/device_live/index.ex:247
#, elixir-autogen, elixir-format
msgid "Failed to reorder site"
msgstr "Failed to reorder site"
#: lib/towerops_web/live/device_live/show.ex:1458
#: lib/towerops_web/live/device_live/show.ex:1473
#, elixir-autogen, elixir-format
msgid "Manual backup requested. Results will appear shortly."
msgstr "Manual backup requested. Results will appear shortly."
#: lib/towerops_web/live/device_live/show.ex:1382
#: lib/towerops_web/live/device_live/show.ex:1397
#, elixir-autogen, elixir-format
msgid "MikroTik API is not enabled for this device."
msgstr "MikroTik API is not enabled for this device."
#: lib/towerops_web/live/device_live/index.ex:107
#: lib/towerops_web/live/device_live/index.ex:127
#, elixir-autogen, elixir-format
msgid "No SNMP-enabled devices found"
msgstr "No SNMP-enabled devices found"
#: lib/towerops_web/live/device_live/index.ex:178
#: lib/towerops_web/live/device_live/index.ex:198
#, elixir-autogen, elixir-format
msgid "Order reset to alphabetical"
msgstr "Order reset to alphabetical"
@ -119,12 +119,12 @@ msgstr "Order reset to alphabetical"
msgid "SNMP is not enabled for this device"
msgstr "SNMP is not enabled for this device"
#: lib/towerops_web/live/device_live/index.ex:130
#: lib/towerops_web/live/device_live/index.ex:150
#, elixir-autogen, elixir-format
msgid "Site not found"
msgstr "Site not found"
#: lib/towerops_web/live/device_live/index.ex:214
#: lib/towerops_web/live/device_live/index.ex:234
#, elixir-autogen, elixir-format
msgid "Site order updated"
msgstr "Site order updated"
@ -135,30 +135,30 @@ msgid "Unable to delete device"
msgstr "Unable to delete device"
#: lib/towerops_web/live/device_live/form.ex:114
#: lib/towerops_web/live/device_live/index.ex:150
#: lib/towerops_web/live/device_live/index.ex:170
#: lib/towerops_web/live/device_live/show.ex:96
#, elixir-autogen, elixir-format
msgid "You don't have access to this device"
msgstr "You don't have access to this device"
#: lib/towerops_web/live/device_live/index.ex:133
#: lib/towerops_web/live/device_live/index.ex:153
#, elixir-autogen, elixir-format
msgid "You don't have access to this site"
msgstr "You don't have access to this site"
#: lib/towerops_web/live/device_live/show.ex:1304
#: lib/towerops_web/live/device_live/show.ex:1486
#: lib/towerops_web/live/device_live/show.ex:1319
#: lib/towerops_web/live/device_live/show.ex:1501
#, elixir-autogen, elixir-format
msgid "You don't have permission to access this backup"
msgstr "You don't have permission to access this backup"
#: lib/towerops_web/live/alert_live/index.ex:102
#: lib/towerops_web/live/alert_live/index.ex:171
#, elixir-autogen, elixir-format
msgid "Alert acknowledged"
msgstr "Alert acknowledged"
#: lib/towerops_web/live/alert_live/index.ex:55
#: lib/towerops_web/live/alert_live/index.ex:79
#: lib/towerops_web/live/alert_live/index.ex:58
#: lib/towerops_web/live/alert_live/index.ex:82
#, elixir-autogen, elixir-format, fuzzy
msgid "Alert not found"
msgstr "Site not found"
@ -173,7 +173,7 @@ msgstr "Applied SNMP configuration to %{count} device records at this site"
msgid "Applied agent to %{count} device records at this site"
msgstr "Applied agent to %{count} device records at this site"
#: lib/towerops_web/live/site_live/show.ex:65
#: lib/towerops_web/live/site_live/show.ex:82
#, elixir-autogen, elixir-format, fuzzy
msgid "No SNMP-enabled devices at this site"
msgstr "No SNMP-enabled devices found"
@ -193,7 +193,7 @@ msgstr "Device deleted successfully"
msgid "Site updated successfully"
msgstr "Device updated successfully"
#: lib/towerops_web/live/alert_live/index.ex:106
#: lib/towerops_web/live/alert_live/index.ex:175
#, elixir-autogen, elixir-format
msgid "Unable to acknowledge alert"
msgstr "Unable to acknowledge alert"
@ -203,18 +203,18 @@ msgstr "Unable to acknowledge alert"
msgid "Unable to delete site"
msgstr "Unable to delete device"
#: lib/towerops_web/live/alert_live/index.ex:58
#: lib/towerops_web/live/alert_live/index.ex:82
#: lib/towerops_web/live/alert_live/index.ex:61
#: lib/towerops_web/live/alert_live/index.ex:85
#, elixir-autogen, elixir-format, fuzzy
msgid "You don't have access to this alert"
msgstr "You don't have access to this site"
#: lib/towerops_web/live/agent_live/index.ex:339
#: lib/towerops_web/live/agent_live/index.ex:342
#, elixir-autogen, elixir-format
msgid "Agent created successfully"
msgstr "Agent created successfully"
#: lib/towerops_web/live/agent_live/index.ex:215
#: lib/towerops_web/live/agent_live/index.ex:218
#, elixir-autogen, elixir-format
msgid "Agent deleted successfully. Devices now fall back to site/org defaults or cloud polling."
msgstr "Agent deleted successfully. Devices now fall back to site/org defaults or cloud polling."
@ -224,97 +224,97 @@ msgstr "Agent deleted successfully. Devices now fall back to site/org defaults o
msgid "Agent updated successfully"
msgstr "Device updated successfully"
#: lib/towerops_web/live/agent_live/index.ex:338
#: lib/towerops_web/live/agent_live/index.ex:341
#, elixir-autogen, elixir-format
msgid "Cloud poller created successfully"
msgstr "Cloud poller created successfully"
#: lib/towerops_web/live/agent_live/index.ex:106
#: lib/towerops_web/live/agent_live/index.ex:109
#, elixir-autogen, elixir-format
msgid "Failed to create agent"
msgstr "Failed to create agent"
#: lib/towerops_web/live/agent_live/index.ex:105
#: lib/towerops_web/live/agent_live/index.ex:108
#, elixir-autogen, elixir-format
msgid "Failed to create cloud poller"
msgstr "Failed to create cloud poller"
#: lib/towerops_web/live/agent_live/index.ex:219
#: lib/towerops_web/live/agent_live/index.ex:222
#, elixir-autogen, elixir-format
msgid "Failed to delete agent"
msgstr "Failed to delete agent"
#: lib/towerops_web/live/agent_live/index.ex:151
#: lib/towerops_web/live/agent_live/index.ex:154
#, elixir-autogen, elixir-format
msgid "Failed to generate new token"
msgstr "Failed to generate new token"
#: lib/towerops_web/live/agent_live/index.ex:155
#: lib/towerops_web/live/agent_live/index.ex:158
#, elixir-autogen, elixir-format, fuzzy
msgid "Failed to revoke old token"
msgstr "Failed to reorder site"
#: lib/towerops_web/live/agent_live/index.ex:248
#: lib/towerops_web/live/agent_live/index.ex:251
#, elixir-autogen, elixir-format
msgid "Failed to update global default cloud poller"
msgstr "Failed to update global default cloud poller"
#: lib/towerops_web/live/agent_live/index.ex:367
#: lib/towerops_web/live/agent_live/index.ex:370
#, elixir-autogen, elixir-format
msgid "Global default cloud poller cleared"
msgstr "Global default cloud poller cleared"
#: lib/towerops_web/live/agent_live/index.ex:366
#: lib/towerops_web/live/agent_live/index.ex:369
#, elixir-autogen, elixir-format
msgid "Global default cloud poller set successfully"
msgstr "Global default cloud poller set successfully"
#: lib/towerops_web/live/agent_live/index.ex:148
#: lib/towerops_web/live/agent_live/index.ex:151
#, elixir-autogen, elixir-format
msgid "New token generated successfully"
msgstr "New token generated successfully"
#: lib/towerops_web/live/agent_live/index.ex:100
#: lib/towerops_web/live/agent_live/index.ex:103
#, elixir-autogen, elixir-format
msgid "Only superadmins can create cloud pollers"
msgstr "Only superadmins can create cloud pollers"
#: lib/towerops_web/live/agent_live/index.ex:251
#: lib/towerops_web/live/agent_live/index.ex:254
#, elixir-autogen, elixir-format
msgid "Only superadmins can set the global default cloud poller"
msgstr "Only superadmins can set the global default cloud poller"
#: lib/towerops_web/live/agent_live/index.ex:245
#: lib/towerops_web/live/agent_live/index.ex:248
#, elixir-autogen, elixir-format
msgid "Selected agent no longer exists. Please choose another agent."
msgstr "Selected agent no longer exists. Please choose another agent."
#: lib/towerops_web/live/alert_live/index.ex:71
#: lib/towerops_web/live/alert_live/index.ex:74
#, elixir-autogen, elixir-format
msgid "Alert resolved"
msgstr "Alert resolved"
#: lib/towerops_web/live/device_live/show.ex:1478
#: lib/towerops_web/live/device_live/show.ex:1493
#, elixir-autogen, elixir-format, fuzzy
msgid "Backup deleted successfully"
msgstr "Device updated successfully"
#: lib/towerops_web/live/device_live/show.ex:1482
#: lib/towerops_web/live/device_live/show.ex:1497
#, elixir-autogen, elixir-format
msgid "Failed to delete backup"
msgstr "Failed to delete backup"
#: lib/towerops_web/live/device_live/show.ex:1367
#: lib/towerops_web/live/device_live/show.ex:1382
#, elixir-autogen, elixir-format
msgid "Only organization owners can delete backups"
msgstr "Only organization owners can delete backups"
#: lib/towerops_web/live/device_live/show.ex:1340
#: lib/towerops_web/live/device_live/show.ex:1355
#, elixir-autogen, elixir-format
msgid "Please select exactly 2 backups to compare"
msgstr "Please select exactly 2 backups to compare"
#: lib/towerops_web/live/alert_live/index.ex:75
#: lib/towerops_web/live/alert_live/index.ex:78
#, elixir-autogen, elixir-format, fuzzy
msgid "Unable to resolve alert"
msgstr "Unable to acknowledge alert"

View file

@ -29,7 +29,7 @@ msgstr ""
msgid "Device deleted successfully"
msgstr ""
#: lib/towerops_web/live/device_live/show.ex:1379
#: lib/towerops_web/live/device_live/show.ex:1394
#, elixir-autogen, elixir-format
msgid "Device has no agent assigned. Assign an agent to create backups."
msgstr ""
@ -40,13 +40,13 @@ msgid "Device no longer exists"
msgstr ""
#: lib/towerops_web/live/device_live/form.ex:109
#: lib/towerops_web/live/device_live/index.ex:147
#: lib/towerops_web/live/device_live/index.ex:167
#: lib/towerops_web/live/device_live/show.ex:90
#, elixir-autogen, elixir-format
msgid "Device not found"
msgstr ""
#: lib/towerops_web/live/device_live/index.ex:215
#: lib/towerops_web/live/device_live/index.ex:235
#, elixir-autogen, elixir-format
msgid "Device order updated"
msgstr ""
@ -71,8 +71,8 @@ msgstr ""
msgid "Discovery completed"
msgstr ""
#: lib/towerops_web/live/device_live/index.ex:114
#: lib/towerops_web/live/site_live/show.ex:75
#: lib/towerops_web/live/device_live/index.ex:134
#: lib/towerops_web/live/site_live/show.ex:92
#, elixir-autogen, elixir-format
msgid "Discovery started for %{count} device"
msgstr ""
@ -82,37 +82,37 @@ msgstr ""
msgid "Discovery started..."
msgstr ""
#: lib/towerops_web/live/device_live/show.ex:1462
#: lib/towerops_web/live/device_live/show.ex:1477
#, elixir-autogen, elixir-format
msgid "Failed to create backup request. Please try again."
msgstr ""
#: lib/towerops_web/live/device_live/index.ex:228
#: lib/towerops_web/live/device_live/index.ex:248
#, elixir-autogen, elixir-format
msgid "Failed to reorder device"
msgstr ""
#: lib/towerops_web/live/device_live/index.ex:227
#: lib/towerops_web/live/device_live/index.ex:247
#, elixir-autogen, elixir-format
msgid "Failed to reorder site"
msgstr ""
#: lib/towerops_web/live/device_live/show.ex:1458
#: lib/towerops_web/live/device_live/show.ex:1473
#, elixir-autogen, elixir-format
msgid "Manual backup requested. Results will appear shortly."
msgstr ""
#: lib/towerops_web/live/device_live/show.ex:1382
#: lib/towerops_web/live/device_live/show.ex:1397
#, elixir-autogen, elixir-format
msgid "MikroTik API is not enabled for this device."
msgstr ""
#: lib/towerops_web/live/device_live/index.ex:107
#: lib/towerops_web/live/device_live/index.ex:127
#, elixir-autogen, elixir-format
msgid "No SNMP-enabled devices found"
msgstr ""
#: lib/towerops_web/live/device_live/index.ex:178
#: lib/towerops_web/live/device_live/index.ex:198
#, elixir-autogen, elixir-format
msgid "Order reset to alphabetical"
msgstr ""
@ -122,12 +122,12 @@ msgstr ""
msgid "SNMP is not enabled for this device"
msgstr ""
#: lib/towerops_web/live/device_live/index.ex:130
#: lib/towerops_web/live/device_live/index.ex:150
#, elixir-autogen, elixir-format
msgid "Site not found"
msgstr ""
#: lib/towerops_web/live/device_live/index.ex:214
#: lib/towerops_web/live/device_live/index.ex:234
#, elixir-autogen, elixir-format
msgid "Site order updated"
msgstr ""
@ -138,30 +138,30 @@ msgid "Unable to delete device"
msgstr ""
#: lib/towerops_web/live/device_live/form.ex:114
#: lib/towerops_web/live/device_live/index.ex:150
#: lib/towerops_web/live/device_live/index.ex:170
#: lib/towerops_web/live/device_live/show.ex:96
#, elixir-autogen, elixir-format
msgid "You don't have access to this device"
msgstr ""
#: lib/towerops_web/live/device_live/index.ex:133
#: lib/towerops_web/live/device_live/index.ex:153
#, elixir-autogen, elixir-format
msgid "You don't have access to this site"
msgstr ""
#: lib/towerops_web/live/device_live/show.ex:1304
#: lib/towerops_web/live/device_live/show.ex:1486
#: lib/towerops_web/live/device_live/show.ex:1319
#: lib/towerops_web/live/device_live/show.ex:1501
#, elixir-autogen, elixir-format
msgid "You don't have permission to access this backup"
msgstr ""
#: lib/towerops_web/live/alert_live/index.ex:102
#: lib/towerops_web/live/alert_live/index.ex:171
#, elixir-autogen, elixir-format
msgid "Alert acknowledged"
msgstr ""
#: lib/towerops_web/live/alert_live/index.ex:55
#: lib/towerops_web/live/alert_live/index.ex:79
#: lib/towerops_web/live/alert_live/index.ex:58
#: lib/towerops_web/live/alert_live/index.ex:82
#, elixir-autogen, elixir-format
msgid "Alert not found"
msgstr ""
@ -176,7 +176,7 @@ msgstr ""
msgid "Applied agent to %{count} device records at this site"
msgstr ""
#: lib/towerops_web/live/site_live/show.ex:65
#: lib/towerops_web/live/site_live/show.ex:82
#, elixir-autogen, elixir-format
msgid "No SNMP-enabled devices at this site"
msgstr ""
@ -196,7 +196,7 @@ msgstr ""
msgid "Site updated successfully"
msgstr ""
#: lib/towerops_web/live/alert_live/index.ex:106
#: lib/towerops_web/live/alert_live/index.ex:175
#, elixir-autogen, elixir-format
msgid "Unable to acknowledge alert"
msgstr ""
@ -206,18 +206,18 @@ msgstr ""
msgid "Unable to delete site"
msgstr ""
#: lib/towerops_web/live/alert_live/index.ex:58
#: lib/towerops_web/live/alert_live/index.ex:82
#: lib/towerops_web/live/alert_live/index.ex:61
#: lib/towerops_web/live/alert_live/index.ex:85
#, elixir-autogen, elixir-format
msgid "You don't have access to this alert"
msgstr ""
#: lib/towerops_web/live/agent_live/index.ex:339
#: lib/towerops_web/live/agent_live/index.ex:342
#, elixir-autogen, elixir-format
msgid "Agent created successfully"
msgstr ""
#: lib/towerops_web/live/agent_live/index.ex:215
#: lib/towerops_web/live/agent_live/index.ex:218
#, elixir-autogen, elixir-format
msgid "Agent deleted successfully. Devices now fall back to site/org defaults or cloud polling."
msgstr ""
@ -227,97 +227,97 @@ msgstr ""
msgid "Agent updated successfully"
msgstr ""
#: lib/towerops_web/live/agent_live/index.ex:338
#: lib/towerops_web/live/agent_live/index.ex:341
#, elixir-autogen, elixir-format
msgid "Cloud poller created successfully"
msgstr ""
#: lib/towerops_web/live/agent_live/index.ex:106
#: lib/towerops_web/live/agent_live/index.ex:109
#, elixir-autogen, elixir-format
msgid "Failed to create agent"
msgstr ""
#: lib/towerops_web/live/agent_live/index.ex:105
#: lib/towerops_web/live/agent_live/index.ex:108
#, elixir-autogen, elixir-format
msgid "Failed to create cloud poller"
msgstr ""
#: lib/towerops_web/live/agent_live/index.ex:219
#: lib/towerops_web/live/agent_live/index.ex:222
#, elixir-autogen, elixir-format
msgid "Failed to delete agent"
msgstr ""
#: lib/towerops_web/live/agent_live/index.ex:151
#: lib/towerops_web/live/agent_live/index.ex:154
#, elixir-autogen, elixir-format
msgid "Failed to generate new token"
msgstr ""
#: lib/towerops_web/live/agent_live/index.ex:155
#: lib/towerops_web/live/agent_live/index.ex:158
#, elixir-autogen, elixir-format
msgid "Failed to revoke old token"
msgstr ""
#: lib/towerops_web/live/agent_live/index.ex:248
#: lib/towerops_web/live/agent_live/index.ex:251
#, elixir-autogen, elixir-format
msgid "Failed to update global default cloud poller"
msgstr ""
#: lib/towerops_web/live/agent_live/index.ex:367
#: lib/towerops_web/live/agent_live/index.ex:370
#, elixir-autogen, elixir-format
msgid "Global default cloud poller cleared"
msgstr ""
#: lib/towerops_web/live/agent_live/index.ex:366
#: lib/towerops_web/live/agent_live/index.ex:369
#, elixir-autogen, elixir-format
msgid "Global default cloud poller set successfully"
msgstr ""
#: lib/towerops_web/live/agent_live/index.ex:148
#: lib/towerops_web/live/agent_live/index.ex:151
#, elixir-autogen, elixir-format
msgid "New token generated successfully"
msgstr ""
#: lib/towerops_web/live/agent_live/index.ex:100
#: lib/towerops_web/live/agent_live/index.ex:103
#, elixir-autogen, elixir-format
msgid "Only superadmins can create cloud pollers"
msgstr ""
#: lib/towerops_web/live/agent_live/index.ex:251
#: lib/towerops_web/live/agent_live/index.ex:254
#, elixir-autogen, elixir-format
msgid "Only superadmins can set the global default cloud poller"
msgstr ""
#: lib/towerops_web/live/agent_live/index.ex:245
#: lib/towerops_web/live/agent_live/index.ex:248
#, elixir-autogen, elixir-format
msgid "Selected agent no longer exists. Please choose another agent."
msgstr ""
#: lib/towerops_web/live/alert_live/index.ex:71
#: lib/towerops_web/live/alert_live/index.ex:74
#, elixir-autogen, elixir-format
msgid "Alert resolved"
msgstr ""
#: lib/towerops_web/live/device_live/show.ex:1478
#: lib/towerops_web/live/device_live/show.ex:1493
#, elixir-autogen, elixir-format
msgid "Backup deleted successfully"
msgstr ""
#: lib/towerops_web/live/device_live/show.ex:1482
#: lib/towerops_web/live/device_live/show.ex:1497
#, elixir-autogen, elixir-format
msgid "Failed to delete backup"
msgstr ""
#: lib/towerops_web/live/device_live/show.ex:1367
#: lib/towerops_web/live/device_live/show.ex:1382
#, elixir-autogen, elixir-format
msgid "Only organization owners can delete backups"
msgstr ""
#: lib/towerops_web/live/device_live/show.ex:1340
#: lib/towerops_web/live/device_live/show.ex:1355
#, elixir-autogen, elixir-format
msgid "Please select exactly 2 backups to compare"
msgstr ""
#: lib/towerops_web/live/alert_live/index.ex:75
#: lib/towerops_web/live/alert_live/index.ex:78
#, elixir-autogen, elixir-format
msgid "Unable to resolve alert"
msgstr ""

View file

@ -21,7 +21,7 @@ msgstr "No se pudo eliminar la organización"
msgid "Failed to delete user"
msgstr "No se pudo eliminar el usuario"
#: lib/towerops_web/user_auth.ex:859
#: lib/towerops_web/user_auth.ex:876
#, elixir-autogen, elixir-format
msgid "Now impersonating %{email}"
msgstr "Ahora estás suplantando a %{email}"
@ -31,7 +31,7 @@ msgstr "Ahora estás suplantando a %{email}"
msgid "Organization deleted successfully"
msgstr "Organización eliminada correctamente"
#: lib/towerops_web/user_auth.ex:892
#: lib/towerops_web/user_auth.ex:909
#, elixir-autogen, elixir-format
msgid "Stopped impersonating"
msgstr "Suplantación finalizada"
@ -41,7 +41,7 @@ msgstr "Suplantación finalizada"
msgid "User deleted successfully"
msgstr "Usuario eliminado correctamente"
#: lib/towerops_web/user_auth.ex:837
#: lib/towerops_web/user_auth.ex:854
#, elixir-autogen, elixir-format
msgid "You cannot impersonate yourself."
msgstr "No puedes suplantarte a ti mismo."

View file

@ -11,12 +11,12 @@ msgstr ""
"Language: es\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:133
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:203
#, elixir-autogen, elixir-format
msgid "Accept invitation and create account"
msgstr "Aceptar invitación y crear cuenta"
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:11
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:57
#, elixir-autogen, elixir-format
msgid "Already registered?"
msgstr "¿Ya tienes cuenta?"
@ -28,31 +28,31 @@ msgid "Back to log in"
msgstr "Volver a iniciar sesión"
#: lib/towerops_web/controllers/user_reset_password_html/edit.html.heex:25
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:32
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:34
#, elixir-autogen, elixir-format
msgid "Confirm new password"
msgstr "Confirmar nueva contraseña"
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:134
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:204
#, elixir-autogen, elixir-format
msgid "Create an account"
msgstr "Crear una cuenta"
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:128
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:198
#, elixir-autogen, elixir-format
msgid "Creating account..."
msgstr "Creando cuenta..."
#: lib/towerops_web/controllers/user_session_html/new.html.heex:10
#: lib/towerops_web/controllers/user_session_html/new.html.heex:43
#, elixir-autogen, elixir-format
msgid "Don't have an account?"
msgstr "¿No tienes cuenta?"
#: lib/towerops_web/controllers/user_confirmation_html/new.html.heex:6
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:55
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:97
#: lib/towerops_web/controllers/user_reset_password_html/new.html.heex:17
#: lib/towerops_web/controllers/user_session_html/new.html.heex:54
#: lib/towerops_web/controllers/user_session_html/new.html.heex:100
#: lib/towerops_web/controllers/user_session_html/new.html.heex:88
#: lib/towerops_web/controllers/user_session_html/new.html.heex:143
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:12
#, elixir-autogen, elixir-format
msgid "Email"
@ -68,7 +68,7 @@ msgstr "Ingresa tu correo electrónico y te enviaremos un enlace para restablece
msgid "Enter your new password below."
msgstr "Ingresa tu nueva contraseña a continuación."
#: lib/towerops_web/controllers/user_session_html/new.html.heex:72
#: lib/towerops_web/controllers/user_session_html/new.html.heex:115
#, elixir-autogen, elixir-format
msgid "Forgot password?"
msgstr "¿Olvidaste tu contraseña?"
@ -78,70 +78,60 @@ msgstr "¿Olvidaste tu contraseña?"
msgid "Forgot your password?"
msgstr "¿Olvidaste tu contraseña?"
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:34
#, elixir-autogen, elixir-format
msgid "Free tier includes:"
msgstr "El plan gratuito incluye:"
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:92
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:115
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:162
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:185
#, elixir-autogen, elixir-format
msgid "I agree to the %{link}"
msgstr "Acepto los %{link}"
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:6
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:51
#, elixir-autogen, elixir-format
msgid "Join %{organization}"
msgstr "Unirte a %{organization}"
#: lib/towerops_web/controllers/user_confirmation_html/new.html.heex:11
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:16
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:62
#: lib/towerops_web/controllers/user_session_html/confirm.html.heex:42
#: lib/towerops_web/controllers/user_session_html/new.html.heex:5
#: lib/towerops_web/controllers/user_session_html/new.html.heex:77
#: lib/towerops_web/controllers/user_session_html/new.html.heex:37
#: lib/towerops_web/controllers/user_session_html/new.html.heex:120
#, elixir-autogen, elixir-format
msgid "Log in"
msgstr "Iniciar sesión"
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:74
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:144
#, elixir-autogen, elixir-format
msgid "My Company"
msgstr "Mi Empresa"
#: lib/towerops_web/controllers/user_reset_password_html/edit.html.heex:17
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:25
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:27
#, elixir-autogen, elixir-format
msgid "New password"
msgstr "Nueva contraseña"
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:73
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:143
#, elixir-autogen, elixir-format
msgid "Organization Name"
msgstr "Nombre de la organización"
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:63
#: lib/towerops_web/controllers/user_session_html/new.html.heex:63
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:105
#: lib/towerops_web/controllers/user_session_html/new.html.heex:97
#, elixir-autogen, elixir-format
msgid "Password"
msgstr "Contraseña"
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:95
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:165
#, elixir-autogen, elixir-format
msgid "Privacy Policy"
msgstr "Política de privacidad"
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:8
#, elixir-autogen, elixir-format
msgid "Register for an account"
msgstr "Registrar una cuenta"
#: lib/towerops_web/controllers/user_reset_password_html/edit.html.heex:5
#: lib/towerops_web/controllers/user_reset_password_html/edit.html.heex:31
#, elixir-autogen, elixir-format
msgid "Reset password"
msgstr "Restablecer contraseña"
#: lib/towerops_web/controllers/user_session_html/new.html.heex:105
#: lib/towerops_web/controllers/user_session_html/new.html.heex:149
#, elixir-autogen, elixir-format
msgid "Send me a login link instead"
msgstr "Envíame un enlace de inicio de sesión"
@ -151,66 +141,36 @@ msgstr "Envíame un enlace de inicio de sesión"
msgid "Send reset instructions"
msgstr "Enviar instrucciones"
#: lib/towerops_web/controllers/user_session_html/new.html.heex:15
#: lib/towerops_web/controllers/user_session_html/new.html.heex:48
#, elixir-autogen, elixir-format
msgid "Sign up"
msgstr "Registrarse"
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:118
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:188
#, elixir-autogen, elixir-format
msgid "Terms of Service"
msgstr "Términos de servicio"
#: lib/towerops_web/controllers/user_session_html/new.html.heex:34
#: lib/towerops_web/controllers/user_session_html/new.html.heex:65
#, elixir-autogen, elixir-format
msgid "You are running the local mail adapter."
msgstr "Estás usando el adaptador de correo local."
#: lib/towerops_web/controllers/user_session_html/new.html.heex:8
#: lib/towerops_web/controllers/user_session_html/new.html.heex:41
#, elixir-autogen, elixir-format
msgid "You need to reauthenticate to perform sensitive actions on your account."
msgstr "Necesitas volver a autenticarte para realizar acciones sensibles en tu cuenta."
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:25
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:80
#, elixir-autogen, elixir-format
msgid "You've been invited to join %{organization} as a %{role}."
msgstr "Te han invitado a unirte a %{organization} como %{role}."
#: lib/towerops_web/controllers/user_session_html/new.html.heex:17
#, elixir-autogen, elixir-format
msgid "for an account now."
msgstr "para crear una cuenta."
#: lib/towerops_web/controllers/user_session_html/new.html.heex:39
#: lib/towerops_web/controllers/user_session_html/new.html.heex:68
#, elixir-autogen, elixir-format
msgid "the mailbox page"
msgstr "la página de correos"
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:18
#, elixir-autogen, elixir-format
msgid "to your account now."
msgstr "a tu cuenta ahora."
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:37
#, elixir-autogen, elixir-format
msgid "✓ Monitor up to 10 devices"
msgstr "✓ Monitorea hasta 10 dispositivos"
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:40
#, elixir-autogen, elixir-format
msgid "✓ No credit card required"
msgstr "✓ No se requiere tarjeta de crédito"
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:39
#, elixir-autogen, elixir-format
msgid "✓ Performance charts and historical data"
msgstr "✓ Gráficos de rendimiento y datos históricos"
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:38
#, elixir-autogen, elixir-format
msgid "✓ Real-time alerts and notifications"
msgstr "✓ Alertas y notificaciones en tiempo real"
#: lib/towerops_web/live/user_settings_live/session_manager.ex:35
#, elixir-autogen, elixir-format
msgid "Alerts disabled for device"
@ -236,55 +196,55 @@ msgstr "No se pudo actualizar las preferencias de alertas."
msgid "Mobile device removed successfully."
msgstr "Dispositivo móvil eliminado correctamente."
#: lib/towerops_web/user_auth.ex:440
#: lib/towerops_web/user_auth.ex:447
#: lib/towerops_web/user_auth.ex:512
#: lib/towerops_web/user_auth.ex:521
#: lib/towerops_web/user_auth.ex:452
#: lib/towerops_web/user_auth.ex:459
#: lib/towerops_web/user_auth.ex:526
#: lib/towerops_web/user_auth.ex:535
#, elixir-autogen, elixir-format
msgid "Organization not found."
msgstr "Organización no encontrada."
#: lib/towerops_web/user_auth.ex:292
#: lib/towerops_web/user_auth.ex:571
#: lib/towerops_web/user_auth.ex:585
#, elixir-autogen, elixir-format
msgid "Please verify your identity to continue."
msgstr "Verifica tu identidad para continuar."
#: lib/towerops_web/user_auth.ex:659
#: lib/towerops_web/user_auth.ex:673
#, elixir-autogen, elixir-format
msgid "Thank you for accepting the updated policies."
msgstr "Gracias por aceptar las políticas actualizadas."
#: lib/towerops_web/user_auth.ex:299
#: lib/towerops_web/user_auth.ex:579
#: lib/towerops_web/user_auth.ex:593
#, elixir-autogen, elixir-format
msgid "Two-factor authentication is required for this action."
msgstr "Se requiere autenticación de dos factores para esta acción."
#: lib/towerops_web/user_auth.ex:434
#: lib/towerops_web/user_auth.ex:504
#: lib/towerops_web/user_auth.ex:446
#: lib/towerops_web/user_auth.ex:518
#, elixir-autogen, elixir-format
msgid "You don't have access to this organization."
msgstr "No tienes acceso a esta organización."
#: lib/towerops_web/user_auth.ex:365
#: lib/towerops_web/user_auth.ex:550
#: lib/towerops_web/user_auth.ex:374
#: lib/towerops_web/user_auth.ex:564
#, elixir-autogen, elixir-format
msgid "You must be a superuser to access this page."
msgstr "Debes ser superusuario para acceder a esta página."
#: lib/towerops_web/user_auth.ex:618
#: lib/towerops_web/user_auth.ex:632
#, elixir-autogen, elixir-format
msgid "You must be an organization owner to access this page."
msgstr "Debes ser propietario de la organización para acceder a esta página."
#: lib/towerops_web/user_auth.ex:348
#: lib/towerops_web/user_auth.ex:482
#: lib/towerops_web/user_auth.ex:357
#: lib/towerops_web/user_auth.ex:496
#, elixir-autogen, elixir-format
msgid "You must log in to access this page."
msgstr "Debes iniciar sesión para acceder a esta página."
#: lib/towerops_web/user_auth.ex:600
#: lib/towerops_web/user_auth.ex:614
#, elixir-autogen, elixir-format
msgid "You must set up two-factor authentication to continue."
msgstr "Debes configurar la autenticación de dos factores para continuar."
@ -379,32 +339,32 @@ msgstr "No puedes revocar tu sesión actual."
msgid "Account Settings"
msgstr "Configuración de la cuenta"
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:141
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:145
#, elixir-autogen, elixir-format
msgid "Add Mobile Device"
msgstr "Agregar dispositivo móvil"
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:59
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:61
#, elixir-autogen, elixir-format
msgid "Add a mobile device to receive push notifications for alerts"
msgstr "Agrega un dispositivo móvil para recibir notificaciones push de alertas"
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:45
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:47
#, elixir-autogen, elixir-format
msgid "Alert Notification Devices"
msgstr "Dispositivos de notificación de alertas"
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:110
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:114
#, elixir-autogen, elixir-format
msgid "Alerts Off"
msgstr "Alertas desactivadas"
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:108
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:112
#, elixir-autogen, elixir-format
msgid "Alerts On"
msgstr "Alertas activadas"
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:125
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:129
#, elixir-autogen, elixir-format
msgid "Are you sure you want to remove this device?"
msgstr "¿Seguro que quieres eliminar este dispositivo?"
@ -415,13 +375,13 @@ msgstr "¿Seguro que quieres eliminar este dispositivo?"
msgid "Authentication Code"
msgstr "Código de autenticación"
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:14
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:15
#, elixir-autogen, elixir-format
msgid "Change Email"
msgstr "Cambiar correo"
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:14
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:36
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:38
#, elixir-autogen, elixir-format
msgid "Changing..."
msgstr "Cambiando..."
@ -442,7 +402,7 @@ msgstr "Confirmar y mantener sesión"
msgid "Confirming..."
msgstr "Confirmando..."
#: lib/towerops_web/controllers/user_session_html/new.html.heex:114
#: lib/towerops_web/controllers/user_session_html/new.html.heex:158
#, elixir-autogen, elixir-format
msgid "Didn't receive confirmation instructions?"
msgstr "¿No recibiste las instrucciones de confirmación?"
@ -467,7 +427,7 @@ msgstr "Ingresa el código de 6 dígitos de tu app de autenticación, o usa un c
msgid "Enter the 6-digit code from your authenticator app. Recovery codes are not allowed for sensitive operations."
msgstr "Ingresa el código de 6 dígitos de tu app de autenticación. Los códigos de recuperación no están permitidos para operaciones sensibles."
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:76
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:78
#, elixir-autogen, elixir-format
msgid "Last used %{date}"
msgstr "Último uso: %{date}"
@ -489,7 +449,7 @@ msgstr "Iniciar sesión solo esta vez"
msgid "Logging in..."
msgstr "Iniciando sesión..."
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:48
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:50
#, elixir-autogen, elixir-format
msgid "Manage mobile devices that receive push notifications for alerts"
msgstr "Administra los dispositivos móviles que reciben notificaciones push de alertas"
@ -499,7 +459,7 @@ msgstr "Administra los dispositivos móviles que reciben notificaciones push de
msgid "Manage your account email address and password settings"
msgstr "Administra tu correo electrónico y contraseña"
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:56
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:58
#, elixir-autogen, elixir-format
msgid "No mobile devices registered"
msgstr "No hay dispositivos móviles registrados"
@ -514,7 +474,7 @@ msgstr "Volver a autenticarte"
msgid "Register"
msgstr "Registrarse"
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:128
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:132
#, elixir-autogen, elixir-format
msgid "Remove"
msgstr "Eliminar"
@ -525,7 +485,7 @@ msgstr "Eliminar"
msgid "Resend confirmation instructions"
msgstr "Reenviar instrucciones de confirmación"
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:37
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:39
#, elixir-autogen, elixir-format
msgid "Save Password"
msgstr "Guardar contraseña"
@ -535,23 +495,18 @@ msgstr "Guardar contraseña"
msgid "Tip: If you prefer passwords, you can enable them in the user settings."
msgstr "Consejo: Si prefieres usar contraseñas, puedes habilitarlas en la configuración de tu cuenta."
#: lib/towerops_web/controllers/user_session_html/new.html.heex:37
#, elixir-autogen, elixir-format
msgid "To see sent emails, visit"
msgstr "Para ver los correos enviados, visita"
#: lib/towerops_web/controllers/user_session_html/totp.html.heex:5
#, elixir-autogen, elixir-format
msgid "Two-Factor Authentication"
msgstr "Autenticación de dos factores"
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:70
#: lib/towerops_web/controllers/user_settings_html/edit.html.heex:72
#, elixir-autogen, elixir-format
msgid "Unknown Device"
msgstr "Dispositivo desconocido"
#: lib/towerops_web/controllers/user_session_html/totp.html.heex:31
#: lib/towerops_web/controllers/user_sudo_html/verify.html.heex:31
#: lib/towerops_web/controllers/user_session_html/totp.html.heex:33
#: lib/towerops_web/controllers/user_sudo_html/verify.html.heex:33
#, elixir-autogen, elixir-format
msgid "Verify"
msgstr "Verificar"
@ -561,12 +516,37 @@ msgstr "Verificar"
msgid "Welcome %{email}"
msgstr "Bienvenido/a %{email}"
#: lib/towerops_web/controllers/user_session_html/totp.html.heex:41
#: lib/towerops_web/controllers/user_session_html/totp.html.heex:43
#, elixir-autogen, elixir-format
msgid "← Back to login"
msgstr "← Volver al inicio de sesión"
#: lib/towerops_web/controllers/user_sudo_html/verify.html.heex:42
#: lib/towerops_web/controllers/user_sudo_html/verify.html.heex:44
#, elixir-autogen, elixir-format
msgid "← Log out instead"
msgstr "← Cerrar sesión"
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:53
#, elixir-autogen, elixir-format, fuzzy
msgid "Create your account"
msgstr "Crear una cuenta"
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:72
#, elixir-autogen, elixir-format
msgid "First 10 devices free — no credit card needed"
msgstr ""
#: lib/towerops_web/controllers/user_session_html/new.html.heex:109
#, elixir-autogen, elixir-format
msgid "Remember me"
msgstr ""
#: lib/towerops_web/controllers/user_session_html/new.html.heex:68
#, elixir-autogen, elixir-format, fuzzy
msgid "To see sent emails, visit %{link}."
msgstr "Para ver los correos enviados, visita %{link}."
#: lib/towerops_web/controllers/user_registration_html/new.html.heex:134
#, elixir-autogen, elixir-format
msgid "Use 12+ characters for a strong password"
msgstr ""

File diff suppressed because it is too large Load diff

View file

@ -26,7 +26,7 @@ msgstr "Dispositivo creado. Descubrimiento SNMP iniciado. "
msgid "Device deleted successfully"
msgstr "Dispositivo eliminado correctamente"
#: lib/towerops_web/live/device_live/show.ex:1379
#: lib/towerops_web/live/device_live/show.ex:1394
#, elixir-autogen, elixir-format
msgid "Device has no agent assigned. Assign an agent to create backups."
msgstr "El dispositivo no tiene agente asignado. Asigna un agente para crear respaldos."
@ -37,13 +37,13 @@ msgid "Device no longer exists"
msgstr "El dispositivo ya no existe"
#: lib/towerops_web/live/device_live/form.ex:109
#: lib/towerops_web/live/device_live/index.ex:147
#: lib/towerops_web/live/device_live/index.ex:167
#: lib/towerops_web/live/device_live/show.ex:90
#, elixir-autogen, elixir-format
msgid "Device not found"
msgstr "Dispositivo no encontrado"
#: lib/towerops_web/live/device_live/index.ex:215
#: lib/towerops_web/live/device_live/index.ex:235
#, elixir-autogen, elixir-format
msgid "Device order updated"
msgstr "Orden de dispositivos actualizado"
@ -68,8 +68,8 @@ msgstr "Dispositivos"
msgid "Discovery completed"
msgstr "Descubrimiento completado"
#: lib/towerops_web/live/device_live/index.ex:114
#: lib/towerops_web/live/site_live/show.ex:75
#: lib/towerops_web/live/device_live/index.ex:134
#: lib/towerops_web/live/site_live/show.ex:92
#, elixir-autogen, elixir-format
msgid "Discovery started for %{count} device"
msgstr "Descubrimiento iniciado para %{count} dispositivo"
@ -79,37 +79,37 @@ msgstr "Descubrimiento iniciado para %{count} dispositivo"
msgid "Discovery started..."
msgstr "Descubrimiento iniciado..."
#: lib/towerops_web/live/device_live/show.ex:1462
#: lib/towerops_web/live/device_live/show.ex:1477
#, elixir-autogen, elixir-format
msgid "Failed to create backup request. Please try again."
msgstr "No se pudo crear la solicitud de respaldo. Inténtalo de nuevo."
#: lib/towerops_web/live/device_live/index.ex:228
#: lib/towerops_web/live/device_live/index.ex:248
#, elixir-autogen, elixir-format
msgid "Failed to reorder device"
msgstr "No se pudo reordenar el dispositivo"
#: lib/towerops_web/live/device_live/index.ex:227
#: lib/towerops_web/live/device_live/index.ex:247
#, elixir-autogen, elixir-format
msgid "Failed to reorder site"
msgstr "No se pudo reordenar el sitio"
#: lib/towerops_web/live/device_live/show.ex:1458
#: lib/towerops_web/live/device_live/show.ex:1473
#, elixir-autogen, elixir-format
msgid "Manual backup requested. Results will appear shortly."
msgstr "Respaldo manual solicitado. Los resultados aparecerán pronto."
#: lib/towerops_web/live/device_live/show.ex:1382
#: lib/towerops_web/live/device_live/show.ex:1397
#, elixir-autogen, elixir-format
msgid "MikroTik API is not enabled for this device."
msgstr "La API de MikroTik no está habilitada para este dispositivo."
#: lib/towerops_web/live/device_live/index.ex:107
#: lib/towerops_web/live/device_live/index.ex:127
#, elixir-autogen, elixir-format
msgid "No SNMP-enabled devices found"
msgstr "No se encontraron dispositivos con SNMP habilitado"
#: lib/towerops_web/live/device_live/index.ex:178
#: lib/towerops_web/live/device_live/index.ex:198
#, elixir-autogen, elixir-format
msgid "Order reset to alphabetical"
msgstr "Orden restablecido a alfabético"
@ -119,12 +119,12 @@ msgstr "Orden restablecido a alfabético"
msgid "SNMP is not enabled for this device"
msgstr "SNMP no está habilitado para este dispositivo"
#: lib/towerops_web/live/device_live/index.ex:130
#: lib/towerops_web/live/device_live/index.ex:150
#, elixir-autogen, elixir-format
msgid "Site not found"
msgstr "Sitio no encontrado"
#: lib/towerops_web/live/device_live/index.ex:214
#: lib/towerops_web/live/device_live/index.ex:234
#, elixir-autogen, elixir-format
msgid "Site order updated"
msgstr "Orden de sitios actualizado"
@ -135,30 +135,30 @@ msgid "Unable to delete device"
msgstr "No se pudo eliminar el dispositivo"
#: lib/towerops_web/live/device_live/form.ex:114
#: lib/towerops_web/live/device_live/index.ex:150
#: lib/towerops_web/live/device_live/index.ex:170
#: lib/towerops_web/live/device_live/show.ex:96
#, elixir-autogen, elixir-format
msgid "You don't have access to this device"
msgstr "No tienes acceso a este dispositivo"
#: lib/towerops_web/live/device_live/index.ex:133
#: lib/towerops_web/live/device_live/index.ex:153
#, elixir-autogen, elixir-format
msgid "You don't have access to this site"
msgstr "No tienes acceso a este sitio"
#: lib/towerops_web/live/device_live/show.ex:1304
#: lib/towerops_web/live/device_live/show.ex:1486
#: lib/towerops_web/live/device_live/show.ex:1319
#: lib/towerops_web/live/device_live/show.ex:1501
#, elixir-autogen, elixir-format
msgid "You don't have permission to access this backup"
msgstr "No tienes permiso para acceder a este respaldo"
#: lib/towerops_web/live/alert_live/index.ex:102
#: lib/towerops_web/live/alert_live/index.ex:171
#, elixir-autogen, elixir-format
msgid "Alert acknowledged"
msgstr "Alerta reconocida"
#: lib/towerops_web/live/alert_live/index.ex:55
#: lib/towerops_web/live/alert_live/index.ex:79
#: lib/towerops_web/live/alert_live/index.ex:58
#: lib/towerops_web/live/alert_live/index.ex:82
#, elixir-autogen, elixir-format
msgid "Alert not found"
msgstr "Alerta no encontrada"
@ -173,7 +173,7 @@ msgstr "Configuración SNMP aplicada a %{count} registros de dispositivos en est
msgid "Applied agent to %{count} device records at this site"
msgstr "Agente aplicado a %{count} registros de dispositivos en este sitio"
#: lib/towerops_web/live/site_live/show.ex:65
#: lib/towerops_web/live/site_live/show.ex:82
#, elixir-autogen, elixir-format
msgid "No SNMP-enabled devices at this site"
msgstr "No hay dispositivos con SNMP habilitado en este sitio"
@ -193,7 +193,7 @@ msgstr "Sitio eliminado correctamente"
msgid "Site updated successfully"
msgstr "Sitio actualizado correctamente"
#: lib/towerops_web/live/alert_live/index.ex:106
#: lib/towerops_web/live/alert_live/index.ex:175
#, elixir-autogen, elixir-format
msgid "Unable to acknowledge alert"
msgstr "No se pudo reconocer la alerta"
@ -203,18 +203,18 @@ msgstr "No se pudo reconocer la alerta"
msgid "Unable to delete site"
msgstr "No se pudo eliminar el sitio"
#: lib/towerops_web/live/alert_live/index.ex:58
#: lib/towerops_web/live/alert_live/index.ex:82
#: lib/towerops_web/live/alert_live/index.ex:61
#: lib/towerops_web/live/alert_live/index.ex:85
#, elixir-autogen, elixir-format
msgid "You don't have access to this alert"
msgstr "No tienes acceso a esta alerta"
#: lib/towerops_web/live/agent_live/index.ex:339
#: lib/towerops_web/live/agent_live/index.ex:342
#, elixir-autogen, elixir-format
msgid "Agent created successfully"
msgstr "Agente creado correctamente"
#: lib/towerops_web/live/agent_live/index.ex:215
#: lib/towerops_web/live/agent_live/index.ex:218
#, elixir-autogen, elixir-format
msgid "Agent deleted successfully. Devices now fall back to site/org defaults or cloud polling."
msgstr "Agente eliminado correctamente. Los dispositivos ahora usan los valores predeterminados del sitio/organización o sondeo en la nube."
@ -224,97 +224,97 @@ msgstr "Agente eliminado correctamente. Los dispositivos ahora usan los valores
msgid "Agent updated successfully"
msgstr "Agente actualizado correctamente"
#: lib/towerops_web/live/agent_live/index.ex:338
#: lib/towerops_web/live/agent_live/index.ex:341
#, elixir-autogen, elixir-format
msgid "Cloud poller created successfully"
msgstr "Cloud poller creado correctamente"
#: lib/towerops_web/live/agent_live/index.ex:106
#: lib/towerops_web/live/agent_live/index.ex:109
#, elixir-autogen, elixir-format
msgid "Failed to create agent"
msgstr "No se pudo crear el agente"
#: lib/towerops_web/live/agent_live/index.ex:105
#: lib/towerops_web/live/agent_live/index.ex:108
#, elixir-autogen, elixir-format
msgid "Failed to create cloud poller"
msgstr "No se pudo crear el cloud poller"
#: lib/towerops_web/live/agent_live/index.ex:219
#: lib/towerops_web/live/agent_live/index.ex:222
#, elixir-autogen, elixir-format
msgid "Failed to delete agent"
msgstr "No se pudo eliminar el agente"
#: lib/towerops_web/live/agent_live/index.ex:151
#: lib/towerops_web/live/agent_live/index.ex:154
#, elixir-autogen, elixir-format
msgid "Failed to generate new token"
msgstr "No se pudo generar el nuevo token"
#: lib/towerops_web/live/agent_live/index.ex:155
#: lib/towerops_web/live/agent_live/index.ex:158
#, elixir-autogen, elixir-format
msgid "Failed to revoke old token"
msgstr "No se pudo revocar el token anterior"
#: lib/towerops_web/live/agent_live/index.ex:248
#: lib/towerops_web/live/agent_live/index.ex:251
#, elixir-autogen, elixir-format
msgid "Failed to update global default cloud poller"
msgstr "No se pudo actualizar el cloud poller predeterminado global"
#: lib/towerops_web/live/agent_live/index.ex:367
#: lib/towerops_web/live/agent_live/index.ex:370
#, elixir-autogen, elixir-format
msgid "Global default cloud poller cleared"
msgstr "Cloud poller predeterminado global eliminado"
#: lib/towerops_web/live/agent_live/index.ex:366
#: lib/towerops_web/live/agent_live/index.ex:369
#, elixir-autogen, elixir-format
msgid "Global default cloud poller set successfully"
msgstr "Cloud poller predeterminado global configurado correctamente"
#: lib/towerops_web/live/agent_live/index.ex:148
#: lib/towerops_web/live/agent_live/index.ex:151
#, elixir-autogen, elixir-format
msgid "New token generated successfully"
msgstr "Nuevo token generado correctamente"
#: lib/towerops_web/live/agent_live/index.ex:100
#: lib/towerops_web/live/agent_live/index.ex:103
#, elixir-autogen, elixir-format
msgid "Only superadmins can create cloud pollers"
msgstr "Solo los superadministradores pueden crear cloud pollers"
#: lib/towerops_web/live/agent_live/index.ex:251
#: lib/towerops_web/live/agent_live/index.ex:254
#, elixir-autogen, elixir-format
msgid "Only superadmins can set the global default cloud poller"
msgstr "Solo los superadministradores pueden configurar el cloud poller predeterminado global"
#: lib/towerops_web/live/agent_live/index.ex:245
#: lib/towerops_web/live/agent_live/index.ex:248
#, elixir-autogen, elixir-format
msgid "Selected agent no longer exists. Please choose another agent."
msgstr "El agente seleccionado ya no existe. Elige otro agente."
#: lib/towerops_web/live/alert_live/index.ex:71
#: lib/towerops_web/live/alert_live/index.ex:74
#, elixir-autogen, elixir-format
msgid "Alert resolved"
msgstr "Alerta resuelta"
#: lib/towerops_web/live/device_live/show.ex:1478
#: lib/towerops_web/live/device_live/show.ex:1493
#, elixir-autogen, elixir-format
msgid "Backup deleted successfully"
msgstr "Respaldo eliminado correctamente"
#: lib/towerops_web/live/device_live/show.ex:1482
#: lib/towerops_web/live/device_live/show.ex:1497
#, elixir-autogen, elixir-format
msgid "Failed to delete backup"
msgstr "No se pudo eliminar el respaldo"
#: lib/towerops_web/live/device_live/show.ex:1367
#: lib/towerops_web/live/device_live/show.ex:1382
#, elixir-autogen, elixir-format
msgid "Only organization owners can delete backups"
msgstr "Solo los propietarios de la organización pueden eliminar respaldos"
#: lib/towerops_web/live/device_live/show.ex:1340
#: lib/towerops_web/live/device_live/show.ex:1355
#, elixir-autogen, elixir-format
msgid "Please select exactly 2 backups to compare"
msgstr "Selecciona exactamente 2 respaldos para comparar"
#: lib/towerops_web/live/alert_live/index.ex:75
#: lib/towerops_web/live/alert_live/index.ex:78
#, elixir-autogen, elixir-format
msgid "Unable to resolve alert"
msgstr "No se pudo resolver la alerta"