diff --git a/CHANGELOG.txt b/CHANGELOG.txt index f212d709..d11a2cec 100644 --- a/CHANGELOG.txt +++ b/CHANGELOG.txt @@ -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 diff --git a/assets/js/app.ts b/assets/js/app.ts index e3b16424..323b417f 100644 --- a/assets/js/app.ts +++ b/assets/js/app.ts @@ -885,6 +885,39 @@ const NetworkMap = { } } +// Dynamic Favicon - alternates favicon between status indicator SVGs +const DynamicFavicon = { + interval: null as ReturnType | null, + isGreen: true, + + mounted(this: any) { + const greenSvg = `` + const redSvg = `` + + 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 diff --git a/lib/towerops_web/components/layouts/root.html.heex b/lib/towerops_web/components/layouts/root.html.heex index cb474a7c..7317c9da 100644 --- a/lib/towerops_web/components/layouts/root.html.heex +++ b/lib/towerops_web/components/layouts/root.html.heex @@ -23,7 +23,7 @@ /> - + <.live_title default="TowerOps"> diff --git a/lib/towerops_web/controllers/user_session_html/new.html.heex b/lib/towerops_web/controllers/user_session_html/new.html.heex index c6cd6339..9fd0d0ba 100644 --- a/lib/towerops_web/controllers/user_session_html/new.html.heex +++ b/lib/towerops_web/controllers/user_session_html/new.html.heex @@ -65,10 +65,7 @@ {t_auth("You are running the local mail adapter.")}

- {t_auth("To see sent emails, visit")} - - {t_auth("the mailbox page")} - . + <%= t_auth("To see sent emails, visit %{link}.", link: raw(~s(#{t_auth("the mailbox page")}))) %>

diff --git a/lib/towerops_web/live/dashboard_live.html.heex b/lib/towerops_web/live/dashboard_live.html.heex index 948ddbc4..72823402 100644 --- a/lib/towerops_web/live/dashboard_live.html.heex +++ b/lib/towerops_web/live/dashboard_live.html.heex @@ -3,6 +3,7 @@ current_scope={@current_scope} active_page="dashboard" > + <%!-- ═══════════════════════════════════════════════ NOC HEADER — dense, zero chrome ═══════════════════════════════════════════════ --%> diff --git a/priv/gettext/admin.pot b/priv/gettext/admin.pot index 4b364f80..66b0d0e6 100644 --- a/priv/gettext/admin.pot +++ b/priv/gettext/admin.pot @@ -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 "" diff --git a/priv/gettext/auth.pot b/priv/gettext/auth.pot index a9cd141d..6a1044e4 100644 --- a/priv/gettext/auth.pot +++ b/priv/gettext/auth.pot @@ -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 "" diff --git a/priv/gettext/default.pot b/priv/gettext/default.pot index 8f66a2c4..fb577629 100644 --- a/priv/gettext/default.pot +++ b/priv/gettext/default.pot @@ -53,18 +53,19 @@ msgid_plural "%{count}y ago" msgstr[0] "" msgstr[1] "" -#: lib/towerops_web/components/core_components.ex:491 -#: lib/towerops_web/live/device_live/index.html.heex:606 -#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:162 -#: lib/towerops_web/live/org/preseem_devices_live.html.heex:153 -#: lib/towerops_web/live/org/settings_live.html.heex:640 -#: lib/towerops_web/live/org/settings_live.html.heex:717 +#: lib/towerops_web/components/core_components.ex:540 +#: lib/towerops_web/live/alert_live/index.html.heex:238 +#: lib/towerops_web/live/device_live/index.html.heex:653 +#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:166 +#: lib/towerops_web/live/org/preseem_devices_live.html.heex:155 +#: lib/towerops_web/live/org/settings_live.html.heex:681 +#: lib/towerops_web/live/org/settings_live.html.heex:758 #, elixir-autogen, elixir-format msgid "Actions" msgstr "" -#: lib/towerops_web/components/layouts.ex:603 -#: lib/towerops_web/components/layouts.ex:615 +#: lib/towerops_web/components/layouts.ex:773 +#: lib/towerops_web/components/layouts.ex:785 #, elixir-autogen, elixir-format msgid "Attempting to reconnect" msgstr "" @@ -77,12 +78,12 @@ msgstr "" msgid "Never" msgstr "" -#: lib/towerops_web/components/layouts.ex:610 +#: lib/towerops_web/components/layouts.ex:780 #, elixir-autogen, elixir-format msgid "Something went wrong!" msgstr "" -#: lib/towerops_web/components/layouts.ex:598 +#: lib/towerops_web/components/layouts.ex:768 #, elixir-autogen, elixir-format msgid "We can't find the internet" msgstr "" @@ -92,47 +93,47 @@ msgstr "" msgid "close" msgstr "" -#: lib/towerops_web/controllers/user_session_html/new.html.heex:88 +#: lib/towerops_web/controllers/user_session_html/new.html.heex:131 #, elixir-autogen, elixir-format msgid "or" msgstr "" -#: lib/towerops_web/components/consent_prompt.ex:105 +#: lib/towerops_web/components/consent_prompt.ex:106 #, elixir-autogen, elixir-format msgid "Accept and Continue" msgstr "" -#: lib/towerops_web/components/consent_prompt.ex:89 +#: lib/towerops_web/components/consent_prompt.ex:90 #, elixir-autogen, elixir-format msgid "By accepting, you acknowledge that you have read and agree to the updated policies. You can review your consent history at any time from your account settings." msgstr "" -#: lib/towerops_web/components/consent_prompt.ex:72 +#: lib/towerops_web/components/consent_prompt.ex:73 #, elixir-autogen, elixir-format msgid "I agree to the updated" msgstr "" -#: lib/towerops_web/components/consent_prompt.ex:117 +#: lib/towerops_web/components/consent_prompt.ex:118 #, elixir-autogen, elixir-format msgid "Policy" msgstr "" -#: lib/towerops_web/components/consent_prompt.ex:115 +#: lib/towerops_web/components/consent_prompt.ex:116 #, elixir-autogen, elixir-format msgid "Privacy Policy" msgstr "" -#: lib/towerops_web/components/consent_prompt.ex:116 +#: lib/towerops_web/components/consent_prompt.ex:117 #, elixir-autogen, elixir-format msgid "Terms of Service" msgstr "" -#: lib/towerops_web/components/consent_prompt.ex:44 +#: lib/towerops_web/components/consent_prompt.ex:45 #, elixir-autogen, elixir-format msgid "Updated Policies - Action Required" msgstr "" -#: lib/towerops_web/components/consent_prompt.ex:48 +#: lib/towerops_web/components/consent_prompt.ex:49 #, elixir-autogen, elixir-format msgid "We've updated our policies. Please review and accept the changes to continue using Towerops." msgstr "" @@ -162,60 +163,68 @@ msgstr "" msgid "A link to confirm your email change has been sent to the new address." msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:65 +#: lib/towerops_web/live/user_settings_live.html.heex:73 #, elixir-autogen, elixir-format msgid "API" msgstr "" -#: lib/towerops_web/live/org/integrations_live.html.heex:192 +#: lib/towerops_web/live/onboarding_live.html.heex:259 +#: lib/towerops_web/live/onboarding_live.html.heex:270 +#: lib/towerops_web/live/org/integrations_live.html.heex:239 +#: lib/towerops_web/live/org/integrations_live.html.heex:571 +#: lib/towerops_web/live/org/settings_live.html.heex:1691 #, elixir-autogen, elixir-format msgid "API Key" msgstr "" -#: lib/towerops_web/live/device_live/form.html.heex:679 -#: lib/towerops_web/live/org/settings_live.html.heex:404 -#: lib/towerops_web/live/site_live/form.html.heex:412 +#: lib/towerops_web/live/device_live/form.html.heex:694 +#: lib/towerops_web/live/org/settings_live.html.heex:428 +#: lib/towerops_web/live/site_live/form.html.heex:428 #, elixir-autogen, elixir-format msgid "API Port" msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:1119 +#: lib/towerops_web/live/onboarding_live.html.heex:248 +#: lib/towerops_web/live/org/integrations_live.html.heex:230 +#: lib/towerops_web/live/org/settings_live.html.heex:1199 +#: lib/towerops_web/live/org/settings_live.html.heex:1583 #, elixir-autogen, elixir-format msgid "API Token" msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:1388 +#: lib/towerops_web/live/user_settings_live.html.heex:1441 #, elixir-autogen, elixir-format msgid "API Token Created" msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:526 +#: lib/towerops_web/live/user_settings_live.html.heex:551 #, elixir-autogen, elixir-format msgid "API Tokens" msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:152 -#: lib/towerops_web/live/device_live/show.html.heex:1419 +#: lib/towerops_web/live/device_live/show.html.heex:187 +#: lib/towerops_web/live/device_live/show.html.heex:1534 #, elixir-autogen, elixir-format msgid "ARP Table" msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:2759 +#: lib/towerops_web/live/device_live/show.html.heex:2896 #, elixir-autogen, elixir-format msgid "Access Point Details" msgstr "" -#: lib/towerops_web/live/graph_live/show.ex:811 +#: lib/towerops_web/live/graph_live/show.ex:815 #, elixir-autogen, elixir-format msgid "Access to device revoked" msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:41 +#: lib/towerops_web/components/layouts.ex:595 +#: lib/towerops_web/live/user_settings_live.html.heex:43 #, elixir-autogen, elixir-format msgid "Account" msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:2545 +#: lib/towerops_web/live/device_live/show.html.heex:2682 #, elixir-autogen, elixir-format msgid "Account ID" msgstr "" @@ -242,48 +251,39 @@ msgstr "" msgid "Account created! Please check your email to verify your account." msgstr "" -#: lib/towerops_web/live/dashboard_live.html.heex:432 -#, elixir-autogen, elixir-format -msgid "Ack" -msgstr "" - -#: lib/towerops_web/live/admin/dashboard_live.html.heex:103 +#: lib/towerops_web/live/admin/dashboard_live.html.heex:122 #, elixir-autogen, elixir-format msgid "Action" msgstr "" #: lib/towerops_web/live/insights_live/index.html.heex:33 +#: lib/towerops_web/live/maintenance_live/index.html.heex:39 #: lib/towerops_web/live/org/preseem_insights_live.html.heex:44 #, elixir-autogen, elixir-format msgid "Active" msgstr "" -#: lib/towerops_web/live/dashboard_live.html.heex:366 +#: lib/towerops_web/live/site_live/show.html.heex:117 #, elixir-autogen, elixir-format msgid "Active Alerts" msgstr "" -#: lib/towerops_web/live/dashboard_live.html.heex:310 -#, elixir-autogen, elixir-format -msgid "Active Incidents" -msgstr "" - #: lib/towerops_web/live/admin/monitoring_live.html.heex:43 #, elixir-autogen, elixir-format msgid "Active Jobs" msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:737 +#: lib/towerops_web/live/user_settings_live.html.heex:770 #, elixir-autogen, elixir-format msgid "Active Sessions" msgstr "" -#: lib/towerops_web/live/trace_live/index.html.heex:329 +#: lib/towerops_web/live/trace_live/index.html.heex:342 #, elixir-autogen, elixir-format msgid "Active alerts on device" msgstr "" -#: lib/towerops_web/live/activity_feed_live.ex:33 +#: lib/towerops_web/live/activity_feed_live.ex:35 #: lib/towerops_web/live/activity_feed_live.html.heex:13 #, elixir-autogen, elixir-format msgid "Activity Feed" @@ -294,28 +294,28 @@ msgstr "" msgid "Activity Log" msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:1472 +#: lib/towerops_web/live/user_settings_live.html.heex:1525 #, elixir-autogen, elixir-format msgid "Add Authenticator Device" msgstr "" -#: lib/towerops_web/live/dashboard_live.html.heex:66 -#: lib/towerops_web/live/dashboard_live.html.heex:78 +#: lib/towerops_web/live/dashboard_live.html.heex:69 +#: lib/towerops_web/live/dashboard_live.html.heex:81 #, elixir-autogen, elixir-format msgid "Add Devices" msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:1503 +#: lib/towerops_web/live/org/settings_live.html.heex:1827 #, elixir-autogen, elixir-format msgid "Add Integration" msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:627 +#: lib/towerops_web/live/user_settings_live.html.heex:659 #, elixir-autogen, elixir-format msgid "Add a mobile device to receive push notifications for alerts." msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:1555 +#: lib/towerops_web/live/org/settings_live.html.heex:1888 #, elixir-autogen, elixir-format msgid "Add a subscription with the Webhook URL above" msgstr "" @@ -335,12 +335,12 @@ msgstr "" msgid "Add geographic coordinates to enable network mapping and spatial analysis." msgstr "" -#: lib/towerops_web/live/dashboard_live.html.heex:80 +#: lib/towerops_web/live/dashboard_live.html.heex:83 #, elixir-autogen, elixir-format msgid "Add network devices to monitor" msgstr "" -#: lib/towerops_web/live/dashboard_live.html.heex:68 +#: lib/towerops_web/live/dashboard_live.html.heex:71 #, elixir-autogen, elixir-format msgid "Add routers, switches, and servers to your sites" msgstr "" @@ -350,12 +350,12 @@ msgstr "" msgid "Add to Allowlist" msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:1047 +#: lib/towerops_web/live/user_settings_live.html.heex:1093 #, elixir-autogen, elixir-format msgid "Add your first authenticator app to enable two-factor authentication." msgstr "" -#: lib/towerops_web/live/site_live/show.html.heex:261 +#: lib/towerops_web/live/site_live/show.html.heex:366 #, elixir-autogen, elixir-format msgid "Add your first device" msgstr "" @@ -376,6 +376,7 @@ msgstr "" msgid "Added Devices" msgstr "" +#: lib/towerops_web/live/onboarding_live.html.heex:155 #: lib/towerops_web/live/site_live/form.html.heex:81 #, elixir-autogen, elixir-format msgid "Address" @@ -386,13 +387,13 @@ msgstr "" msgid "Address geocoded successfully!" msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:1659 -#: lib/towerops_web/live/device_live/show.html.heex:1716 +#: lib/towerops_web/live/device_live/show.html.heex:1778 +#: lib/towerops_web/live/device_live/show.html.heex:1837 #, elixir-autogen, elixir-format msgid "Addresses" msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:768 +#: lib/towerops_web/live/org/settings_live.html.heex:812 #, elixir-autogen, elixir-format msgid "Admin" msgstr "" @@ -408,12 +409,12 @@ msgstr "" msgid "Affected devices:" msgstr "" -#: lib/towerops_web/live/site_live/form.html.heex:191 +#: lib/towerops_web/live/site_live/form.html.heex:193 #, elixir-autogen, elixir-format msgid "Agent Configuration" msgstr "" -#: lib/towerops_web/live/agent_live/show.html.heex:231 +#: lib/towerops_web/live/agent_live/show.html.heex:241 #, elixir-autogen, elixir-format msgid "Agent Details" msgstr "" @@ -425,33 +426,33 @@ msgstr "" #: lib/towerops_web/live/agent_live/edit.html.heex:34 #: lib/towerops_web/live/agent_live/index.html.heex:27 -#: lib/towerops_web/live/agent_live/index.html.heex:402 +#: lib/towerops_web/live/agent_live/index.html.heex:416 #, elixir-autogen, elixir-format msgid "Agent Name" msgstr "" -#: lib/towerops_web/live/agent_live/index.html.heex:384 +#: lib/towerops_web/live/agent_live/index.html.heex:398 #, elixir-autogen, elixir-format msgid "Agent Setup Instructions" msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:65 +#: lib/towerops_web/live/org/settings_live.html.heex:69 #, elixir-autogen, elixir-format msgid "Agents" msgstr "" #: lib/towerops_web/live/admin/agent_live/index.html.heex:6 -#: lib/towerops_web/live/admin/dashboard_live.html.heex:81 +#: lib/towerops_web/live/admin/dashboard_live.html.heex:98 #, elixir-autogen, elixir-format msgid "Agents across all organizations and cloud pollers" msgstr "" -#: lib/towerops_web/live/trace_live/index.html.heex:248 +#: lib/towerops_web/live/trace_live/index.html.heex:261 #, elixir-autogen, elixir-format msgid "Airtime" msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:2800 +#: lib/towerops_web/live/device_live/show.html.heex:2937 #, elixir-autogen, elixir-format msgid "Airtime Utilization" msgstr "" @@ -466,28 +467,32 @@ msgstr "" msgid "Alert not found" msgstr "" +#: lib/towerops_web/components/layouts.ex:281 +#: lib/towerops_web/components/layouts.ex:409 +#: lib/towerops_web/components/layouts.ex:566 #: lib/towerops_web/live/alert_live/index.ex:26 -#: lib/towerops_web/live/dashboard_live.html.heex:200 +#: lib/towerops_web/live/alert_live/index.html.heex:9 #, elixir-autogen, elixir-format msgid "Alerts" msgstr "" -#: lib/towerops_web/live/dashboard_live.html.heex:465 +#: lib/towerops_web/live/alert_live/index.html.heex:66 #: lib/towerops_web/live/insights_live/index.html.heex:69 #: lib/towerops_web/live/insights_live/index.html.heex:105 +#: lib/towerops_web/live/maintenance_live/index.html.heex:28 #: lib/towerops_web/live/org/preseem_devices_live.html.heex:55 #: lib/towerops_web/live/org/preseem_insights_live.html.heex:80 #, elixir-autogen, elixir-format msgid "All" msgstr "" -#: lib/towerops_web/live/admin/agent_live/index.ex:23 +#: lib/towerops_web/live/admin/agent_live/index.ex:25 #: lib/towerops_web/live/admin/agent_live/index.html.heex:4 #, elixir-autogen, elixir-format msgid "All Agents" msgstr "" -#: lib/towerops_web/live/alert_live/index.html.heex:74 +#: lib/towerops_web/live/alert_live/index.html.heex:169 #, elixir-autogen, elixir-format msgid "All Clear!" msgstr "" @@ -497,7 +502,7 @@ msgstr "" msgid "All Devices" msgstr "" -#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:224 +#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:226 #, elixir-autogen, elixir-format msgid "All Gaiia inventory items are mapped to Towerops devices." msgstr "" @@ -508,7 +513,7 @@ msgstr "" msgid "All Organizations" msgstr "" -#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:124 +#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:126 #, elixir-autogen, elixir-format msgid "All Towerops devices have matching Gaiia inventory items." msgstr "" @@ -524,12 +529,12 @@ msgstr "" msgid "All access points are matched. Nice!" msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:200 +#: lib/towerops_web/live/org/settings_live.html.heex:210 #, elixir-autogen, elixir-format msgid "All devices will be removed from their current sites and assigned directly to the organization." msgstr "" -#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:121 +#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:123 #, elixir-autogen, elixir-format msgid "All entities are mapped." msgstr "" @@ -549,27 +554,27 @@ msgstr "" msgid "Allowlist" msgstr "" -#: lib/towerops_web/live/agent_live/index.html.heex:178 +#: lib/towerops_web/live/agent_live/index.html.heex:182 #, elixir-autogen, elixir-format msgid "Application-wide agents that can poll devices for any organization. Only visible and manageable by superadmins." msgstr "" -#: lib/towerops_web/live/org/settings_live.ex:142 +#: lib/towerops_web/live/org/settings_live.ex:176 #, elixir-autogen, elixir-format msgid "Applied SNMP configuration to %{count} device records across all sites" msgstr "" -#: lib/towerops_web/live/org/settings_live.ex:149 +#: lib/towerops_web/live/org/settings_live.ex:184 #, elixir-autogen, elixir-format msgid "Applied default agent to %{count} device records across all sites" msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:515 +#: lib/towerops_web/live/org/settings_live.html.heex:551 #, elixir-autogen, elixir-format msgid "Apply Default Agent to All Devices" msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:342 +#: lib/towerops_web/live/org/settings_live.html.heex:364 #, elixir-autogen, elixir-format msgid "Apply SNMP Config to All Devices" msgstr "" @@ -579,77 +584,77 @@ msgstr "" msgid "Approaching device limit" msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:583 +#: lib/towerops_web/live/user_settings_live.html.heex:612 #, elixir-autogen, elixir-format msgid "Are you sure you want to delete this API token? This action cannot be undone." msgstr "" -#: lib/towerops_web/live/agent_live/index.html.heex:157 +#: lib/towerops_web/live/agent_live/index.html.heex:158 #, elixir-autogen, elixir-format msgid "Are you sure you want to delete this agent? All device assignments will be removed, and devices will fall back to site/organization defaults or cloud polling." msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:1906 +#: lib/towerops_web/live/device_live/show.html.heex:2030 #, elixir-autogen, elixir-format msgid "Are you sure you want to delete this backup? This action cannot be undone." msgstr "" -#: lib/towerops_web/live/agent_live/index.html.heex:267 +#: lib/towerops_web/live/agent_live/index.html.heex:274 #, elixir-autogen, elixir-format msgid "Are you sure you want to delete this cloud poller? This will affect all organizations using it." msgstr "" -#: lib/towerops_web/live/device_live/form.html.heex:742 +#: lib/towerops_web/live/device_live/form.html.heex:766 #, elixir-autogen, elixir-format msgid "Are you sure you want to delete this device? All monitoring history and alerts will be permanently deleted." msgstr "" -#: lib/towerops_web/live/site_live/form.html.heex:457 +#: lib/towerops_web/live/site_live/form.html.heex:482 #, elixir-autogen, elixir-format msgid "Are you sure you want to delete this site? This will also delete all devices at this site." msgstr "" -#: lib/towerops_web/live/admin/user_live/index.html.heex:32 +#: lib/towerops_web/live/admin/user_live/index.html.heex:34 #, elixir-autogen, elixir-format msgid "Are you sure you want to delete this user?" msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:684 +#: lib/towerops_web/live/user_settings_live.html.heex:716 #, elixir-autogen, elixir-format msgid "Are you sure you want to remove this device?" msgstr "" -#: lib/towerops_web/live/agent_live/show.html.heex:21 +#: lib/towerops_web/live/agent_live/show.html.heex:26 #, elixir-autogen, elixir-format msgid "Are you sure you want to restart this agent? It will disconnect and restart its container." msgstr "" -#: lib/towerops_web/live/agent_live/show.html.heex:13 +#: lib/towerops_web/live/agent_live/show.html.heex:14 #, elixir-autogen, elixir-format msgid "Are you sure you want to update this agent? It will download and replace the binary." msgstr "" -#: lib/towerops_web/live/org/integrations_live.html.heex:324 +#: lib/towerops_web/live/org/integrations_live.html.heex:385 #, elixir-autogen, elixir-format msgid "Are you sure? Any existing Gaiia webhook using the current secret will stop working." msgstr "" -#: lib/towerops_web/live/admin/org_live/index.html.heex:20 +#: lib/towerops_web/live/admin/org_live/index.html.heex:21 #, elixir-autogen, elixir-format msgid "Are you sure? This will delete all sites, device, and data for this organization." msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:1989 +#: lib/towerops_web/live/device_live/show.html.heex:2116 #, elixir-autogen, elixir-format msgid "Assign an agent to enable automatic backups." msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:1794 +#: lib/towerops_web/live/device_live/show.html.heex:1917 #, elixir-autogen, elixir-format msgid "Assign an agent to enable backups" msgstr "" -#: lib/towerops_web/live/device_live/form.html.heex:293 +#: lib/towerops_web/live/device_live/form.html.heex:295 #, elixir-autogen, elixir-format msgid "Assign this device to a remote agent for local SNMP polling. Leave empty to inherit from site or organization defaults." msgstr "" @@ -659,41 +664,43 @@ msgstr "" msgid "Audit Logs" msgstr "" -#: lib/towerops_web/live/device_live/form.html.heex:461 +#: lib/towerops_web/live/device_live/form.html.heex:470 #, elixir-autogen, elixir-format msgid "Auth Level" msgstr "" -#: lib/towerops_web/live/device_live/form.html.heex:492 -#: lib/towerops_web/live/org/settings_live.html.heex:288 -#: lib/towerops_web/live/site_live/form.html.heex:312 +#: lib/towerops_web/live/device_live/form.html.heex:501 +#: lib/towerops_web/live/onboarding_live.html.heex:102 +#: lib/towerops_web/live/org/settings_live.html.heex:304 +#: lib/towerops_web/live/site_live/form.html.heex:324 #, elixir-autogen, elixir-format msgid "Auth Password" msgstr "" -#: lib/towerops_web/live/device_live/form.html.heex:476 -#: lib/towerops_web/live/org/settings_live.html.heex:273 -#: lib/towerops_web/live/site_live/form.html.heex:297 +#: lib/towerops_web/live/device_live/form.html.heex:485 +#: lib/towerops_web/live/onboarding_live.html.heex:95 +#: lib/towerops_web/live/org/settings_live.html.heex:289 +#: lib/towerops_web/live/site_live/form.html.heex:309 #, elixir-autogen, elixir-format msgid "Auth Protocol" msgstr "" -#: lib/towerops_web/live/agent_live/index.html.heex:411 +#: lib/towerops_web/live/agent_live/index.html.heex:425 #, elixir-autogen, elixir-format msgid "Authentication Token" msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:1032 +#: lib/towerops_web/live/user_settings_live.html.heex:1076 #, elixir-autogen, elixir-format msgid "Authenticator Apps" msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:1139 +#: lib/towerops_web/live/user_settings_live.html.heex:1185 #, elixir-autogen, elixir-format msgid "Available Recovery Codes" msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:684 +#: lib/towerops_web/live/device_live/show.html.heex:745 #, elixir-autogen, elixir-format msgid "Average Load" msgstr "" @@ -703,7 +710,7 @@ msgstr "" msgid "Avg Duration" msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:218 +#: lib/towerops_web/live/device_live/show.html.heex:253 #: lib/towerops_web/live/mikrotik_backup_live/compare.html.heex:21 #, elixir-autogen, elixir-format msgid "Backups" @@ -719,95 +726,97 @@ msgstr "" msgid "Basic Information" msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:218 +#: lib/towerops_web/live/user_settings_live.html.heex:231 #, elixir-autogen, elixir-format msgid "Berlin" msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:2590 +#: lib/towerops_web/live/device_live/show.html.heex:2727 #, elixir-autogen, elixir-format msgid "Billing Subscriptions" msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:2788 +#: lib/towerops_web/live/device_live/show.html.heex:2925 #, elixir-autogen, elixir-format msgid "Busy Hours" msgstr "" #: lib/towerops_web/live/admin/security_live/index.html.heex:84 -#: lib/towerops_web/live/agent_live/edit.html.heex:79 +#: lib/towerops_web/live/agent_live/edit.html.heex:80 #: lib/towerops_web/live/agent_live/index.html.heex:47 -#: lib/towerops_web/live/agent_live/index.html.heex:355 -#: lib/towerops_web/live/device_live/form.html.heex:714 -#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:363 -#: lib/towerops_web/live/org/integrations_live.html.heex:247 -#: lib/towerops_web/live/org/preseem_devices_live.html.heex:280 -#: lib/towerops_web/live/org/settings_live.html.heex:553 -#: lib/towerops_web/live/org/settings_live.html.heex:678 -#: lib/towerops_web/live/org/settings_live.html.heex:1630 -#: lib/towerops_web/live/org_live/new.html.heex:35 -#: lib/towerops_web/live/site_live/form.html.heex:445 -#: lib/towerops_web/live/user_settings_live.html.heex:1251 -#: lib/towerops_web/live/user_settings_live.html.heex:1346 -#: lib/towerops_web/live/user_settings_live.html.heex:1503 -#: lib/towerops_web/live/user_settings_live.html.heex:1595 +#: lib/towerops_web/live/agent_live/index.html.heex:369 +#: lib/towerops_web/live/device_live/form.html.heex:733 +#: lib/towerops_web/live/maintenance_live/form.html.heex:155 +#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:394 +#: lib/towerops_web/live/org/integrations_live.html.heex:305 +#: lib/towerops_web/live/org/integrations_live.html.heex:625 +#: lib/towerops_web/live/org/preseem_devices_live.html.heex:291 +#: lib/towerops_web/live/org/settings_live.html.heex:589 +#: lib/towerops_web/live/org/settings_live.html.heex:719 +#: lib/towerops_web/live/org/settings_live.html.heex:1965 +#: lib/towerops_web/live/org_live/new.html.heex:38 +#: lib/towerops_web/live/site_live/form.html.heex:465 +#: lib/towerops_web/live/user_settings_live.html.heex:1302 +#: lib/towerops_web/live/user_settings_live.html.heex:1399 +#: lib/towerops_web/live/user_settings_live.html.heex:1556 +#: lib/towerops_web/live/user_settings_live.html.heex:1673 #, elixir-autogen, elixir-format msgid "Cancel" msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:675 +#: lib/towerops_web/live/org/settings_live.html.heex:716 #, elixir-autogen, elixir-format msgid "Cancel this invitation?" msgstr "" -#: lib/towerops_web/live/org/settings_live.ex:231 +#: lib/towerops_web/live/org/settings_live.ex:267 #, elixir-autogen, elixir-format msgid "Cannot change the owner's role" msgstr "" -#: lib/towerops_web/live/org/settings_live.ex:212 +#: lib/towerops_web/live/org/settings_live.ex:248 #, elixir-autogen, elixir-format msgid "Cannot remove the organization owner" msgstr "" -#: lib/towerops_web/live/trace_live/index.html.heex:238 +#: lib/towerops_web/live/trace_live/index.html.heex:251 #, elixir-autogen, elixir-format msgid "Capacity" msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:2737 +#: lib/towerops_web/live/device_live/show.html.heex:2874 #, elixir-autogen, elixir-format msgid "Capacity Score" msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:2436 -#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:238 +#: lib/towerops_web/live/device_live/show.html.heex:2573 +#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:240 #, elixir-autogen, elixir-format msgid "Category" msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:188 +#: lib/towerops_web/live/user_settings_live.html.heex:201 #, elixir-autogen, elixir-format msgid "Central Time (US & Canada)" msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:422 +#: lib/towerops_web/live/user_settings_live.html.heex:444 #, elixir-autogen, elixir-format msgid "Change Email" msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:432 +#: lib/towerops_web/live/user_settings_live.html.heex:454 #, elixir-autogen, elixir-format msgid "Change Password" msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:419 -#: lib/towerops_web/live/user_settings_live.html.heex:511 +#: lib/towerops_web/live/user_settings_live.html.heex:441 +#: lib/towerops_web/live/user_settings_live.html.heex:535 #, elixir-autogen, elixir-format msgid "Changing..." msgstr "" -#: lib/towerops_web/live/device_live/form.html.heex:229 +#: lib/towerops_web/live/device_live/form.html.heex:231 #, elixir-autogen, elixir-format msgid "Check Interval (seconds)" msgstr "" @@ -827,37 +836,37 @@ msgstr "" msgid "Check not found" msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:286 +#: lib/towerops_web/live/device_live/show.html.heex:321 #, elixir-autogen, elixir-format msgid "Checks" msgstr "" -#: lib/towerops_web/live/site_live/show.html.heex:151 +#: lib/towerops_web/live/site_live/show.html.heex:253 #, elixir-autogen, elixir-format msgid "Child Sites" msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:1142 +#: lib/towerops_web/live/org/settings_live.html.heex:1222 #, elixir-autogen, elixir-format msgid "Choose how data flows between TowerOps and NetBox. You can change this later." msgstr "" -#: lib/towerops_web/live/device_live/form.html.heex:309 +#: lib/towerops_web/live/device_live/form.html.heex:313 #, elixir-autogen, elixir-format msgid "Choose monitoring mode and configure SNMP settings for detailed device information." msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:1236 +#: lib/towerops_web/live/org/settings_live.html.heex:1324 #, elixir-autogen, elixir-format msgid "Choose which NetBox objects participate in sync. Devices and sites are recommended at minimum." msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:332 +#: lib/towerops_web/live/user_settings_live.html.heex:348 #, elixir-autogen, elixir-format msgid "Choose which organization you see by default when logging in or navigating to pages without an organization context." msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:1957 +#: lib/towerops_web/live/device_live/show.html.heex:2084 #, elixir-autogen, elixir-format msgid "Clear" msgstr "" @@ -872,23 +881,23 @@ msgstr "" msgid "Click markers to view site details" msgstr "" -#: lib/towerops_web/live/agent_live/index.html.heex:434 -#: lib/towerops_web/live/user_settings_live.html.heex:1417 +#: lib/towerops_web/live/agent_live/index.html.heex:448 +#: lib/towerops_web/live/user_settings_live.html.heex:1470 #, elixir-autogen, elixir-format msgid "Click the token to select all, or use the Copy button" msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:160 +#: lib/towerops_web/live/org/settings_live.html.heex:166 #, elixir-autogen, elixir-format msgid "Click to make this your default organization" msgstr "" -#: lib/towerops_web/live/agent_live/index.html.heex:512 +#: lib/towerops_web/live/agent_live/index.html.heex:528 #, elixir-autogen, elixir-format msgid "Close" msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:68 +#: lib/towerops_web/live/device_live/show.html.heex:76 #, elixir-autogen, elixir-format msgid "Cloud" msgstr "" @@ -898,12 +907,13 @@ msgstr "" msgid "Cloud Poller (Application-wide agent, not tied to this organization)" msgstr "" -#: lib/towerops_web/live/agent_live/index.html.heex:175 +#: lib/towerops_web/live/agent_live/index.html.heex:179 #, elixir-autogen, elixir-format msgid "Cloud Pollers" msgstr "" -#: lib/towerops_web/live/device_live/form.html.heex:384 +#: lib/towerops_web/live/device_live/form.html.heex:391 +#: lib/towerops_web/live/onboarding_live.html.heex:81 #, elixir-autogen, elixir-format msgid "Community String" msgstr "" @@ -918,12 +928,12 @@ msgstr "" msgid "Compare Gaiia inventory against Towerops device discovery. Reconciliation runs nightly." msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:230 +#: lib/towerops_web/live/device_live/show.html.heex:265 #, elixir-autogen, elixir-format msgid "Config Timeline" msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:1773 +#: lib/towerops_web/live/device_live/show.html.heex:1896 #, elixir-autogen, elixir-format msgid "Configuration Backups" msgstr "" @@ -933,27 +943,28 @@ msgstr "" msgid "Configuration Differences" msgstr "" -#: lib/towerops_web/live/org/integrations_live.html.heex:175 +#: lib/towerops_web/live/org/integrations_live.html.heex:152 +#: lib/towerops_web/live/org/integrations_live.html.heex:553 #, elixir-autogen, elixir-format msgid "Configure" msgstr "" -#: lib/towerops_web/live/device_live/form.html.heex:626 +#: lib/towerops_web/live/device_live/form.html.heex:639 #, elixir-autogen, elixir-format msgid "Configure MikroTik RouterOS API access. Works alongside SNMP for enhanced device management. SSH is used for device backups." msgstr "" -#: lib/towerops_web/live/device_live/form.html.heex:219 +#: lib/towerops_web/live/device_live/form.html.heex:221 #, elixir-autogen, elixir-format msgid "Configure how and how often this device should be monitored." msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:1585 +#: lib/towerops_web/live/device_live/show.html.heex:1702 #, elixir-autogen, elixir-format msgid "Configured VLANs" msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:493 +#: lib/towerops_web/live/user_settings_live.html.heex:517 #, elixir-autogen, elixir-format msgid "Confirm password" msgstr "" @@ -968,27 +979,29 @@ msgstr "" msgid "Connect third-party services to enhance your monitoring capabilities." msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:1083 +#: lib/towerops_web/live/device_live/show.html.heex:1150 #, elixir-autogen, elixir-format msgid "Connected Devices" msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:1096 +#: lib/towerops_web/live/org/settings_live.html.heex:1174 +#: lib/towerops_web/live/org/settings_live.html.heex:1561 +#: lib/towerops_web/live/org/settings_live.html.heex:1666 #, elixir-autogen, elixir-format msgid "Connection" msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:1463 +#: lib/towerops_web/live/org/settings_live.html.heex:1787 #, elixir-autogen, elixir-format msgid "Connection Settings" msgstr "" -#: lib/towerops_web/live/device_live/form.html.heex:598 +#: lib/towerops_web/live/device_live/form.html.heex:611 #, elixir-autogen, elixir-format msgid "Connection failed" msgstr "" -#: lib/towerops_web/live/device_live/form.html.heex:582 +#: lib/towerops_web/live/device_live/form.html.heex:595 #, elixir-autogen, elixir-format msgid "Connection successful!" msgstr "" @@ -1003,23 +1016,23 @@ msgstr "" msgid "Consent revoked successfully." msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:1496 +#: lib/towerops_web/live/user_settings_live.html.heex:1549 #, elixir-autogen, elixir-format msgid "Continue" msgstr "" -#: lib/towerops_web/live/agent_live/index.html.heex:430 -#: lib/towerops_web/live/user_settings_live.html.heex:1413 +#: lib/towerops_web/live/agent_live/index.html.heex:444 +#: lib/towerops_web/live/user_settings_live.html.heex:1466 #, elixir-autogen, elixir-format msgid "Copy" msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:1392 +#: lib/towerops_web/live/user_settings_live.html.heex:1445 #, elixir-autogen, elixir-format msgid "Copy this token now. You won't be able to see it again." msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:2228 +#: lib/towerops_web/live/device_live/show.html.heex:2357 #, elixir-autogen, elixir-format msgid "Copyable Raw Data" msgstr "" @@ -1034,17 +1047,17 @@ msgstr "" msgid "Could not accept invitation. You may already be a member." msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:967 +#: lib/towerops_web/live/device_live/show.html.heex:1031 #, elixir-autogen, elixir-format msgid "Counters" msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:1292 +#: lib/towerops_web/live/user_settings_live.html.heex:1343 #, elixir-autogen, elixir-format msgid "Create API Token" msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:528 +#: lib/towerops_web/live/user_settings_live.html.heex:554 #, elixir-autogen, elixir-format msgid "Create API tokens to access Towerops programmatically. Tokens are scoped to a specific organization." msgstr "" @@ -1059,12 +1072,12 @@ msgstr "" msgid "Create New Agent" msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:1339 +#: lib/towerops_web/live/user_settings_live.html.heex:1392 #, elixir-autogen, elixir-format msgid "Create Token" msgstr "" -#: lib/towerops_web/live/dashboard_live.html.heex:55 +#: lib/towerops_web/live/dashboard_live.html.heex:58 #, elixir-autogen, elixir-format msgid "Create a Site" msgstr "" @@ -1074,7 +1087,7 @@ msgstr "" msgid "Create a new organization to manage your sites and devices" msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:533 +#: lib/towerops_web/live/org/settings_live.html.heex:569 #, elixir-autogen, elixir-format msgid "Create an agent" msgstr "" @@ -1086,22 +1099,23 @@ msgstr "" #: lib/towerops_web/live/admin/org_live/index.html.heex:13 #: lib/towerops_web/live/agent_live/index.html.heex:136 -#: lib/towerops_web/live/agent_live/index.html.heex:246 +#: lib/towerops_web/live/agent_live/index.html.heex:252 #, elixir-autogen, elixir-format msgid "Created" msgstr "" -#: lib/towerops_web/live/org_live/new.html.heex:34 +#: lib/towerops_web/live/org_live/new.html.heex:35 #, elixir-autogen, elixir-format msgid "Creating..." msgstr "" +#: lib/towerops_web/live/alert_live/index.html.heex:48 #: lib/towerops_web/live/org/preseem_insights_live.html.heex:95 #, elixir-autogen, elixir-format msgid "Critical" msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:421 +#: lib/towerops_web/live/org/settings_live.html.heex:445 #, elixir-autogen, elixir-format msgid "Critical Security Warning:" msgstr "" @@ -1111,64 +1125,65 @@ msgstr "" msgid "Current Activity" msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:469 +#: lib/towerops_web/live/org/settings_live.html.heex:499 #, elixir-autogen, elixir-format msgid "Current Device Assignment:" msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:767 +#: lib/towerops_web/live/user_settings_live.html.heex:808 #, elixir-autogen, elixir-format msgid "Current Session" msgstr "" -#: lib/towerops_web/live/device_live/form.html.heex:729 -#: lib/towerops_web/live/site_live/form.html.heex:451 +#: lib/towerops_web/live/device_live/form.html.heex:749 +#: lib/towerops_web/live/site_live/form.html.heex:472 #, elixir-autogen, elixir-format msgid "Danger Zone" msgstr "" -#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:326 +#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:328 #, elixir-autogen, elixir-format msgid "Data mismatches (IP, serial, etc.)" msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:854 +#: lib/towerops_web/live/user_settings_live.html.heex:898 #, elixir-autogen, elixir-format msgid "Date & Time" msgstr "" -#: lib/towerops_web/live/agent_live/show.html.heex:75 +#: lib/towerops_web/live/agent_live/show.html.heex:83 #, elixir-autogen, elixir-format msgid "Debug Logs" msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:447 -#: lib/towerops_web/live/org/settings_live.html.heex:525 +#: lib/towerops_web/live/org/settings_live.html.heex:475 +#: lib/towerops_web/live/org/settings_live.html.heex:561 #, elixir-autogen, elixir-format msgid "Default Agent" msgstr "" -#: lib/towerops_web/live/site_live/form.html.heex:201 +#: lib/towerops_web/live/site_live/form.html.heex:205 #, elixir-autogen, elixir-format msgid "Default Agent for Site" msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:131 -#: lib/towerops_web/live/user_settings_live.html.heex:329 +#: lib/towerops_web/live/org/settings_live.html.heex:135 +#: lib/towerops_web/live/user_settings_live.html.heex:345 #, elixir-autogen, elixir-format msgid "Default Organization" msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:462 +#: lib/towerops_web/live/org/settings_live.html.heex:492 #, elixir-autogen, elixir-format msgid "Default Remote Agent" msgstr "" -#: lib/towerops_web/live/admin/org_live/index.html.heex:23 -#: lib/towerops_web/live/admin/user_live/index.html.heex:36 -#: lib/towerops_web/live/agent_live/index.html.heex:160 -#: lib/towerops_web/live/agent_live/index.html.heex:270 -#: lib/towerops_web/live/user_settings_live.html.heex:586 +#: lib/towerops_web/live/admin/org_live/index.html.heex:27 +#: lib/towerops_web/live/admin/user_live/index.html.heex:38 +#: lib/towerops_web/live/agent_live/index.html.heex:164 +#: lib/towerops_web/live/agent_live/index.html.heex:280 +#: lib/towerops_web/live/maintenance_live/show.html.heex:63 +#: lib/towerops_web/live/user_settings_live.html.heex:618 #, elixir-autogen, elixir-format msgid "Delete" msgstr "" @@ -1185,9 +1200,9 @@ msgstr "" #: lib/towerops_web/live/admin/security_live/index.html.heex:76 #: lib/towerops_web/live/admin/security_live/index.html.heex:99 -#: lib/towerops_web/live/device_live/form.html.heex:182 -#: lib/towerops_web/live/device_live/show.html.heex:2178 -#: lib/towerops_web/live/site_live/form.html.heex:177 +#: lib/towerops_web/live/device_live/form.html.heex:184 +#: lib/towerops_web/live/device_live/show.html.heex:2307 +#: lib/towerops_web/live/site_live/form.html.heex:179 #, elixir-autogen, elixir-format msgid "Description" msgstr "" @@ -1198,21 +1213,26 @@ msgstr "" msgid "Deselect All" msgstr "" -#: lib/towerops_web/live/agent_live/show.html.heex:119 +#: lib/towerops_web/live/agent_live/show.html.heex:129 #, elixir-autogen, elixir-format msgid "Development (tail):" msgstr "" #: lib/towerops_web/live/agent_live/index.html.heex:99 -#: lib/towerops_web/live/agent_live/index.html.heex:209 -#: lib/towerops_web/live/dashboard_live.html.heex:380 -#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:132 -#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:180 +#: lib/towerops_web/live/agent_live/index.html.heex:215 +#: lib/towerops_web/live/alert_live/index.html.heex:208 +#: lib/towerops_web/live/dashboard_live.html.heex:365 +#: lib/towerops_web/live/device_live/index.html.heex:266 +#: lib/towerops_web/live/maintenance_live/form.html.heex:84 +#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:134 +#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:182 +#: lib/towerops_web/live/site_live/show.html.heex:184 +#: lib/towerops_web/live/site_live/show.html.heex:382 #, elixir-autogen, elixir-format msgid "Device" msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:332 +#: lib/towerops_web/live/device_live/show.html.heex:367 #, elixir-autogen, elixir-format msgid "Device Information" msgstr "" @@ -1222,8 +1242,8 @@ msgstr "" msgid "Device Name" msgstr "" -#: lib/towerops_web/live/device_live/form.html.heex:189 -#: lib/towerops_web/live/org/settings_live.html.heex:1347 +#: lib/towerops_web/live/device_live/form.html.heex:191 +#: lib/towerops_web/live/org/settings_live.html.heex:1439 #, elixir-autogen, elixir-format msgid "Device Role" msgstr "" @@ -1239,7 +1259,7 @@ msgstr "" msgid "Device linked successfully" msgstr "" -#: lib/towerops_web/live/graph_live/show.ex:801 +#: lib/towerops_web/live/graph_live/show.ex:805 #, elixir-autogen, elixir-format msgid "Device no longer exists" msgstr "" @@ -1251,7 +1271,7 @@ msgstr "" msgid "Device not found" msgstr "" -#: lib/towerops_web/live/agent_live/show.html.heex:301 +#: lib/towerops_web/live/agent_live/show.html.heex:311 #, elixir-autogen, elixir-format msgid "Device that this agent is responsible for polling" msgstr "" @@ -1262,56 +1282,54 @@ msgstr "" msgid "Device unlinked" msgstr "" +#: lib/towerops_web/components/layouts.ex:268 +#: lib/towerops_web/components/layouts.ex:556 #: lib/towerops_web/live/admin/agent_live/index.html.heex:40 #: lib/towerops_web/live/admin/agent_live/index.html.heex:114 -#: lib/towerops_web/live/admin/user_live/index.html.heex:13 -#: lib/towerops_web/live/dashboard_live.html.heex:177 -#: lib/towerops_web/live/dashboard_live.html.heex:603 +#: lib/towerops_web/live/admin/user_live/index.html.heex:15 +#: lib/towerops_web/live/dashboard_live.html.heex:499 #: lib/towerops_web/live/mikrotik_backup_live/compare.html.heex:7 #: lib/towerops_web/live/org/preseem_devices_live.html.heex:29 -#: lib/towerops_web/live/org/settings_live.html.heex:1254 +#: lib/towerops_web/live/org/settings_live.html.heex:1344 #: lib/towerops_web/live/site_live/index.html.heex:48 +#: lib/towerops_web/live/site_live/show.html.heex:97 #, elixir-autogen, elixir-format msgid "Devices" msgstr "" -#: lib/towerops_web/live/device_live/index.html.heex:501 +#: lib/towerops_web/live/device_live/index.html.heex:559 #, elixir-autogen, elixir-format msgid "Devices will appear here as they are discovered via LLDP/CDP." msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:1196 +#: lib/towerops_web/live/device_live/index.html.heex:69 +#: lib/towerops_web/live/device_live/show.html.heex:1263 #: lib/towerops_web/live/network_map_live.html.heex:116 #, elixir-autogen, elixir-format msgid "Discovered" msgstr "" -#: lib/towerops_web/live/device_live/index.html.heex:582 +#: lib/towerops_web/live/device_live/index.html.heex:631 #, elixir-autogen, elixir-format msgid "Discovered By" msgstr "" -#: lib/towerops_web/live/device_live/index.html.heex:135 -#, elixir-autogen, elixir-format -msgid "Discovered Devices" -msgstr "" - -#: lib/towerops_web/live/device_live/show.html.heex:1310 +#: lib/towerops_web/live/device_live/show.html.heex:1423 #, elixir-autogen, elixir-format msgid "Discovered Neighbors" msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:2168 +#: lib/towerops_web/live/device_live/show.html.heex:2297 #, elixir-autogen, elixir-format msgid "Discovered Sensors" msgstr "" -#: lib/towerops_web/live/device_live/form.html.heex:549 +#: lib/towerops_web/live/device_live/form.html.heex:562 #, elixir-autogen, elixir-format msgid "Discovering..." msgstr "" -#: lib/towerops_web/live/device_live/show.ex:1283 +#: lib/towerops_web/live/device_live/show.ex:1298 #, elixir-autogen, elixir-format msgid "Discovery started for %{name}" msgstr "" @@ -1334,28 +1352,28 @@ msgstr "" msgid "Dismissed" msgstr "" -#: lib/towerops_web/live/agent_live/index.html.heex:440 +#: lib/towerops_web/live/agent_live/index.html.heex:454 #, elixir-autogen, elixir-format msgid "Docker Compose Setup with Auto-Updates" msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:1428 +#: lib/towerops_web/live/user_settings_live.html.heex:1481 #, elixir-autogen, elixir-format msgid "Done" msgstr "" -#: lib/towerops_web/live/dashboard_live.html.heex:606 +#: lib/towerops_web/live/dashboard_live.html.heex:502 #: lib/towerops_web/live/site_live/index.html.heex:51 #, elixir-autogen, elixir-format msgid "Down" msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:422 +#: lib/towerops_web/live/device_live/show.html.heex:465 #, elixir-autogen, elixir-format msgid "Download" msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:182 +#: lib/towerops_web/live/user_settings_live.html.heex:195 #, elixir-autogen, elixir-format msgid "Eastern Time (US & Canada)" msgstr "" @@ -1370,29 +1388,30 @@ msgstr "" msgid "Edit Device" msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:2007 +#: lib/towerops_web/live/device_live/show.html.heex:2134 #, elixir-autogen, elixir-format msgid "Edit Device Settings" msgstr "" #: lib/towerops_web/live/site_live/form.ex:61 +#: lib/towerops_web/live/site_live/show.html.heex:67 #, elixir-autogen, elixir-format msgid "Edit Site" msgstr "" #: lib/towerops_web/live/admin/user_live/index.html.heex:10 -#: lib/towerops_web/live/org/settings_live.html.heex:627 +#: lib/towerops_web/live/org/settings_live.html.heex:668 #, elixir-autogen, elixir-format msgid "Email" msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:385 +#: lib/towerops_web/live/user_settings_live.html.heex:404 #, elixir-autogen, elixir-format msgid "Email Address" msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:586 -#: lib/towerops_web/live/user_settings_live.html.heex:400 +#: lib/towerops_web/live/org/settings_live.html.heex:622 +#: lib/towerops_web/live/user_settings_live.html.heex:422 #, elixir-autogen, elixir-format msgid "Email address" msgstr "" @@ -1417,97 +1436,88 @@ msgstr "" msgid "Email confirmed successfully. You may now log in." msgstr "" -#: lib/towerops_web/live/device_live/form.html.heex:653 -#: lib/towerops_web/live/org/settings_live.html.heex:377 -#: lib/towerops_web/live/site_live/form.html.heex:391 +#: lib/towerops_web/live/device_live/form.html.heex:668 +#: lib/towerops_web/live/org/settings_live.html.heex:401 +#: lib/towerops_web/live/site_live/form.html.heex:407 #, elixir-autogen, elixir-format msgid "Enable MikroTik API" msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:2003 +#: lib/towerops_web/live/device_live/show.html.heex:2130 #, elixir-autogen, elixir-format msgid "Enable MikroTik API in device settings to enable configuration backups." msgstr "" -#: lib/towerops_web/live/device_live/form.html.heex:239 +#: lib/towerops_web/live/device_live/form.html.heex:241 #, elixir-autogen, elixir-format msgid "Enable Monitoring" msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:174 +#: lib/towerops_web/live/org/settings_live.html.heex:180 #, elixir-autogen, elixir-format msgid "Enable site organization to group devices into physical locations (offices, datacenters, etc.)." msgstr "" -#: lib/towerops_web/live/agent_live/edit.html.heex:68 +#: lib/towerops_web/live/agent_live/edit.html.heex:69 #, elixir-autogen, elixir-format msgid "Enable verbose logging for troubleshooting SNMP discovery and polling issues." msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:305 -#, elixir-autogen, elixir-format -msgid "English" -msgstr "" - #: lib/towerops_web/live/site_live/form.html.heex:101 #, elixir-autogen, elixir-format msgid "Enter a full address and click Geocode to automatically fill latitude/longitude" msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:1562 +#: lib/towerops_web/live/user_settings_live.html.heex:1640 #, elixir-autogen, elixir-format msgid "Enter the 6-digit code from your app to verify" msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:1125 +#: lib/towerops_web/live/org/settings_live.html.heex:1205 #, elixir-autogen, elixir-format msgid "Enter your NetBox API token" msgstr "" -#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:29 -#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:20 +#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:31 +#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:22 #, elixir-autogen, elixir-format msgid "Entity Mapping" msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:2016 +#: lib/towerops_web/live/device_live/show.html.heex:2143 #, elixir-autogen, elixir-format msgid "Event Logs" msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:300 +#: lib/towerops_web/live/device_live/show.html.heex:335 #, elixir-autogen, elixir-format msgid "Events" msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:1504 +#: lib/towerops_web/live/org/settings_live.html.heex:1828 #, elixir-autogen, elixir-format msgid "Events API v2" msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:2072 +#: lib/towerops_web/live/device_live/show.html.heex:2199 #, elixir-autogen, elixir-format msgid "Events will appear here as interface states change, speeds change, or other monitored changes occur." msgstr "" -#: lib/towerops_web/live/device_live/index.html.heex:121 -#, elixir-autogen, elixir-format -msgid "Existing Devices" -msgstr "" - +#: lib/towerops_web/live/alert_live/index.html.heex:11 #: lib/towerops_web/live/network_map_live.html.heex:10 #, elixir-autogen, elixir-format msgid "Experimental" msgstr "" -#: lib/towerops_web/live/device_live/form.html.heex:631 -#: lib/towerops_web/live/org/settings_live.html.heex:363 -#: lib/towerops_web/live/site_live/form.html.heex:383 +#: lib/towerops_web/live/device_live/form.html.heex:646 +#: lib/towerops_web/live/org/settings_live.html.heex:387 +#: lib/towerops_web/live/site_live/form.html.heex:399 #, elixir-autogen, elixir-format msgid "Experimental Feature:" msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:636 +#: lib/towerops_web/live/org/settings_live.html.heex:677 #, elixir-autogen, elixir-format msgid "Expires" msgstr "" @@ -1529,7 +1539,7 @@ msgid "Failed to dismiss" msgstr "" #: lib/towerops_web/live/dashboard_live.ex:62 -#: lib/towerops_web/live/device_live/show.ex:1356 +#: lib/towerops_web/live/device_live/show.ex:1371 #: lib/towerops_web/live/site_live/index.ex:46 #, elixir-autogen, elixir-format msgid "Failed to dismiss insight" @@ -1556,7 +1566,7 @@ msgstr "" msgid "Failed to generate diff: %{reason}" msgstr "" -#: lib/towerops_web/live/help_live/index.ex:84 +#: lib/towerops_web/live/help_live/index.ex:83 #, elixir-autogen, elixir-format msgid "Failed to generate password: %{reason}" msgstr "" @@ -1577,7 +1587,7 @@ msgstr "" msgid "Failed to link site" msgstr "" -#: lib/towerops_web/live/org/integrations_live.ex:167 +#: lib/towerops_web/live/org/integrations_live.ex:248 #, elixir-autogen, elixir-format msgid "Failed to regenerate webhook secret" msgstr "" @@ -1587,7 +1597,7 @@ msgstr "" msgid "Failed to remove from allowlist" msgstr "" -#: lib/towerops_web/live/org/settings_live.ex:215 +#: lib/towerops_web/live/org/settings_live.ex:251 #, elixir-autogen, elixir-format msgid "Failed to remove member" msgstr "" @@ -1597,22 +1607,22 @@ msgstr "" msgid "Failed to revoke consent." msgstr "" -#: lib/towerops_web/live/org/settings_live.ex:432 +#: lib/towerops_web/live/org/settings_live.ex:444 #, elixir-autogen, elixir-format msgid "Failed to save webhook secret" msgstr "" -#: lib/towerops_web/live/org/settings_live.ex:179 +#: lib/towerops_web/live/org/settings_live.ex:215 #, elixir-autogen, elixir-format msgid "Failed to send invitation: %{errors}" msgstr "" -#: lib/towerops_web/live/org/settings_live.ex:257 +#: lib/towerops_web/live/org/settings_live.ex:293 #, elixir-autogen, elixir-format msgid "Failed to set default organization" msgstr "" -#: lib/towerops_web/live/device_live/show.ex:1286 +#: lib/towerops_web/live/device_live/show.ex:1301 #, elixir-autogen, elixir-format msgid "Failed to start discovery. Please try again." msgstr "" @@ -1633,56 +1643,56 @@ msgstr "" msgid "Failed to unlink site" msgstr "" -#: lib/towerops_web/live/org/integrations_live.ex:189 -#: lib/towerops_web/live/org/settings_live.ex:454 +#: lib/towerops_web/live/org/integrations_live.ex:291 +#: lib/towerops_web/live/org/settings_live.ex:466 #, elixir-autogen, elixir-format msgid "Failed to update integration" msgstr "" -#: lib/towerops_web/live/org/settings_live.ex:234 +#: lib/towerops_web/live/org/settings_live.ex:270 #, elixir-autogen, elixir-format msgid "Failed to update role" msgstr "" -#: lib/towerops_web/live/agent_live/index.html.heex:289 +#: lib/towerops_web/live/agent_live/index.html.heex:299 #, elixir-autogen, elixir-format msgid "Fallback agent for organizations without a default agent configured. Devices with no assignment at any level will use this agent." msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:2106 -#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:183 +#: lib/towerops_web/live/device_live/show.html.heex:2235 +#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:185 #, elixir-autogen, elixir-format msgid "Field" msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:1335 +#: lib/towerops_web/live/org/settings_live.html.heex:1425 #, elixir-autogen, elixir-format msgid "Filters" msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:1003 +#: lib/towerops_web/live/device_live/show.html.heex:1068 #, elixir-autogen, elixir-format msgid "Firewall" msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:392 +#: lib/towerops_web/live/device_live/show.html.heex:435 #, elixir-autogen, elixir-format msgid "Firmware Update Available" msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:129 +#: lib/towerops_web/live/user_settings_live.html.heex:142 #, elixir-autogen, elixir-format msgid "First name" msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:330 -#: lib/towerops_web/live/org/settings_live.html.heex:503 +#: lib/towerops_web/live/org/settings_live.html.heex:346 +#: lib/towerops_web/live/org/settings_live.html.heex:533 #, elixir-autogen, elixir-format msgid "Force Apply to All Devices" msgstr "" -#: lib/towerops_web/live/site_live/form.html.heex:215 -#: lib/towerops_web/live/site_live/form.html.heex:354 +#: lib/towerops_web/live/site_live/form.html.heex:219 +#: lib/towerops_web/live/site_live/form.html.heex:366 #, elixir-autogen, elixir-format msgid "Force Apply to Site Device" msgstr "" @@ -1692,7 +1702,7 @@ msgstr "" msgid "Free organization limit reached" msgstr "" -#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:189 +#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:191 #, elixir-autogen, elixir-format msgid "Gaiia" msgstr "" @@ -1702,12 +1712,12 @@ msgstr "" msgid "Gaiia Entity Mapping" msgstr "" -#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:142 +#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:146 #, elixir-autogen, elixir-format msgid "Gaiia ID" msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:2378 +#: lib/towerops_web/live/device_live/show.html.heex:2515 #, elixir-autogen, elixir-format msgid "Gaiia Inventory Item" msgstr "" @@ -1718,12 +1728,12 @@ msgstr "" msgid "Gaiia Inventory Reconciliation" msgstr "" -#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:232 +#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:234 #, elixir-autogen, elixir-format msgid "Gaiia Item" msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:2488 +#: lib/towerops_web/live/device_live/show.html.heex:2625 #, elixir-autogen, elixir-format msgid "Gaiia Network Site" msgstr "" @@ -1780,17 +1790,17 @@ msgstr "" msgid "Geographic locations of your sites" msgstr "" -#: lib/towerops_web/live/device_live/index.html.heex:177 +#: lib/towerops_web/live/device_live/index.html.heex:152 #, elixir-autogen, elixir-format msgid "Get started by adding your first device." msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:540 +#: lib/towerops_web/live/user_settings_live.html.heex:568 #, elixir-autogen, elixir-format msgid "Get started by creating a new API token." msgstr "" -#: lib/towerops_web/live/org_live/index.html.heex:35 +#: lib/towerops_web/live/org_live/index.html.heex:42 #, elixir-autogen, elixir-format msgid "Get started by creating a new organization." msgstr "" @@ -1800,12 +1810,12 @@ msgstr "" msgid "Get started by creating your first remote agent." msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:1296 +#: lib/towerops_web/live/user_settings_live.html.heex:1347 #, elixir-autogen, elixir-format msgid "Give this token a name and select the organization it will have access to." msgstr "" -#: lib/towerops_web/live/agent_live/index.html.heex:286 +#: lib/towerops_web/live/agent_live/index.html.heex:296 #, elixir-autogen, elixir-format msgid "Global Default Cloud Poller" msgstr "" @@ -1821,66 +1831,53 @@ msgstr "" msgid "Go to your org settings to connect an integration." msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:2359 +#: lib/towerops_web/live/device_live/show.html.heex:2496 #, elixir-autogen, elixir-format msgid "Graph" msgstr "" -#: lib/towerops_web/live/device_live/index.html.heex:539 -#, elixir-autogen, elixir-format -msgid "HOST" -msgstr "" - -#: lib/towerops_web/live/dashboard_live.html.heex:126 -#, elixir-autogen, elixir-format -msgid "Health" -msgstr "" - #: lib/towerops_web/live/admin/monitoring_live.html.heex:165 #, elixir-autogen, elixir-format msgid "Health Metrics" msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:2136 +#: lib/towerops_web/live/device_live/show.html.heex:2265 #, elixir-autogen, elixir-format msgid "Health Sensor Table Walk" msgstr "" +#: lib/towerops_web/components/layouts.ex:418 +#: lib/towerops_web/components/layouts.ex:611 #: lib/towerops_web/live/help_live/index.ex:34 #, elixir-autogen, elixir-format msgid "Help" msgstr "" -#: lib/towerops_web/live/device_live/index.html.heex:550 +#: lib/towerops_web/live/device_live/index.html.heex:604 #, elixir-autogen, elixir-format msgid "Hostname" msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:1400 +#: lib/towerops_web/live/org/settings_live.html.heex:1492 #, elixir-autogen, elixir-format msgid "How often TowerOps checks NetBox for changes. 30 minutes is recommended for most setups." msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:1702 +#: lib/towerops_web/live/user_settings_live.html.heex:1784 #, elixir-autogen, elixir-format msgid "I've Saved These Codes" msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:574 +#: lib/towerops_web/live/device_live/show.html.heex:625 #, elixir-autogen, elixir-format msgid "ICMP Latency" msgstr "" -#: lib/towerops_web/live/device_live/form.html.heex:345 +#: lib/towerops_web/live/device_live/form.html.heex:351 #, elixir-autogen, elixir-format msgid "ICMP Only" msgstr "" -#: lib/towerops_web/live/device_live/index.html.heex:530 -#, elixir-autogen, elixir-format -msgid "IP" -msgstr "" - #: lib/towerops_web/live/admin/security_live/index.ex:97 #, elixir-autogen, elixir-format msgid "IP %{ip_address} unblocked" @@ -1893,17 +1890,18 @@ msgstr "" #: lib/towerops_web/live/admin/security_live/index.html.heex:154 #: lib/towerops_web/live/device_live/form.html.heex:127 -#: lib/towerops_web/live/device_live/index.html.heex:239 -#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:149 -#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:135 -#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:235 -#: lib/towerops_web/live/org/preseem_devices_live.html.heex:135 -#: lib/towerops_web/live/user_settings_live.html.heex:878 +#: lib/towerops_web/live/device_live/index.html.heex:272 +#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:153 +#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:137 +#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:237 +#: lib/towerops_web/live/org/preseem_devices_live.html.heex:137 +#: lib/towerops_web/live/site_live/show.html.heex:383 +#: lib/towerops_web/live/user_settings_live.html.heex:922 #, elixir-autogen, elixir-format msgid "IP Address" msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:2466 +#: lib/towerops_web/live/device_live/show.html.heex:2603 #, elixir-autogen, elixir-format msgid "IP Address (Gaiia)" msgstr "" @@ -1913,8 +1911,8 @@ msgstr "" msgid "IP Address or CIDR" msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:200 -#: lib/towerops_web/live/org/settings_live.html.heex:1298 +#: lib/towerops_web/live/device_live/show.html.heex:235 +#: lib/towerops_web/live/org/settings_live.html.heex:1388 #, elixir-autogen, elixir-format msgid "IP Addresses" msgstr "" @@ -1929,22 +1927,22 @@ msgstr "" msgid "IP/CIDR added to allowlist" msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:1301 +#: lib/towerops_web/live/org/settings_live.html.heex:1391 #, elixir-autogen, elixir-format msgid "IPAM data — assigned IPs, prefixes, VRFs" msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:1657 +#: lib/towerops_web/live/device_live/show.html.heex:1776 #, elixir-autogen, elixir-format msgid "IPv4" msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:1714 +#: lib/towerops_web/live/device_live/show.html.heex:1835 #, elixir-autogen, elixir-format msgid "IPv6" msgstr "" -#: lib/towerops_web/live/device_live/index.html.heex:516 +#: lib/towerops_web/live/device_live/index.html.heex:571 #, elixir-autogen, elixir-format msgid "Identifier" msgstr "" @@ -1954,22 +1952,25 @@ msgstr "" msgid "Identity verified." msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:1688 +#: lib/towerops_web/live/user_settings_live.html.heex:1768 #, elixir-autogen, elixir-format msgid "If you lose your authenticator and these codes, you won't be able to access your account." msgstr "" -#: lib/towerops_web/live/dashboard_live.html.heex:386 +#: lib/towerops_web/live/alert_live/index.html.heex:132 +#: lib/towerops_web/live/alert_live/index.html.heex:232 +#: lib/towerops_web/live/alert_live/index.html.heex:455 +#: lib/towerops_web/live/dashboard_live.html.heex:371 #, elixir-autogen, elixir-format msgid "Impact" msgstr "" -#: lib/towerops_web/live/admin/user_live/index.html.heex:26 +#: lib/towerops_web/live/admin/user_live/index.html.heex:28 #, elixir-autogen, elixir-format msgid "Impersonate" msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:1683 +#: lib/towerops_web/live/user_settings_live.html.heex:1761 #, elixir-autogen, elixir-format msgid "Important" msgstr "" @@ -1987,46 +1988,47 @@ msgstr "" msgid "Insight dismissed" msgstr "" -#: lib/towerops_web/live/dashboard_live.html.heex:280 -#: lib/towerops_web/live/dashboard_live.html.heex:451 +#: lib/towerops_web/components/layouts.ex:353 +#: lib/towerops_web/components/layouts.ex:582 +#: lib/towerops_web/live/dashboard_live.html.heex:594 #: lib/towerops_web/live/insights_live/index.ex:17 #: lib/towerops_web/live/org/preseem_devices_live.html.heex:35 -#: lib/towerops_web/live/site_live/index.html.heex:123 +#: lib/towerops_web/live/site_live/index.html.heex:151 #, elixir-autogen, elixir-format msgid "Insights" msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:1506 +#: lib/towerops_web/live/org/settings_live.html.heex:1831 #, elixir-autogen, elixir-format msgid "Integration Key" msgstr "" -#: lib/towerops_web/live/org/integrations_live.ex:125 -#: lib/towerops_web/live/org/settings_live.ex:374 +#: lib/towerops_web/live/org/integrations_live.ex:194 +#: lib/towerops_web/live/org/settings_live.ex:411 #, elixir-autogen, elixir-format msgid "Integration saved successfully" msgstr "" -#: lib/towerops_web/live/org/integrations_live.ex:186 -#: lib/towerops_web/live/org/settings_live.ex:451 +#: lib/towerops_web/live/org/integrations_live.ex:288 +#: lib/towerops_web/live/org/settings_live.ex:463 #, elixir-autogen, elixir-format msgid "Integration updated" msgstr "" #: lib/towerops_web/live/org/integrations_live.html.heex:15 -#: lib/towerops_web/live/org/settings_live.html.heex:87 -#: lib/towerops_web/live/org/settings_live.html.heex:1501 -#: lib/towerops_web/live/org/settings_live.html.heex:1551 +#: lib/towerops_web/live/org/settings_live.html.heex:91 +#: lib/towerops_web/live/org/settings_live.html.heex:1825 +#: lib/towerops_web/live/org/settings_live.html.heex:1884 #, elixir-autogen, elixir-format msgid "Integrations" msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:1320 +#: lib/towerops_web/live/org/settings_live.html.heex:1410 #, elixir-autogen, elixir-format msgid "Interfaces" msgstr "" -#: lib/towerops_web/controllers/user_session_controller.ex:192 +#: lib/towerops_web/controllers/user_session_controller.ex:209 #: lib/towerops_web/controllers/user_sudo_controller.ex:91 #, elixir-autogen, elixir-format msgid "Invalid authentication code. Please try again." @@ -2048,37 +2050,37 @@ msgstr "" msgid "Invalid or expired invitation link." msgstr "" -#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:73 +#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:75 #, elixir-autogen, elixir-format msgid "Inventory Items" msgstr "" -#: lib/towerops_web/live/org/settings_live.ex:193 +#: lib/towerops_web/live/org/settings_live.ex:229 #, elixir-autogen, elixir-format msgid "Invitation cancelled" msgstr "" -#: lib/towerops_web/live/org/settings_live.ex:196 +#: lib/towerops_web/live/org/settings_live.ex:232 #, elixir-autogen, elixir-format msgid "Invitation not found" msgstr "" -#: lib/towerops_web/live/org/settings_live.ex:174 +#: lib/towerops_web/live/org/settings_live.ex:209 #, elixir-autogen, elixir-format msgid "Invitation sent to %{email}" msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:617 +#: lib/towerops_web/live/org/settings_live.html.heex:658 #, elixir-autogen, elixir-format msgid "Invitations that haven't been accepted yet." msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:573 +#: lib/towerops_web/live/org/settings_live.html.heex:609 #, elixir-autogen, elixir-format msgid "Invite a Team Member" msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:2844 +#: lib/towerops_web/live/device_live/show.html.heex:2981 #, elixir-autogen, elixir-format msgid "Jitter (ms)" msgstr "" @@ -2093,18 +2095,18 @@ msgstr "" msgid "Job Monitoring Dashboard" msgstr "" -#: lib/towerops_web/live/admin/user_live/index.html.heex:14 -#: lib/towerops_web/live/org/settings_live.html.heex:713 +#: lib/towerops_web/live/admin/user_live/index.html.heex:16 +#: lib/towerops_web/live/org/settings_live.html.heex:754 #, elixir-autogen, elixir-format msgid "Joined" msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:296 +#: lib/towerops_web/live/user_settings_live.html.heex:309 #, elixir-autogen, elixir-format msgid "Language" msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:2322 +#: lib/towerops_web/live/device_live/show.html.heex:2455 #, elixir-autogen, elixir-format msgid "Last Checked" msgstr "" @@ -2112,14 +2114,14 @@ msgstr "" #: lib/towerops_web/live/admin/agent_live/index.html.heex:53 #: lib/towerops_web/live/admin/agent_live/index.html.heex:127 #: lib/towerops_web/live/agent_live/index.html.heex:112 -#: lib/towerops_web/live/agent_live/index.html.heex:222 -#: lib/towerops_web/live/device_live/index.html.heex:251 -#: lib/towerops_web/live/device_live/index.html.heex:599 +#: lib/towerops_web/live/agent_live/index.html.heex:228 +#: lib/towerops_web/live/device_live/index.html.heex:290 +#: lib/towerops_web/live/device_live/index.html.heex:647 #, elixir-autogen, elixir-format msgid "Last Seen" msgstr "" -#: lib/towerops_web/live/agent_live/show.html.heex:276 +#: lib/towerops_web/live/agent_live/show.html.heex:286 #, elixir-autogen, elixir-format msgid "Last Seen (Heartbeat)" msgstr "" @@ -2129,65 +2131,67 @@ msgstr "" msgid "Last Violation" msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:148 +#: lib/towerops_web/live/user_settings_live.html.heex:161 #, elixir-autogen, elixir-format msgid "Last name" msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:939 +#: lib/towerops_web/live/org/settings_live.html.heex:1015 #, elixir-autogen, elixir-format msgid "Last sync failed" msgstr "" -#: lib/towerops_web/live/org/integrations_live.html.heex:54 +#: lib/towerops_web/live/org/integrations_live.html.heex:75 +#: lib/towerops_web/live/org/integrations_live.html.heex:452 #, elixir-autogen, elixir-format msgid "Last synced:" msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:2838 +#: lib/towerops_web/live/device_live/show.html.heex:2975 #, elixir-autogen, elixir-format msgid "Latency (ms)" msgstr "" -#: lib/towerops_web/live/trace_live/index.html.heex:256 +#: lib/towerops_web/live/trace_live/index.html.heex:269 #, elixir-autogen, elixir-format msgid "Latest Metrics" msgstr "" -#: lib/towerops_web/live/site_live/form.html.heex:110 +#: lib/towerops_web/live/onboarding_live.html.heex:162 +#: lib/towerops_web/live/site_live/form.html.heex:112 #, elixir-autogen, elixir-format msgid "Latitude" msgstr "" -#: lib/towerops_web/live/site_live/form.html.heex:267 -#: lib/towerops_web/live/site_live/form.html.heex:289 -#: lib/towerops_web/live/site_live/form.html.heex:399 -#: lib/towerops_web/live/site_live/form.html.heex:406 +#: lib/towerops_web/live/site_live/form.html.heex:279 +#: lib/towerops_web/live/site_live/form.html.heex:301 +#: lib/towerops_web/live/site_live/form.html.heex:415 +#: lib/towerops_web/live/site_live/form.html.heex:422 #, elixir-autogen, elixir-format msgid "Leave blank to inherit from organization" msgstr "" -#: lib/towerops_web/live/site_live/form.html.heex:348 +#: lib/towerops_web/live/site_live/form.html.heex:360 #, elixir-autogen, elixir-format msgid "Leave blank to inherit from organization (default: 161)" msgstr "" -#: lib/towerops_web/live/device_live/form.html.heex:385 -#: lib/towerops_web/live/device_live/form.html.heex:434 -#: lib/towerops_web/live/device_live/form.html.heex:662 -#: lib/towerops_web/live/device_live/form.html.heex:671 +#: lib/towerops_web/live/device_live/form.html.heex:392 +#: lib/towerops_web/live/device_live/form.html.heex:443 +#: lib/towerops_web/live/device_live/form.html.heex:677 +#: lib/towerops_web/live/device_live/form.html.heex:686 #, elixir-autogen, elixir-format msgid "Leave blank to inherit from site/organization" msgstr "" -#: lib/towerops_web/live/dashboard_live.html.heex:42 +#: lib/towerops_web/live/dashboard_live.html.heex:45 #, elixir-autogen, elixir-format msgid "Let's get started!" msgstr "" -#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:226 -#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:249 -#: lib/towerops_web/live/org/preseem_devices_live.html.heex:212 +#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:257 +#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:280 +#: lib/towerops_web/live/org/preseem_devices_live.html.heex:223 #, elixir-autogen, elixir-format msgid "Link" msgstr "" @@ -2197,82 +2201,75 @@ msgstr "" msgid "Link Gaiia entities to your Towerops sites and devices. Match suggestions are shown in amber." msgstr "" -#: lib/towerops_web/live/org/preseem_devices_live.html.heex:147 +#: lib/towerops_web/live/org/preseem_devices_live.html.heex:149 #, elixir-autogen, elixir-format msgid "Linked Device" msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:2531 +#: lib/towerops_web/live/device_live/show.html.heex:2668 #, elixir-autogen, elixir-format msgid "Linked Subscriber" msgstr "" -#: lib/towerops_web/live/activity_feed_live.html.heex:129 +#: lib/towerops_web/live/activity_feed_live.html.heex:131 #, elixir-autogen, elixir-format msgid "Live" msgstr "" #: lib/towerops_web/live/site_live/index.html.heex:60 -#: lib/towerops_web/live/user_settings_live.html.heex:872 +#: lib/towerops_web/live/user_settings_live.html.heex:916 #, elixir-autogen, elixir-format msgid "Location" msgstr "" -#: lib/towerops_web/controllers/user_session_controller.ex:119 +#: lib/towerops_web/controllers/user_session_controller.ex:136 #, elixir-autogen, elixir-format msgid "Logged out successfully." msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:827 +#: lib/towerops_web/live/user_settings_live.html.heex:871 #, elixir-autogen, elixir-format msgid "Login History" msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:206 +#: lib/towerops_web/live/user_settings_live.html.heex:219 #, elixir-autogen, elixir-format msgid "London" msgstr "" -#: lib/towerops_web/live/site_live/form.html.heex:132 +#: lib/towerops_web/live/onboarding_live.html.heex:169 +#: lib/towerops_web/live/site_live/form.html.heex:134 #, elixir-autogen, elixir-format msgid "Longitude" msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:2847 +#: lib/towerops_web/live/device_live/show.html.heex:2984 #, elixir-autogen, elixir-format msgid "Loss (%)" msgstr "" -#: lib/towerops_web/live/device_live/index.html.heex:521 -#, elixir-autogen, elixir-format -msgid "MAC" -msgstr "" - -#: lib/towerops_web/live/device_live/show.html.heex:2456 +#: lib/towerops_web/live/device_live/show.html.heex:2593 #, elixir-autogen, elixir-format msgid "MAC Address" msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:1499 +#: lib/towerops_web/live/device_live/show.html.heex:1614 #, elixir-autogen, elixir-format msgid "MAC Address Table" msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:168 +#: lib/towerops_web/live/device_live/show.html.heex:203 #, elixir-autogen, elixir-format msgid "MAC Table" msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:2613 +#: lib/towerops_web/live/device_live/show.html.heex:2750 +#: lib/towerops_web/live/site_live/show.html.heex:187 +#: lib/towerops_web/live/site_live/show.html.heex:386 #, elixir-autogen, elixir-format msgid "MRR" msgstr "" -#: lib/towerops_web/live/dashboard_live.html.heex:241 -#, elixir-autogen, elixir-format -msgid "MRR at Risk" -msgstr "" - #: lib/towerops_web/controllers/user_session_controller.ex:112 #, elixir-autogen, elixir-format msgid "Magic link is invalid or it has expired." @@ -2288,12 +2285,12 @@ msgstr "" msgid "Manage Sites" msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:1035 +#: lib/towerops_web/live/user_settings_live.html.heex:1079 #, elixir-autogen, elixir-format msgid "Manage TOTP devices for two-factor authentication. You must have at least one device configured." msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:740 +#: lib/towerops_web/live/user_settings_live.html.heex:773 #, elixir-autogen, elixir-format msgid "Manage browser sessions where you're currently logged in." msgstr "" @@ -2303,7 +2300,7 @@ msgstr "" msgid "Manage device matching between Preseem access points and your monitored devices." msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:615 +#: lib/towerops_web/live/user_settings_live.html.heex:647 #, elixir-autogen, elixir-format msgid "Manage mobile devices that receive push notifications for alerts." msgstr "" @@ -2328,18 +2325,18 @@ msgstr "" msgid "Manage your site locations and hierarchy" msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:1192 +#: lib/towerops_web/live/device_live/show.html.heex:1259 #, elixir-autogen, elixir-format msgid "Managed" msgstr "" -#: lib/towerops_web/live/device_live/index.html.heex:572 -#: lib/towerops_web/live/device_live/show.html.heex:2426 +#: lib/towerops_web/live/device_live/index.html.heex:624 +#: lib/towerops_web/live/device_live/show.html.heex:2563 #, elixir-autogen, elixir-format msgid "Manufacturer" msgstr "" -#: lib/towerops_web/live/site_live/form.html.heex:156 +#: lib/towerops_web/live/site_live/form.html.heex:158 #, elixir-autogen, elixir-format msgid "Map Preview" msgstr "" @@ -2349,7 +2346,7 @@ msgstr "" msgid "Map to Gaiia inventory" msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:2812 +#: lib/towerops_web/live/device_live/show.html.heex:2949 #, elixir-autogen, elixir-format msgid "Match Type" msgstr "" @@ -2359,84 +2356,78 @@ msgstr "" msgid "Matched" msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:771 -#, elixir-autogen, elixir-format -msgid "Member" -msgstr "" - -#: lib/towerops_web/live/org/settings_live.ex:208 +#: lib/towerops_web/live/org/settings_live.ex:244 #, elixir-autogen, elixir-format msgid "Member removed" msgstr "" #: lib/towerops_web/live/admin/org_live/index.html.heex:12 -#: lib/towerops_web/live/org/settings_live.html.heex:75 -#: lib/towerops_web/live/org/settings_live.html.heex:694 +#: lib/towerops_web/live/org/settings_live.html.heex:79 +#: lib/towerops_web/live/org/settings_live.html.heex:735 #, elixir-autogen, elixir-format msgid "Members" msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:717 +#: lib/towerops_web/live/device_live/show.html.heex:778 #, elixir-autogen, elixir-format msgid "Memory Usage" msgstr "" -#: lib/towerops_web/components/layouts.ex:296 -#: lib/towerops_web/components/layouts.ex:301 +#: lib/towerops_web/components/layouts.ex:437 #, elixir-autogen, elixir-format msgid "Menu" msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:1220 +#: lib/towerops_web/live/org/settings_live.html.heex:1306 #, elixir-autogen, elixir-format msgid "Merge data from both systems. Conflicts resolved by most-recently-updated. Requires write token." msgstr "" -#: lib/towerops_web/live/dashboard_live.html.heex:383 +#: lib/towerops_web/live/alert_live/index.html.heex:220 #, elixir-autogen, elixir-format msgid "Message" msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:866 +#: lib/towerops_web/live/user_settings_live.html.heex:910 #, elixir-autogen, elixir-format msgid "Method" msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:54 +#: lib/towerops_web/live/org/settings_live.html.heex:57 #, elixir-autogen, elixir-format msgid "MikroTik" msgstr "" -#: lib/towerops_web/live/device_live/form.html.heex:623 -#: lib/towerops_web/live/org/settings_live.html.heex:355 -#: lib/towerops_web/live/site_live/form.html.heex:374 +#: lib/towerops_web/live/device_live/form.html.heex:636 +#: lib/towerops_web/live/org/settings_live.html.heex:377 +#: lib/towerops_web/live/site_live/form.html.heex:388 #, elixir-autogen, elixir-format msgid "MikroTik API Configuration" msgstr "" -#: lib/towerops_web/live/device_live/form.html.heex:632 -#: lib/towerops_web/live/org/settings_live.html.heex:364 -#: lib/towerops_web/live/site_live/form.html.heex:384 +#: lib/towerops_web/live/device_live/form.html.heex:647 +#: lib/towerops_web/live/org/settings_live.html.heex:388 +#: lib/towerops_web/live/site_live/form.html.heex:400 #, elixir-autogen, elixir-format msgid "MikroTik API integration is under active development." msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:2000 +#: lib/towerops_web/live/device_live/show.html.heex:2127 #, elixir-autogen, elixir-format msgid "MikroTik API not enabled" msgstr "" -#: lib/towerops_web/live/device_live/form.html.heex:493 -#: lib/towerops_web/live/device_live/form.html.heex:521 -#: lib/towerops_web/live/org/settings_live.html.heex:289 -#: lib/towerops_web/live/org/settings_live.html.heex:314 -#: lib/towerops_web/live/site_live/form.html.heex:313 -#: lib/towerops_web/live/site_live/form.html.heex:338 +#: lib/towerops_web/live/device_live/form.html.heex:502 +#: lib/towerops_web/live/device_live/form.html.heex:530 +#: lib/towerops_web/live/org/settings_live.html.heex:305 +#: lib/towerops_web/live/org/settings_live.html.heex:330 +#: lib/towerops_web/live/site_live/form.html.heex:325 +#: lib/towerops_web/live/site_live/form.html.heex:350 #, elixir-autogen, elixir-format msgid "Min 8 characters" msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:2473 +#: lib/towerops_web/live/device_live/show.html.heex:2610 #, elixir-autogen, elixir-format msgid "Mismatch" msgstr "" @@ -2446,71 +2437,68 @@ msgstr "" msgid "Missing required parameters" msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:612 +#: lib/towerops_web/live/user_settings_live.html.heex:644 #, elixir-autogen, elixir-format msgid "Mobile Devices" msgstr "" -#: lib/towerops_web/live/mobile_qr_live.ex:65 +#: lib/towerops_web/live/mobile_qr_live.ex:71 #, elixir-autogen, elixir-format msgid "Mobile device authenticated successfully!" msgstr "" -#: lib/towerops_web/live/dashboard_live.html.heex:91 +#: lib/towerops_web/live/dashboard_live.html.heex:94 #, elixir-autogen, elixir-format msgid "Monitor & Receive Alerts" msgstr "" -#: lib/towerops_web/live/device_live/index.html.heex:10 -#, elixir-autogen, elixir-format -msgid "Monitor and manage all your network devices" -msgstr "" - -#: lib/towerops_web/live/admin/dashboard_live.html.heex:36 +#: lib/towerops_web/live/admin/dashboard_live.html.heex:38 #, elixir-autogen, elixir-format msgid "Monitor background jobs and queues" msgstr "" -#: lib/towerops_web/live/device_live/form.html.heex:352 +#: lib/towerops_web/live/device_live/form.html.heex:358 #, elixir-autogen, elixir-format msgid "Monitor device availability with ICMP pings and collect detailed information via SNMP" msgstr "" -#: lib/towerops_web/live/device_live/form.html.heex:216 +#: lib/towerops_web/live/device_live/form.html.heex:218 #, elixir-autogen, elixir-format msgid "Monitoring Configuration" msgstr "" -#: lib/towerops_web/live/device_live/form.html.heex:318 +#: lib/towerops_web/live/device_live/form.html.heex:324 #, elixir-autogen, elixir-format msgid "Monitoring mode" msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:2514 +#: lib/towerops_web/live/device_live/show.html.heex:2651 +#: lib/towerops_web/live/site_live/show.html.heex:87 #, elixir-autogen, elixir-format msgid "Monthly Revenue" msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:194 +#: lib/towerops_web/live/user_settings_live.html.heex:207 #, elixir-autogen, elixir-format msgid "Mountain Time (US & Canada)" msgstr "" +#: lib/towerops_web/components/layouts.ex:476 #: lib/towerops_web/live/account_live/my_data.ex:58 -#: lib/towerops_web/live/user_settings_live.html.heex:97 +#: lib/towerops_web/live/user_settings_live.html.heex:111 #, elixir-autogen, elixir-format msgid "My Data" msgstr "" #: lib/towerops_web/live/admin/monitoring_live.html.heex:36 #: lib/towerops_web/live/admin/monitoring_live.html.heex:253 -#: lib/towerops_web/live/device_live/show.html.heex:764 -#: lib/towerops_web/live/device_live/show.html.heex:876 -#: lib/towerops_web/live/device_live/show.html.heex:913 -#: lib/towerops_web/live/device_live/show.html.heex:953 -#: lib/towerops_web/live/device_live/show.html.heex:992 -#: lib/towerops_web/live/device_live/show.html.heex:1025 -#: lib/towerops_web/live/device_live/show.html.heex:1067 +#: lib/towerops_web/live/device_live/show.html.heex:825 +#: lib/towerops_web/live/device_live/show.html.heex:937 +#: lib/towerops_web/live/device_live/show.html.heex:976 +#: lib/towerops_web/live/device_live/show.html.heex:1016 +#: lib/towerops_web/live/device_live/show.html.heex:1057 +#: lib/towerops_web/live/device_live/show.html.heex:1090 +#: lib/towerops_web/live/device_live/show.html.heex:1134 #, elixir-autogen, elixir-format msgid "N/A" msgstr "" @@ -2519,36 +2507,38 @@ msgstr "" #: lib/towerops_web/live/admin/agent_live/index.html.heex:90 #: lib/towerops_web/live/admin/org_live/index.html.heex:10 #: lib/towerops_web/live/agent_live/index.html.heex:75 -#: lib/towerops_web/live/agent_live/index.html.heex:185 -#: lib/towerops_web/live/device_live/index.html.heex:233 -#: lib/towerops_web/live/device_live/show.html.heex:2304 -#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:136 -#: lib/towerops_web/live/org/preseem_devices_live.html.heex:123 +#: lib/towerops_web/live/agent_live/index.html.heex:191 +#: lib/towerops_web/live/device_live/show.html.heex:2437 +#: lib/towerops_web/live/maintenance_live/form.html.heex:30 +#: lib/towerops_web/live/maintenance_live/index.html.heex:86 +#: lib/towerops_web/live/onboarding_live.html.heex:148 +#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:140 +#: lib/towerops_web/live/org/preseem_devices_live.html.heex:125 #, elixir-autogen, elixir-format msgid "Name" msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:1257 +#: lib/towerops_web/live/org/settings_live.html.heex:1347 #, elixir-autogen, elixir-format msgid "Name, IP, role, platform, status, serial number" msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:1342 +#: lib/towerops_web/live/org/settings_live.html.heex:1432 #, elixir-autogen, elixir-format msgid "Narrow the sync scope. Leave blank to sync everything. Comma-separated for multiple values." msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:137 +#: lib/towerops_web/live/device_live/show.html.heex:172 #, elixir-autogen, elixir-format msgid "Neighbors" msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:1106 +#: lib/towerops_web/live/org/settings_live.html.heex:1186 #, elixir-autogen, elixir-format msgid "NetBox URL" msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:1170 +#: lib/towerops_web/live/org/settings_live.html.heex:1252 #, elixir-autogen, elixir-format msgid "NetBox is the source of truth. Import devices, sites, and IPs from NetBox into TowerOps." msgstr "" @@ -2559,13 +2549,15 @@ msgstr "" msgid "Network Insights" msgstr "" +#: lib/towerops_web/components/layouts.ex:340 +#: lib/towerops_web/components/layouts.ex:579 #: lib/towerops_web/live/network_map_live.ex:32 #: lib/towerops_web/live/network_map_live.html.heex:8 #, elixir-autogen, elixir-format msgid "Network Map" msgstr "" -#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:57 +#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:59 #, elixir-autogen, elixir-format msgid "Network Sites" msgstr "" @@ -2575,17 +2567,19 @@ msgstr "" msgid "Network map refreshed" msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:988 +#: lib/towerops_web/live/org/settings_live.html.heex:1064 #, elixir-autogen, elixir-format msgid "Never synced" msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:574 +#: lib/towerops_web/live/user_settings_live.html.heex:602 #, elixir-autogen, elixir-format msgid "Never used" msgstr "" #: lib/towerops_web/live/device_live/form.ex:92 +#: lib/towerops_web/live/device_live/index.html.heex:111 +#: lib/towerops_web/live/device_live/index.html.heex:156 #, elixir-autogen, elixir-format msgid "New Device" msgstr "" @@ -2600,38 +2594,38 @@ msgstr "" msgid "New Site" msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:451 +#: lib/towerops_web/live/user_settings_live.html.heex:475 #, elixir-autogen, elixir-format msgid "New password" msgstr "" -#: lib/towerops_web/live/device_live/index.html.heex:632 -#: lib/towerops_web/live/user_settings_live.html.heex:941 +#: lib/towerops_web/live/device_live/index.html.heex:679 +#: lib/towerops_web/live/user_settings_live.html.heex:985 #, elixir-autogen, elixir-format msgid "Next" msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:537 +#: lib/towerops_web/live/user_settings_live.html.heex:565 #, elixir-autogen, elixir-format msgid "No API tokens" msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:1486 +#: lib/towerops_web/live/device_live/show.html.heex:1601 #, elixir-autogen, elixir-format msgid "No ARP entries discovered" msgstr "" -#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:123 +#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:125 #, elixir-autogen, elixir-format msgid "No Gaiia data has been synced yet. Enable the Gaiia integration and run a sync." msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:2661 +#: lib/towerops_web/live/device_live/show.html.heex:2798 #, elixir-autogen, elixir-format msgid "No Gaiia inventory item linked to this device." msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:1757 +#: lib/towerops_web/live/device_live/show.html.heex:1878 #, elixir-autogen, elixir-format msgid "No IP addresses discovered" msgstr "" @@ -2641,7 +2635,7 @@ msgstr "" msgid "No Insights Yet" msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:1572 +#: lib/towerops_web/live/device_live/show.html.heex:1687 #, elixir-autogen, elixir-format msgid "No MAC addresses discovered" msgstr "" @@ -2651,17 +2645,17 @@ msgstr "" msgid "No Preseem access points have been synced yet. Enable the integration and run a sync." msgstr "" -#: lib/towerops_web/live/trace_live/index.html.heex:297 +#: lib/towerops_web/live/trace_live/index.html.heex:310 #, elixir-autogen, elixir-format msgid "No Preseem data available" msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:2904 +#: lib/towerops_web/live/device_live/show.html.heex:3041 #, elixir-autogen, elixir-format msgid "No Preseem data linked to this device." msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:1177 +#: lib/towerops_web/live/user_settings_live.html.heex:1225 #, elixir-autogen, elixir-format msgid "No Recovery Codes" msgstr "" @@ -2671,7 +2665,7 @@ msgstr "" msgid "No Sites Yet" msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:1641 +#: lib/towerops_web/live/device_live/show.html.heex:1758 #, elixir-autogen, elixir-format msgid "No VLANs discovered" msgstr "" @@ -2681,8 +2675,8 @@ msgstr "" msgid "No access points found" msgstr "" -#: lib/towerops_web/live/alert_live/index.html.heex:78 -#: lib/towerops_web/live/alert_live/index.html.heex:84 +#: lib/towerops_web/live/alert_live/index.html.heex:174 +#: lib/towerops_web/live/alert_live/index.html.heex:180 #, elixir-autogen, elixir-format msgid "No active alerts. Your network is looking good!" msgstr "" @@ -2692,7 +2686,7 @@ msgstr "" msgid "No active insights. Your network is looking healthy!" msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:749 +#: lib/towerops_web/live/user_settings_live.html.heex:782 #, elixir-autogen, elixir-format msgid "No active sessions" msgstr "" @@ -2702,7 +2696,7 @@ msgstr "" msgid "No activity yet" msgstr "" -#: lib/towerops_web/live/device_live/form.html.heex:288 +#: lib/towerops_web/live/device_live/form.html.heex:290 #, elixir-autogen, elixir-format msgid "No agent assigned - cloud polling" msgstr "" @@ -2712,7 +2706,7 @@ msgstr "" msgid "No agents" msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:528 +#: lib/towerops_web/live/org/settings_live.html.heex:564 #, elixir-autogen, elixir-format msgid "No agents configured yet." msgstr "" @@ -2722,12 +2716,12 @@ msgstr "" msgid "No allowed IPs or CIDR ranges" msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:1044 +#: lib/towerops_web/live/user_settings_live.html.heex:1090 #, elixir-autogen, elixir-format msgid "No authenticator apps" msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:1978 +#: lib/towerops_web/live/device_live/show.html.heex:2105 #, elixir-autogen, elixir-format msgid "No backups yet" msgstr "" @@ -2737,17 +2731,17 @@ msgstr "" msgid "No binary available for architecture: %{arch}" msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:2258 +#: lib/towerops_web/live/device_live/show.html.heex:2389 #, elixir-autogen, elixir-format msgid "No checks configured" msgstr "" -#: lib/towerops_web/live/alert_live/index.html.heex:80 +#: lib/towerops_web/live/alert_live/index.html.heex:176 #, elixir-autogen, elixir-format msgid "No critical alerts. Nice work keeping things healthy!" msgstr "" -#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:172 +#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:174 #, elixir-autogen, elixir-format msgid "No data mismatches found between mapped devices." msgstr "" @@ -2757,17 +2751,17 @@ msgstr "" msgid "No denied IPs" msgstr "" -#: lib/towerops_web/live/device_live/index.html.heex:175 +#: lib/towerops_web/live/device_live/index.html.heex:149 #, elixir-autogen, elixir-format msgid "No devices" msgstr "" -#: lib/towerops_web/live/agent_live/show.html.heex:309 +#: lib/towerops_web/live/agent_live/show.html.heex:319 #, elixir-autogen, elixir-format msgid "No devices assigned" msgstr "" -#: lib/towerops_web/live/device_live/index.html.heex:498 +#: lib/towerops_web/live/device_live/index.html.heex:556 #, elixir-autogen, elixir-format msgid "No discovered devices" msgstr "" @@ -2778,7 +2772,7 @@ msgstr "" msgid "No dismissed insights." msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:2069 +#: lib/towerops_web/live/device_live/show.html.heex:2196 #, elixir-autogen, elixir-format msgid "No events yet" msgstr "" @@ -2788,7 +2782,7 @@ msgstr "" msgid "No geocoded sites" msgstr "" -#: lib/towerops_web/live/agent_live/index.html.heex:332 +#: lib/towerops_web/live/agent_live/index.html.heex:344 #, elixir-autogen, elixir-format msgid "No global default configured. Devices without assignments will use direct Phoenix cluster polling." msgstr "" @@ -2798,22 +2792,22 @@ msgstr "" msgid "No insights found" msgstr "" -#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:284 +#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:286 #, elixir-autogen, elixir-format msgid "No inventory data" msgstr "" -#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:113 +#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:115 #, elixir-autogen, elixir-format msgid "No inventory items found" msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:839 +#: lib/towerops_web/live/user_settings_live.html.heex:883 #, elixir-autogen, elixir-format msgid "No login history" msgstr "" -#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:119 +#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:121 #, elixir-autogen, elixir-format msgid "No mapped entities yet. Sync from Gaiia and link entities below." msgstr "" @@ -2823,17 +2817,17 @@ msgstr "" msgid "No matched access points yet. Sync from Preseem and link devices." msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:624 +#: lib/towerops_web/live/user_settings_live.html.heex:656 #, elixir-autogen, elixir-format msgid "No mobile devices" msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:1406 +#: lib/towerops_web/live/device_live/show.html.heex:1519 #, elixir-autogen, elixir-format msgid "No neighbors discovered" msgstr "" -#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:111 +#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:113 #, elixir-autogen, elixir-format msgid "No network sites found" msgstr "" @@ -2843,27 +2837,27 @@ msgstr "" msgid "No network topology available" msgstr "" -#: lib/towerops_web/live/org_live/index.html.heex:33 +#: lib/towerops_web/live/org_live/index.html.heex:39 #, elixir-autogen, elixir-format msgid "No organizations" msgstr "" -#: lib/towerops_web/live/trace_live/index.html.heex:369 +#: lib/towerops_web/live/trace_live/index.html.heex:384 #, elixir-autogen, elixir-format msgid "No peer data available" msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:2245 +#: lib/towerops_web/live/device_live/show.html.heex:2374 #, elixir-autogen, elixir-format msgid "No raw discovery data available. Run discovery again to collect debug data." msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:1144 +#: lib/towerops_web/live/user_settings_live.html.heex:1190 #, elixir-autogen, elixir-format msgid "No recovery codes available" msgstr "" -#: lib/towerops_web/live/alert_live/index.html.heex:82 +#: lib/towerops_web/live/alert_live/index.html.heex:178 #, elixir-autogen, elixir-format msgid "No resolved alerts yet." msgstr "" @@ -2873,19 +2867,19 @@ msgstr "" msgid "No sensor data available" msgstr "" -#: lib/towerops_web/live/trace_live/index.html.heex:146 +#: lib/towerops_web/live/trace_live/index.html.heex:156 #, elixir-autogen, elixir-format msgid "No subscriber info available" msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:77 +#: lib/towerops_web/live/user_settings_live.html.heex:88 #, elixir-autogen, elixir-format msgid "Notifications" msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:2109 -#: lib/towerops_web/live/device_live/show.html.heex:2143 -#: lib/towerops_web/live/device_live/show.html.heex:2181 +#: lib/towerops_web/live/device_live/show.html.heex:2238 +#: lib/towerops_web/live/device_live/show.html.heex:2272 +#: lib/towerops_web/live/device_live/show.html.heex:2310 #, elixir-autogen, elixir-format msgid "OID" msgstr "" @@ -2900,28 +2894,22 @@ msgstr "" msgid "Office network" msgstr "" -#: lib/towerops_web/live/alert_live/index.html.heex:54 -#, elixir-autogen, elixir-format -msgid "Oldest First" -msgstr "" - -#: lib/towerops_web/live/org/integrations_live.html.heex:345 -#: lib/towerops_web/live/org/settings_live.html.heex:1717 +#: lib/towerops_web/live/org/settings_live.html.heex:2057 #, elixir-autogen, elixir-format msgid "Once configured, Towerops will receive real-time updates when accounts, subscriptions, or inventory items change in Gaiia." msgstr "" -#: lib/towerops_web/live/site_live/form.html.heex:453 +#: lib/towerops_web/live/site_live/form.html.heex:475 #, elixir-autogen, elixir-format msgid "Once you delete a site, there is no going back. This will also delete all devices at this site." msgstr "" -#: lib/towerops_web/live/device_live/form.html.heex:738 +#: lib/towerops_web/live/device_live/form.html.heex:759 #, elixir-autogen, elixir-format msgid "Once you delete this device, there is no going back. All monitoring history and alerts will be permanently deleted." msgstr "" -#: lib/towerops_web/live/agent_live/edit.html.heex:69 +#: lib/towerops_web/live/agent_live/edit.html.heex:70 #, elixir-autogen, elixir-format msgid "Only organization members can toggle this setting." msgstr "" @@ -2931,23 +2919,25 @@ msgstr "" msgid "Oops, a squirrel must have eaten that wire!" msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:1546 +#: lib/towerops_web/live/org/settings_live.html.heex:1879 #, elixir-autogen, elixir-format msgid "Optional — paste from PagerDuty webhook extension" msgstr "" -#: lib/towerops_web/live/device_live/form.html.heex:177 +#: lib/towerops_web/live/device_live/form.html.heex:179 #, elixir-autogen, elixir-format msgid "Optionally group this device into a site (office, datacenter, etc.)" msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:109 -#: lib/towerops_web/live/org/settings_live.html.heex:120 -#: lib/towerops_web/live/org_live/new.html.heex:31 +#: lib/towerops_web/live/org/settings_live.html.heex:113 +#: lib/towerops_web/live/org/settings_live.html.heex:124 +#: lib/towerops_web/live/org_live/new.html.heex:32 #, elixir-autogen, elixir-format msgid "Organization Name" msgstr "" +#: lib/towerops_web/components/layouts.ex:247 +#: lib/towerops_web/components/layouts.ex:602 #: lib/towerops_web/live/org/settings_live.html.heex:15 #, elixir-autogen, elixir-format msgid "Organization Settings" @@ -2958,63 +2948,63 @@ msgstr "" msgid "Organization created successfully" msgstr "" -#: lib/towerops_web/live/admin/dashboard_live.html.heex:21 -#: lib/towerops_web/live/admin/user_live/index.html.heex:12 +#: lib/towerops_web/live/admin/dashboard_live.html.heex:22 +#: lib/towerops_web/live/admin/user_live/index.html.heex:14 #, elixir-autogen, elixir-format msgid "Organizations" msgstr "" -#: lib/towerops_web/live/device_live/index.html.heex:155 +#: lib/towerops_web/live/device_live/index.html.heex:134 #, elixir-autogen, elixir-format msgid "Organize your devices with sites" msgstr "" -#: lib/towerops_web/live/trace_live/index.html.heex:321 +#: lib/towerops_web/live/trace_live/index.html.heex:334 #, elixir-autogen, elixir-format msgid "Other APs on device" msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:545 +#: lib/towerops_web/live/device_live/show.html.heex:588 #, elixir-autogen, elixir-format msgid "Overall Traffic" msgstr "" -#: lib/towerops_web/live/site_live/form.html.heex:378 +#: lib/towerops_web/live/site_live/form.html.heex:392 #, elixir-autogen, elixir-format msgid "Override organization MikroTik API defaults for all devices at this site. Leave blank to inherit from organization. Only applies to MikroTik devices." msgstr "" -#: lib/towerops_web/live/site_live/form.html.heex:250 +#: lib/towerops_web/live/site_live/form.html.heex:260 #, elixir-autogen, elixir-format msgid "Override organization SNMP defaults for all devices at this site. Leave blank to inherit from organization." msgstr "" -#: lib/towerops_web/live/device_live/form.html.heex:266 -#: lib/towerops_web/live/device_live/form.html.heex:394 -#: lib/towerops_web/live/site_live/form.html.heex:209 +#: lib/towerops_web/live/device_live/form.html.heex:268 +#: lib/towerops_web/live/device_live/form.html.heex:401 +#: lib/towerops_web/live/site_live/form.html.heex:213 #, elixir-autogen, elixir-format msgid "Overriding" msgstr "" -#: lib/towerops_web/live/agent_live/show.html.heex:60 -#: lib/towerops_web/live/device_live/show.html.heex:107 -#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:298 +#: lib/towerops_web/live/agent_live/show.html.heex:68 +#: lib/towerops_web/live/device_live/show.html.heex:142 +#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:300 #, elixir-autogen, elixir-format msgid "Overview" msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:2841 +#: lib/towerops_web/live/device_live/show.html.heex:2978 #, elixir-autogen, elixir-format msgid "P95 Latency" msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:200 +#: lib/towerops_web/live/user_settings_live.html.heex:213 #, elixir-autogen, elixir-format msgid "Pacific Time (US & Canada)" msgstr "" -#: lib/towerops_web/live/device_live/index.html.heex:653 -#: lib/towerops_web/live/user_settings_live.html.heex:968 +#: lib/towerops_web/live/device_live/index.html.heex:689 +#: lib/towerops_web/live/user_settings_live.html.heex:1012 #, elixir-autogen, elixir-format msgid "Pagination" msgstr "" @@ -3024,28 +3014,23 @@ msgstr "" msgid "Parent Site" msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:212 +#: lib/towerops_web/live/user_settings_live.html.heex:225 #, elixir-autogen, elixir-format msgid "Paris" msgstr "" -#: lib/towerops_web/live/device_live/form.html.heex:670 -#: lib/towerops_web/live/org/settings_live.html.heex:394 -#: lib/towerops_web/live/site_live/form.html.heex:405 +#: lib/towerops_web/live/device_live/form.html.heex:685 +#: lib/towerops_web/live/org/settings_live.html.heex:418 +#: lib/towerops_web/live/site_live/form.html.heex:421 #, elixir-autogen, elixir-format msgid "Password" msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:473 +#: lib/towerops_web/live/user_settings_live.html.heex:497 #, elixir-autogen, elixir-format msgid "Password found in data breaches" msgstr "" -#: lib/towerops_web/live/help_live/index.ex:78 -#, elixir-autogen, elixir-format -msgid "Password generated successfully from random.org" -msgstr "" - #: lib/towerops_web/controllers/user_reset_password_controller.ex:56 #: lib/towerops_web/live/user_reset_password_live.ex:59 #, elixir-autogen, elixir-format @@ -3057,27 +3042,27 @@ msgstr "" msgid "Password updated successfully. Please log in with your new password." msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:1696 +#: lib/towerops_web/live/org/settings_live.html.heex:2035 #, elixir-autogen, elixir-format msgid "Paste the secret from Gaiia" msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:1688 +#: lib/towerops_web/live/org/settings_live.html.heex:2027 #, elixir-autogen, elixir-format msgid "Paste the secret key generated by Gaiia when you create the webhook." msgstr "" -#: lib/towerops_web/live/trace_live/index.html.heex:346 +#: lib/towerops_web/live/trace_live/index.html.heex:359 #, elixir-autogen, elixir-format msgid "Peer APs" msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:614 +#: lib/towerops_web/live/org/settings_live.html.heex:655 #, elixir-autogen, elixir-format msgid "Pending Invitations" msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:697 +#: lib/towerops_web/live/org/settings_live.html.heex:738 #, elixir-autogen, elixir-format msgid "People who have access to this organization." msgstr "" @@ -3092,50 +3077,49 @@ msgstr "" msgid "Permanent" msgstr "" -#: lib/towerops_web/live/device_live/form.html.heex:731 +#: lib/towerops_web/live/device_live/form.html.heex:752 #, elixir-autogen, elixir-format msgid "Permanently delete this device and all its data." msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:29 +#: lib/towerops_web/live/user_settings_live.html.heex:28 #, elixir-autogen, elixir-format msgid "Personal" msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:110 +#: lib/towerops_web/live/user_settings_live.html.heex:123 #, elixir-autogen, elixir-format msgid "Personal Information" msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:1323 +#: lib/towerops_web/live/org/settings_live.html.heex:1413 #, elixir-autogen, elixir-format msgid "Physical and virtual interfaces, LAGs, connections" msgstr "" -#: lib/towerops_web/live/device_live/form.html.heex:697 +#: lib/towerops_web/live/device_live/form.html.heex:712 #, elixir-autogen, elixir-format msgid "Plain API (port 8728) sends credentials unencrypted over the network." msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:422 -#: lib/towerops_web/live/site_live/form.html.heex:426 +#: lib/towerops_web/live/org/settings_live.html.heex:446 +#: lib/towerops_web/live/site_live/form.html.heex:442 #, elixir-autogen, elixir-format msgid "Plain API (port 8728) sends credentials unencrypted over the network. This setting is" msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:433 -#: lib/towerops_web/live/site_live/form.html.heex:435 +#: lib/towerops_web/live/org/settings_live.html.heex:459 +#: lib/towerops_web/live/site_live/form.html.heex:453 #, elixir-autogen, elixir-format msgid "Plain API (port 8728) sends credentials unencrypted. Use SSL (port 8729) whenever possible." msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:2601 +#: lib/towerops_web/live/device_live/show.html.heex:2738 #, elixir-autogen, elixir-format msgid "Plan" msgstr "" -#: lib/towerops_web/live/org/integrations_live.ex:138 -#: lib/towerops_web/live/org/settings_live.ex:404 +#: lib/towerops_web/live/org/settings_live.ex:502 #, elixir-autogen, elixir-format msgid "Please enter an API key first" msgstr "" @@ -3145,43 +3129,43 @@ msgstr "" msgid "Please enter an address to geocode" msgstr "" -#: lib/towerops_web/live/org/settings_live.ex:391 +#: lib/towerops_web/live/org/settings_live.ex:474 #, elixir-autogen, elixir-format msgid "Please enter your NetBox URL first" msgstr "" -#: lib/towerops_web/controllers/user_session_controller.ex:127 -#: lib/towerops_web/controllers/user_session_controller.ex:148 +#: lib/towerops_web/controllers/user_session_controller.ex:144 +#: lib/towerops_web/controllers/user_session_controller.ex:165 #, elixir-autogen, elixir-format msgid "Please log in first." msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:724 +#: lib/towerops_web/live/user_settings_live.html.heex:755 #, elixir-autogen, elixir-format msgid "Please review your login history below and ensure all activity is authorized." msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:60 +#: lib/towerops_web/live/device_live/show.html.heex:68 #, elixir-autogen, elixir-format msgid "Polled by:" msgstr "" -#: lib/towerops_web/live/agent_live/show.html.heex:298 +#: lib/towerops_web/live/agent_live/show.html.heex:308 #, elixir-autogen, elixir-format msgid "Polling Targets" msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:122 +#: lib/towerops_web/live/device_live/show.html.heex:157 #, elixir-autogen, elixir-format msgid "Ports" msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:249 +#: lib/towerops_web/live/device_live/show.html.heex:284 #, elixir-autogen, elixir-format msgid "Preseem" msgstr "" -#: lib/towerops_web/live/trace_live/index.html.heex:204 +#: lib/towerops_web/live/trace_live/index.html.heex:214 #, elixir-autogen, elixir-format msgid "Preseem AP" msgstr "" @@ -3191,38 +3175,40 @@ msgstr "" msgid "Preseem Devices" msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:2772 -#: lib/towerops_web/live/org/preseem_devices_live.html.heex:129 +#: lib/towerops_web/live/device_live/show.html.heex:2909 +#: lib/towerops_web/live/org/preseem_devices_live.html.heex:131 #, elixir-autogen, elixir-format msgid "Preseem ID" msgstr "" -#: lib/towerops_web/live/site_live/show.html.heex:89 +#: lib/towerops_web/live/site_live/show.html.heex:137 #, elixir-autogen, elixir-format msgid "Preseem QoE Score" msgstr "" -#: lib/towerops_web/live/device_live/index.html.heex:625 -#: lib/towerops_web/live/user_settings_live.html.heex:932 +#: lib/towerops_web/live/device_live/index.html.heex:672 +#: lib/towerops_web/live/user_settings_live.html.heex:976 #, elixir-autogen, elixir-format msgid "Previous" msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:1695 +#: lib/towerops_web/live/device_live/show.html.heex:1814 #, elixir-autogen, elixir-format msgid "Primary" msgstr "" -#: lib/towerops_web/live/device_live/form.html.heex:520 -#: lib/towerops_web/live/org/settings_live.html.heex:313 -#: lib/towerops_web/live/site_live/form.html.heex:337 +#: lib/towerops_web/live/device_live/form.html.heex:529 +#: lib/towerops_web/live/onboarding_live.html.heex:114 +#: lib/towerops_web/live/org/settings_live.html.heex:329 +#: lib/towerops_web/live/site_live/form.html.heex:349 #, elixir-autogen, elixir-format msgid "Privacy Password" msgstr "" -#: lib/towerops_web/live/device_live/form.html.heex:505 -#: lib/towerops_web/live/org/settings_live.html.heex:299 -#: lib/towerops_web/live/site_live/form.html.heex:323 +#: lib/towerops_web/live/device_live/form.html.heex:514 +#: lib/towerops_web/live/onboarding_live.html.heex:107 +#: lib/towerops_web/live/org/settings_live.html.heex:315 +#: lib/towerops_web/live/site_live/form.html.heex:335 #, elixir-autogen, elixir-format msgid "Privacy Protocol" msgstr "" @@ -3237,12 +3223,12 @@ msgstr "" msgid "Proactive network health observations generated from Preseem data analysis." msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:656 +#: lib/towerops_web/live/device_live/show.html.heex:717 #, elixir-autogen, elixir-format msgid "Processors" msgstr "" -#: lib/towerops_web/live/agent_live/show.html.heex:110 +#: lib/towerops_web/live/agent_live/show.html.heex:120 #, elixir-autogen, elixir-format msgid "Production (kubectl):" msgstr "" @@ -3252,18 +3238,18 @@ msgstr "" msgid "Profile updated successfully." msgstr "" -#: lib/towerops_web/live/mobile_qr_live.ex:49 +#: lib/towerops_web/live/mobile_qr_live.ex:53 #, elixir-autogen, elixir-format msgid "QR code expired, generated a new one" msgstr "" -#: lib/towerops_web/live/dashboard_live.html.heex:609 +#: lib/towerops_web/live/dashboard_live.html.heex:505 #: lib/towerops_web/live/site_live/index.html.heex:54 #, elixir-autogen, elixir-format msgid "QoE" msgstr "" -#: lib/towerops_web/live/trace_live/index.html.heex:233 +#: lib/towerops_web/live/trace_live/index.html.heex:246 #, elixir-autogen, elixir-format msgid "QoE Score" msgstr "" @@ -3273,22 +3259,22 @@ msgstr "" msgid "Queue Depths" msgstr "" -#: lib/towerops_web/live/trace_live/index.html.heex:243 +#: lib/towerops_web/live/trace_live/index.html.heex:256 #, elixir-autogen, elixir-format msgid "RF Score" msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:315 +#: lib/towerops_web/live/device_live/show.html.heex:350 #, elixir-autogen, elixir-format msgid "Raw Data" msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:2081 +#: lib/towerops_web/live/device_live/show.html.heex:2210 #, elixir-autogen, elixir-format msgid "Raw Discovery Data" msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:2085 +#: lib/towerops_web/live/device_live/show.html.heex:2214 #, elixir-autogen, elixir-format msgid "Raw SNMP OID values collected during the last discovery run at" msgstr "" @@ -3303,44 +3289,46 @@ msgstr "" msgid "Real-time monitoring of polling and discovery jobs" msgstr "" -#: lib/towerops_web/live/admin/dashboard_live.html.heex:66 +#: lib/towerops_web/live/admin/dashboard_live.html.heex:83 #, elixir-autogen, elixir-format msgid "Real-time polling and discovery job monitoring" msgstr "" #: lib/towerops_web/live/admin/security_live/index.html.heex:186 +#: lib/towerops_web/live/maintenance_live/form.html.heex:39 +#: lib/towerops_web/live/maintenance_live/show.html.heex:73 #, elixir-autogen, elixir-format msgid "Reason" msgstr "" -#: lib/towerops_web/live/org/integrations_live.html.heex:269 -#: lib/towerops_web/live/org/settings_live.html.heex:1655 +#: lib/towerops_web/live/org/integrations_live.html.heex:327 +#: lib/towerops_web/live/org/settings_live.html.heex:1992 #, elixir-autogen, elixir-format msgid "Receive real-time updates from Gaiia when accounts, subscriptions, or inventory items change." msgstr "" #: lib/towerops_web/live/admin/monitoring_live.html.heex:297 -#: lib/towerops_web/live/dashboard_live.html.heex:683 +#: lib/towerops_web/live/dashboard_live.html.heex:815 #, elixir-autogen, elixir-format msgid "Recent Activity" msgstr "" -#: lib/towerops_web/live/admin/dashboard_live.html.heex:94 +#: lib/towerops_web/live/admin/dashboard_live.html.heex:112 #, elixir-autogen, elixir-format msgid "Recent Audit Logs" msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:600 +#: lib/towerops_web/live/device_live/show.html.heex:659 #, elixir-autogen, elixir-format msgid "Recent Config Changes" msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:2827 +#: lib/towerops_web/live/device_live/show.html.heex:2964 #, elixir-autogen, elixir-format msgid "Recent QoE Metrics" msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:830 +#: lib/towerops_web/live/user_settings_live.html.heex:874 #, elixir-autogen, elixir-format msgid "Recent login attempts to your account, including successful and failed attempts." msgstr "" @@ -3352,46 +3340,46 @@ msgstr "" msgid "Recommended actions" msgstr "" -#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:35 -#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:26 +#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:37 +#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:28 #, elixir-autogen, elixir-format msgid "Reconciliation" msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:1127 +#: lib/towerops_web/live/user_settings_live.html.heex:1173 #, elixir-autogen, elixir-format msgid "Recovery Codes" msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:1634 +#: lib/towerops_web/live/user_settings_live.html.heex:1712 #, elixir-autogen, elixir-format msgid "Recovery Codes Generated" msgstr "" -#: lib/towerops_web/live/org/integrations_live.html.heex:327 +#: lib/towerops_web/live/org/integrations_live.html.heex:391 #, elixir-autogen, elixir-format msgid "Regenerate Secret" msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:435 +#: lib/towerops_web/live/device_live/show.html.heex:478 #, elixir-autogen, elixir-format msgid "Release Notes" msgstr "" -#: lib/towerops_web/live/device_live/form.html.heex:248 +#: lib/towerops_web/live/device_live/form.html.heex:250 #, elixir-autogen, elixir-format msgid "Remote Agent" msgstr "" -#: lib/towerops_web/live/agent_live/index.ex:56 +#: lib/towerops_web/live/agent_live/index.ex:58 #, elixir-autogen, elixir-format msgid "Remote Agents" msgstr "" #: lib/towerops_web/live/admin/security_live/index.html.heex:117 -#: lib/towerops_web/live/org/settings_live.html.heex:785 -#: lib/towerops_web/live/user_settings_live.html.heex:687 -#: lib/towerops_web/live/user_settings_live.html.heex:1104 +#: lib/towerops_web/live/org/settings_live.html.heex:835 +#: lib/towerops_web/live/user_settings_live.html.heex:719 +#: lib/towerops_web/live/user_settings_live.html.heex:1150 #, elixir-autogen, elixir-format msgid "Remove" msgstr "" @@ -3401,7 +3389,7 @@ msgstr "" msgid "Remove this IP/CIDR from the allowlist?" msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:782 +#: lib/towerops_web/live/org/settings_live.html.heex:832 #, elixir-autogen, elixir-format msgid "Remove this member from the organization?" msgstr "" @@ -3411,7 +3399,7 @@ msgstr "" msgid "Removed from allowlist" msgstr "" -#: lib/towerops_web/live/device_live/index.html.heex:60 +#: lib/towerops_web/live/device_live/index.html.heex:86 #, elixir-autogen, elixir-format msgid "Reset all sites and devices to alphabetical order?" msgstr "" @@ -3423,12 +3411,12 @@ msgstr "" msgid "Reset password link is invalid or has expired." msgstr "" -#: lib/towerops_web/live/alert_live/index.html.heex:297 +#: lib/towerops_web/live/alert_live/index.html.heex:379 #, elixir-autogen, elixir-format msgid "Resolve this alert?" msgstr "" -#: lib/towerops_web/live/device_live/index.html.heex:257 +#: lib/towerops_web/live/device_live/index.html.heex:296 #, elixir-autogen, elixir-format msgid "Response" msgstr "" @@ -3438,145 +3426,150 @@ msgstr "" msgid "Restart command sent to agent" msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:802 +#: lib/towerops_web/live/user_settings_live.html.heex:846 #, elixir-autogen, elixir-format msgid "Revoke" msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:1244 +#: lib/towerops_web/live/user_settings_live.html.heex:1295 #, elixir-autogen, elixir-format msgid "Revoke All" msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:1229 +#: lib/towerops_web/live/user_settings_live.html.heex:1278 #, elixir-autogen, elixir-format msgid "Revoke All Other Sessions?" msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:593 -#: lib/towerops_web/live/org/settings_live.html.heex:630 -#: lib/towerops_web/live/org/settings_live.html.heex:710 +#: lib/towerops_web/live/org/settings_live.html.heex:629 +#: lib/towerops_web/live/org/settings_live.html.heex:671 +#: lib/towerops_web/live/org/settings_live.html.heex:751 #, elixir-autogen, elixir-format msgid "Role" msgstr "" -#: lib/towerops_web/live/org/settings_live.ex:227 +#: lib/towerops_web/live/org/settings_live.ex:263 #, elixir-autogen, elixir-format msgid "Role updated" msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:395 +#: lib/towerops_web/live/org/settings_live.html.heex:419 #, elixir-autogen, elixir-format msgid "RouterOS API password" msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:2261 +#: lib/towerops_web/live/device_live/show.html.heex:2392 #, elixir-autogen, elixir-format msgid "Run discovery to automatically detect sensors, interfaces, and other monitorable items, or add a service check manually." msgstr "" +#: lib/towerops_web/live/onboarding_live.ex:201 #: lib/towerops_web/live/org/settings_live.html.heex:43 #, elixir-autogen, elixir-format msgid "SNMP" msgstr "" -#: lib/towerops_web/live/device_live/form.html.heex:331 +#: lib/towerops_web/live/device_live/form.html.heex:337 #, elixir-autogen, elixir-format msgid "SNMP & ICMP" msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:242 -#: lib/towerops_web/live/site_live/form.html.heex:266 +#: lib/towerops_web/live/org/settings_live.html.heex:258 +#: lib/towerops_web/live/site_live/form.html.heex:278 #, elixir-autogen, elixir-format msgid "SNMP Community String" msgstr "" -#: lib/towerops_web/live/device_live/form.html.heex:306 -#: lib/towerops_web/live/org/settings_live.html.heex:217 -#: lib/towerops_web/live/site_live/form.html.heex:246 +#: lib/towerops_web/live/device_live/form.html.heex:310 +#: lib/towerops_web/live/onboarding_live.html.heex:62 +#: lib/towerops_web/live/org/settings_live.html.heex:231 +#: lib/towerops_web/live/site_live/form.html.heex:256 #, elixir-autogen, elixir-format msgid "SNMP Configuration" msgstr "" -#: lib/towerops_web/live/device_live/form.html.heex:532 -#: lib/towerops_web/live/org/settings_live.html.heex:323 -#: lib/towerops_web/live/site_live/form.html.heex:347 +#: lib/towerops_web/live/device_live/form.html.heex:541 +#: lib/towerops_web/live/org/settings_live.html.heex:339 +#: lib/towerops_web/live/site_live/form.html.heex:359 #, elixir-autogen, elixir-format msgid "SNMP Port" msgstr "" -#: lib/towerops_web/live/device_live/form.html.heex:370 -#: lib/towerops_web/live/org/settings_live.html.heex:232 -#: lib/towerops_web/live/site_live/form.html.heex:256 +#: lib/towerops_web/live/device_live/form.html.heex:377 +#: lib/towerops_web/live/onboarding_live.html.heex:73 +#: lib/towerops_web/live/org/settings_live.html.heex:248 +#: lib/towerops_web/live/site_live/form.html.heex:268 #, elixir-autogen, elixir-format msgid "SNMP Version" msgstr "" -#: lib/towerops_web/live/org/integrations_live.html.heex:254 -#: lib/towerops_web/live/user_settings_live.html.heex:373 +#: lib/towerops_web/live/maintenance_live/form.html.heex:161 +#: lib/towerops_web/live/org/integrations_live.html.heex:312 +#: lib/towerops_web/live/org/integrations_live.html.heex:632 +#: lib/towerops_web/live/user_settings_live.html.heex:391 #, elixir-autogen, elixir-format msgid "Save" msgstr "" -#: lib/towerops_web/live/agent_live/edit.html.heex:82 +#: lib/towerops_web/live/agent_live/edit.html.heex:83 #, elixir-autogen, elixir-format msgid "Save Changes" msgstr "" -#: lib/towerops_web/live/device_live/form.html.heex:720 +#: lib/towerops_web/live/device_live/form.html.heex:739 #, elixir-autogen, elixir-format msgid "Save Device" msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:1446 -#: lib/towerops_web/live/org/settings_live.html.heex:1637 +#: lib/towerops_web/live/org/settings_live.html.heex:1543 +#: lib/towerops_web/live/org/settings_live.html.heex:1648 +#: lib/towerops_web/live/org/settings_live.html.heex:1770 +#: lib/towerops_web/live/org/settings_live.html.heex:1972 #, elixir-autogen, elixir-format msgid "Save Integration" msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:514 +#: lib/towerops_web/live/user_settings_live.html.heex:538 #, elixir-autogen, elixir-format msgid "Save Password" msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:560 +#: lib/towerops_web/live/org/settings_live.html.heex:596 #, elixir-autogen, elixir-format msgid "Save Settings" msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:1638 +#: lib/towerops_web/live/user_settings_live.html.heex:1716 #, elixir-autogen, elixir-format msgid "Save these codes in a secure location. Each code can only be used once." msgstr "" -#: lib/towerops_web/live/agent_live/edit.html.heex:81 -#: lib/towerops_web/live/device_live/form.html.heex:716 -#: lib/towerops_web/live/org/integrations_live.html.heex:251 -#: lib/towerops_web/live/org/settings_live.html.heex:557 -#: lib/towerops_web/live/org/settings_live.html.heex:1443 -#: lib/towerops_web/live/org/settings_live.html.heex:1634 -#: lib/towerops_web/live/site_live/form.html.heex:444 -#: lib/towerops_web/live/user_settings_live.html.heex:370 +#: lib/towerops_web/live/agent_live/edit.html.heex:82 +#: lib/towerops_web/live/device_live/form.html.heex:735 +#: lib/towerops_web/live/org/integrations_live.html.heex:309 +#: lib/towerops_web/live/org/integrations_live.html.heex:629 +#: lib/towerops_web/live/org/settings_live.html.heex:593 +#: lib/towerops_web/live/org/settings_live.html.heex:1540 +#: lib/towerops_web/live/org/settings_live.html.heex:1645 +#: lib/towerops_web/live/org/settings_live.html.heex:1767 +#: lib/towerops_web/live/org/settings_live.html.heex:1969 +#: lib/towerops_web/live/site_live/form.html.heex:464 +#: lib/towerops_web/live/user_settings_live.html.heex:388 #, elixir-autogen, elixir-format msgid "Saving..." msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:1544 +#: lib/towerops_web/live/user_settings_live.html.heex:1597 #, elixir-autogen, elixir-format msgid "Scan QR Code" msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:1548 -#, elixir-autogen, elixir-format -msgid "Scan this QR code with your authenticator app (Google Authenticator, Authy, 1Password, etc.)." -msgstr "" - -#: lib/towerops_web/live/trace_live/index.html.heex:21 +#: lib/towerops_web/live/trace_live/index.html.heex:22 #, elixir-autogen, elixir-format msgid "Search by customer name, IP address, account ID, serial number, or device name..." msgstr "" -#: lib/towerops_web/live/org/preseem_devices_live.html.heex:232 +#: lib/towerops_web/live/org/preseem_devices_live.html.heex:243 #, elixir-autogen, elixir-format msgid "Search by device name or IP..." msgstr "" @@ -3586,12 +3579,12 @@ msgstr "" msgid "Search by device name, IP, site, or keyword..." msgstr "" -#: lib/towerops_web/live/trace_live/index.html.heex:539 +#: lib/towerops_web/live/trace_live/index.html.heex:556 #, elixir-autogen, elixir-format msgid "Search for a customer by name, IP address, account ID, or device name to see their full network status at a glance." msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:89 +#: lib/towerops_web/live/user_settings_live.html.heex:103 #, elixir-autogen, elixir-format msgid "Security" msgstr "" @@ -3601,18 +3594,18 @@ msgstr "" msgid "Security - IP Access Control" msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:719 +#: lib/towerops_web/live/user_settings_live.html.heex:751 #, elixir-autogen, elixir-format msgid "Security Alert" msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:252 -#: lib/towerops_web/live/site_live/form.html.heex:276 +#: lib/towerops_web/live/org/settings_live.html.heex:268 +#: lib/towerops_web/live/site_live/form.html.heex:288 #, elixir-autogen, elixir-format msgid "Security Level" msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:432 +#: lib/towerops_web/live/org/settings_live.html.heex:458 #, elixir-autogen, elixir-format msgid "Security Warning:" msgstr "" @@ -3623,62 +3616,62 @@ msgstr "" msgid "Select All" msgstr "" -#: lib/towerops_web/live/agent_live/index.html.heex:296 +#: lib/towerops_web/live/agent_live/index.html.heex:308 #, elixir-autogen, elixir-format msgid "Select Global Default" msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:450 +#: lib/towerops_web/live/org/settings_live.html.heex:478 #, elixir-autogen, elixir-format msgid "Select a default agent for SNMP polling. This will be used for all devices in this organization unless overridden at the site or device level." msgstr "" -#: lib/towerops_web/live/device_live/form.html.heex:205 +#: lib/towerops_web/live/device_live/form.html.heex:207 #, elixir-autogen, elixir-format msgid "Select a role manually or leave as auto-detect to infer from SNMP data." msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:1810 +#: lib/towerops_web/live/device_live/show.html.heex:1933 #, elixir-autogen, elixir-format msgid "Select any 2 backups using the checkboxes to compare their differences" msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:1948 +#: lib/towerops_web/live/device_live/show.html.heex:2075 #, elixir-autogen, elixir-format msgid "Select one more backup to compare" msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:601 +#: lib/towerops_web/live/org/settings_live.html.heex:642 #, elixir-autogen, elixir-format msgid "Send Invite" msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:576 +#: lib/towerops_web/live/org/settings_live.html.heex:612 #, elixir-autogen, elixir-format msgid "Send an invitation email to add someone to this organization." msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:598 +#: lib/towerops_web/live/org/settings_live.html.heex:639 #, elixir-autogen, elixir-format msgid "Sending..." msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:633 +#: lib/towerops_web/live/org/settings_live.html.heex:674 #, elixir-autogen, elixir-format msgid "Sent" msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:2446 +#: lib/towerops_web/live/device_live/show.html.heex:2583 #, elixir-autogen, elixir-format msgid "Serial Number" msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:1498 +#: lib/towerops_web/live/org/settings_live.html.heex:1822 #, elixir-autogen, elixir-format msgid "Services" msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:53 +#: lib/towerops_web/live/user_settings_live.html.heex:58 #, elixir-autogen, elixir-format msgid "Sessions" msgstr "" @@ -3689,112 +3682,114 @@ msgstr "" msgid "Set Up Two-Factor Authentication" msgstr "" -#: lib/towerops_web/live/site_live/form.html.heex:195 +#: lib/towerops_web/live/site_live/form.html.heex:197 #, elixir-autogen, elixir-format msgid "Set a default agent for SNMP polling at this site. This will override the organization default for all devices at this site. Leave blank to inherit from organization." msgstr "" -#: lib/towerops_web/live/site_live/form.html.heex:237 +#: lib/towerops_web/live/site_live/form.html.heex:245 #, elixir-autogen, elixir-format msgid "Set a default agent for all devices at this site. Device can override this setting individually." msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:358 +#: lib/towerops_web/live/org/settings_live.html.heex:380 #, elixir-autogen, elixir-format msgid "Set default MikroTik RouterOS API credentials for all devices in this organization. Only applies to devices detected as MikroTik." msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:220 +#: lib/towerops_web/live/org/settings_live.html.heex:234 #, elixir-autogen, elixir-format msgid "Set default SNMP settings for all devices in this organization. These can be overridden at the site or device level." msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:134 +#: lib/towerops_web/live/org/settings_live.html.heex:138 #, elixir-autogen, elixir-format msgid "Set this organization as your default. When you log in, you'll be directed to your default organization." msgstr "" -#: lib/towerops_web/live/dashboard_live.html.heex:45 +#: lib/towerops_web/live/dashboard_live.html.heex:48 #, elixir-autogen, elixir-format msgid "Set up your network monitoring in a few steps." msgstr "" -#: lib/towerops_web/live/org/settings_live.ex:129 +#: lib/towerops_web/live/org/settings_live.ex:162 #, elixir-autogen, elixir-format msgid "Settings saved successfully" msgstr "" -#: lib/towerops_web/live/org/integrations_live.html.heex:334 +#: lib/towerops_web/live/org/integrations_live.html.heex:398 #, elixir-autogen, elixir-format msgid "Setup Instructions" msgstr "" -#: lib/towerops_web/live/alert_live/index.html.heex:48 +#: lib/towerops_web/live/alert_live/index.html.heex:108 #, elixir-autogen, elixir-format msgid "Severity" msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:230 +#: lib/towerops_web/live/user_settings_live.html.heex:243 #, elixir-autogen, elixir-format msgid "Shanghai" msgstr "" -#: lib/towerops_web/live/device_live/index.html.heex:638 -#: lib/towerops_web/live/user_settings_live.html.heex:949 +#: lib/towerops_web/live/user_settings_live.html.heex:993 #, elixir-autogen, elixir-format msgid "Showing" msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:2018 +#: lib/towerops_web/live/device_live/show.html.heex:2145 #, elixir-autogen, elixir-format msgid "Showing the most recent 100 events" msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:1562 +#: lib/towerops_web/live/org/settings_live.html.heex:1895 #, elixir-autogen, elixir-format msgid "Signing Secret" msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:1130 +#: lib/towerops_web/live/user_settings_live.html.heex:1176 #, elixir-autogen, elixir-format msgid "Single-use backup codes for account access if you lose your authenticator app." msgstr "" -#: lib/towerops_web/live/dashboard_live.html.heex:600 -#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:138 -#: lib/towerops_web/live/org/settings_live.html.heex:1359 +#: lib/towerops_web/live/alert_live/index.html.heex:214 +#: lib/towerops_web/live/dashboard_live.html.heex:496 +#: lib/towerops_web/live/maintenance_live/form.html.heex:72 +#: lib/towerops_web/live/onboarding_live.ex:202 +#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:140 +#: lib/towerops_web/live/org/settings_live.html.heex:1451 #: lib/towerops_web/live/site_live/index.html.heex:45 #, elixir-autogen, elixir-format msgid "Site" msgstr "" -#: lib/towerops_web/live/device_live/form.html.heex:172 +#: lib/towerops_web/live/device_live/form.html.heex:174 #, elixir-autogen, elixir-format msgid "Site (Optional)" msgstr "" -#: lib/towerops_web/live/site_live/show.html.heex:121 +#: lib/towerops_web/live/site_live/show.html.heex:221 #, elixir-autogen, elixir-format msgid "Site Details" msgstr "" -#: lib/towerops_web/live/dashboard_live.html.heex:586 +#: lib/towerops_web/live/dashboard_live.html.heex:482 #, elixir-autogen, elixir-format msgid "Site Health" msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:2495 +#: lib/towerops_web/live/device_live/show.html.heex:2632 #: lib/towerops_web/live/site_live/form.html.heex:30 #, elixir-autogen, elixir-format msgid "Site Name" msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:171 +#: lib/towerops_web/live/org/settings_live.html.heex:177 #, elixir-autogen, elixir-format msgid "Site Organization" msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:201 +#: lib/towerops_web/live/org/settings_live.html.heex:213 #, elixir-autogen, elixir-format msgid "Site assignments will be lost, but devices will remain in the organization." msgstr "" @@ -3804,7 +3799,7 @@ msgstr "" msgid "Site linked successfully" msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:1279 +#: lib/towerops_web/live/org/settings_live.html.heex:1369 #, elixir-autogen, elixir-format msgid "Site names, locations, addresses, and coordinates" msgstr "" @@ -3814,8 +3809,9 @@ msgstr "" msgid "Site unlinked" msgstr "" -#: lib/towerops_web/live/dashboard_live.html.heex:267 -#: lib/towerops_web/live/org/settings_live.html.heex:1276 +#: lib/towerops_web/components/layouts.ex:275 +#: lib/towerops_web/components/layouts.ex:563 +#: lib/towerops_web/live/org/settings_live.html.heex:1366 #: lib/towerops_web/live/site_live/index.ex:21 #: lib/towerops_web/live/site_live/index.ex:51 #, elixir-autogen, elixir-format @@ -3828,17 +3824,12 @@ msgstr "" msgid "Sites Map" msgstr "" -#: lib/towerops_web/live/device_live/index.html.heex:159 -#, elixir-autogen, elixir-format -msgid "Sites help you organize devices by physical location. Create a site to assign your devices and keep things organized." -msgstr "" - #: lib/towerops_web/live/map_live/index.ex:36 #, elixir-autogen, elixir-format msgid "Sites map refreshed" msgstr "" -#: lib/towerops_web/live/dashboard_live.html.heex:57 +#: lib/towerops_web/live/dashboard_live.html.heex:60 #, elixir-autogen, elixir-format msgid "Sites represent your physical locations" msgstr "" @@ -3868,12 +3859,12 @@ msgstr "" msgid "Squirrel eating wires" msgstr "" -#: lib/towerops_web/live/site_live/show.html.heex:264 +#: lib/towerops_web/live/site_live/show.html.heex:369 #, elixir-autogen, elixir-format msgid "Start monitoring by adding network devices to this site." msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:2187 +#: lib/towerops_web/live/device_live/show.html.heex:2316 #, elixir-autogen, elixir-format msgid "State" msgstr "" @@ -3887,49 +3878,49 @@ msgstr "" #: lib/towerops_web/live/admin/agent_live/index.html.heex:106 #: lib/towerops_web/live/admin/security_live/index.html.heex:172 #: lib/towerops_web/live/agent_live/index.html.heex:91 -#: lib/towerops_web/live/agent_live/index.html.heex:201 -#: lib/towerops_web/live/device_live/index.html.heex:245 -#: lib/towerops_web/live/device_live/show.html.heex:2310 -#: lib/towerops_web/live/device_live/show.html.heex:2607 -#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:241 -#: lib/towerops_web/live/org/preseem_devices_live.html.heex:141 -#: lib/towerops_web/live/user_settings_live.html.heex:860 +#: lib/towerops_web/live/agent_live/index.html.heex:207 +#: lib/towerops_web/live/device_live/index.html.heex:278 +#: lib/towerops_web/live/device_live/show.html.heex:2443 +#: lib/towerops_web/live/device_live/show.html.heex:2744 +#: lib/towerops_web/live/maintenance_live/index.html.heex:95 +#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:243 +#: lib/towerops_web/live/org/preseem_devices_live.html.heex:143 +#: lib/towerops_web/live/user_settings_live.html.heex:904 #, elixir-autogen, elixir-format msgid "Status" msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:739 +#: lib/towerops_web/live/device_live/show.html.heex:800 #, elixir-autogen, elixir-format msgid "Storage Usage" msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:778 +#: lib/towerops_web/live/device_live/show.html.heex:839 #, elixir-autogen, elixir-format msgid "Storage Volumes" msgstr "" -#: lib/towerops_web/live/alert_live/index.html.heex:60 +#: lib/towerops_web/live/site_live/show.html.heex:169 #, elixir-autogen, elixir-format msgid "Subscriber Impact" msgstr "" -#: lib/towerops_web/live/trace_live/index.html.heex:537 +#: lib/towerops_web/live/trace_live/index.html.heex:553 #, elixir-autogen, elixir-format msgid "Subscriber Trace" msgstr "" -#: lib/towerops_web/live/dashboard_live.html.heex:223 -#: lib/towerops_web/live/dashboard_live.html.heex:612 -#: lib/towerops_web/live/device_live/index.html.heex:263 -#: lib/towerops_web/live/device_live/show.html.heex:2504 -#: lib/towerops_web/live/device_live/show.html.heex:2780 -#: lib/towerops_web/live/device_live/show.html.heex:2853 +#: lib/towerops_web/live/device_live/show.html.heex:2641 +#: lib/towerops_web/live/device_live/show.html.heex:2917 +#: lib/towerops_web/live/device_live/show.html.heex:2990 #: lib/towerops_web/live/site_live/index.html.heex:57 +#: lib/towerops_web/live/site_live/show.html.heex:76 +#: lib/towerops_web/live/site_live/show.html.heex:185 #, elixir-autogen, elixir-format msgid "Subscribers" msgstr "" -#: lib/towerops_web/live/trace_live/index.html.heex:313 +#: lib/towerops_web/live/trace_live/index.html.heex:326 #, elixir-autogen, elixir-format msgid "Subscribers on this AP" msgstr "" @@ -3939,12 +3930,12 @@ msgstr "" msgid "Success Rates" msgstr "" -#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:272 +#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:303 #, elixir-autogen, elixir-format msgid "Suggested matches:" msgstr "" -#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:72 +#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:74 #, elixir-autogen, elixir-format msgid "Summary" msgstr "" @@ -3954,79 +3945,83 @@ msgstr "" msgid "Superuser" msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:236 +#: lib/towerops_web/live/user_settings_live.html.heex:249 #, elixir-autogen, elixir-format msgid "Sydney" msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:1138 +#: lib/towerops_web/live/org/settings_live.html.heex:1218 #, elixir-autogen, elixir-format msgid "Sync Direction" msgstr "" -#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:287 +#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:289 #, elixir-autogen, elixir-format msgid "Sync Gaiia data and map inventory items to see reconciliation results." msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:1574 +#: lib/towerops_web/live/org/settings_live.html.heex:1908 #, elixir-autogen, elixir-format msgid "Sync Settings" msgstr "" -#: lib/towerops_web/live/org/integrations_live.html.heex:201 -#: lib/towerops_web/live/org/settings_live.html.heex:1390 -#: lib/towerops_web/live/org/settings_live.html.heex:1581 +#: lib/towerops_web/live/org/integrations_live.html.heex:260 +#: lib/towerops_web/live/org/integrations_live.html.heex:580 +#: lib/towerops_web/live/org/settings_live.html.heex:1482 +#: lib/towerops_web/live/org/settings_live.html.heex:1602 +#: lib/towerops_web/live/org/settings_live.html.heex:1724 +#: lib/towerops_web/live/org/settings_live.html.heex:1915 #, elixir-autogen, elixir-format msgid "Sync interval (minutes)" msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:978 +#: lib/towerops_web/live/org/settings_live.html.heex:1054 #, elixir-autogen, elixir-format msgid "Synced" msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:2099 +#: lib/towerops_web/live/device_live/show.html.heex:2228 #, elixir-autogen, elixir-format msgid "System OIDs" msgstr "" -#: lib/towerops_web/live/admin/dashboard_live.html.heex:51 +#: lib/towerops_web/live/admin/dashboard_live.html.heex:53 #, elixir-autogen, elixir-format msgid "System metrics and performance" msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:1371 +#: lib/towerops_web/live/org/settings_live.html.heex:1463 #, elixir-autogen, elixir-format msgid "Tag" msgstr "" -#: lib/towerops_web/live/admin/dashboard_live.html.heex:105 +#: lib/towerops_web/live/admin/dashboard_live.html.heex:124 #, elixir-autogen, elixir-format msgid "Target" msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:851 +#: lib/towerops_web/live/device_live/show.html.heex:912 #, elixir-autogen, elixir-format msgid "Temperature" msgstr "" -#: lib/towerops_web/live/org/integrations_live.html.heex:238 +#: lib/towerops_web/live/org/integrations_live.html.heex:297 +#: lib/towerops_web/live/org/integrations_live.html.heex:617 #, elixir-autogen, elixir-format msgid "Test Connection" msgstr "" -#: lib/towerops_web/live/device_live/form.html.heex:542 +#: lib/towerops_web/live/device_live/form.html.heex:555 #, elixir-autogen, elixir-format msgid "Test SNMP Connection" msgstr "" -#: lib/towerops_web/live/device_live/form.html.heex:569 +#: lib/towerops_web/live/device_live/form.html.heex:582 #, elixir-autogen, elixir-format msgid "Testing SNMP credentials..." msgstr "" -#: lib/towerops_web/live/device_live/form.html.heex:541 +#: lib/towerops_web/live/device_live/form.html.heex:553 #, elixir-autogen, elixir-format msgid "Testing..." msgstr "" @@ -4051,7 +4046,7 @@ msgstr "" msgid "These backups are identical. No differences found." msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:1687 +#: lib/towerops_web/live/user_settings_live.html.heex:1765 #, elixir-autogen, elixir-format msgid "These codes won't be shown again. Store them securely (password manager, encrypted file, etc.)." msgstr "" @@ -4061,37 +4056,37 @@ msgstr "" msgid "This IP address (private network or CGNAT range) cannot be reached from the cloud." msgstr "" -#: lib/towerops_web/live/agent_live/show.html.heex:312 +#: lib/towerops_web/live/agent_live/show.html.heex:322 #, elixir-autogen, elixir-format msgid "This agent is not currently polling any device." msgstr "" -#: lib/towerops_web/live/agent_live/index.html.heex:443 +#: lib/towerops_web/live/agent_live/index.html.heex:457 #, elixir-autogen, elixir-format msgid "This configuration includes Watchtower for automatic agent updates. The agent will automatically update to the latest version every 12 hours." msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:1489 +#: lib/towerops_web/live/device_live/show.html.heex:1604 #, elixir-autogen, elixir-format msgid "This device doesn't have any ARP entries, or ARP discovery hasn't run yet." msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:1760 +#: lib/towerops_web/live/device_live/show.html.heex:1881 #, elixir-autogen, elixir-format msgid "This device doesn't have any IP addresses discovered, or IP discovery hasn't run yet." msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:1409 +#: lib/towerops_web/live/device_live/show.html.heex:1522 #, elixir-autogen, elixir-format msgid "This device doesn't have any LLDP or CDP neighbors, or neighbor discovery hasn't run yet." msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:1575 +#: lib/towerops_web/live/device_live/show.html.heex:1690 #, elixir-autogen, elixir-format msgid "This device doesn't have any MAC forwarding entries, or MAC discovery hasn't run yet." msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:1644 +#: lib/towerops_web/live/device_live/show.html.heex:1761 #, elixir-autogen, elixir-format msgid "This device doesn't have any VLANs configured, or VLAN discovery hasn't run yet." msgstr "" @@ -4111,123 +4106,123 @@ msgstr "" msgid "This invitation is invalid or has expired." msgstr "" -#: lib/towerops_web/live/org/settings_live.ex:245 +#: lib/towerops_web/live/org/settings_live.ex:281 #, elixir-autogen, elixir-format msgid "This is already your default organization" msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:147 +#: lib/towerops_web/live/org/settings_live.html.heex:153 #, elixir-autogen, elixir-format msgid "This is your default organization" msgstr "" -#: lib/towerops_web/live/device_live/form.html.heex:698 +#: lib/towerops_web/live/device_live/form.html.heex:716 #, elixir-autogen, elixir-format msgid "This setting is blocked when using cloud pollers" msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:506 +#: lib/towerops_web/live/org/settings_live.html.heex:536 #, elixir-autogen, elixir-format msgid "This will assign the default agent to ALL devices across all sites in this organization." msgstr "" -#: lib/towerops_web/live/site_live/form.html.heex:218 +#: lib/towerops_web/live/site_live/form.html.heex:222 #, elixir-autogen, elixir-format msgid "This will assign this agent to ALL devices at this site." msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:1160 +#: lib/towerops_web/live/user_settings_live.html.heex:1207 #, elixir-autogen, elixir-format msgid "This will invalidate all existing unused recovery codes. Continue?" msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:1233 +#: lib/towerops_web/live/user_settings_live.html.heex:1282 #, elixir-autogen, elixir-format msgid "This will log you out from all other browsers and devices. Your current session will remain active." msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:333 +#: lib/towerops_web/live/org/settings_live.html.heex:349 #, elixir-autogen, elixir-format msgid "This will override SNMP settings for ALL devices across all sites in this organization." msgstr "" -#: lib/towerops_web/live/site_live/form.html.heex:357 +#: lib/towerops_web/live/site_live/form.html.heex:369 #, elixir-autogen, elixir-format msgid "This will override SNMP settings for ALL devices at this site." msgstr "" -#: lib/towerops_web/live/site_live/form.html.heex:362 +#: lib/towerops_web/live/site_live/form.html.heex:375 #, elixir-autogen, elixir-format msgid "This will replace SNMP settings for ALL devices at this site. Are you sure?" msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:338 +#: lib/towerops_web/live/org/settings_live.html.heex:357 #, elixir-autogen, elixir-format msgid "This will replace SNMP settings for ALL devices in this organization. Are you sure?" msgstr "" -#: lib/towerops_web/live/site_live/form.html.heex:223 +#: lib/towerops_web/live/site_live/form.html.heex:228 #, elixir-autogen, elixir-format msgid "This will replace agent assignments for ALL devices at this site. Are you sure?" msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:511 +#: lib/towerops_web/live/org/settings_live.html.heex:544 #, elixir-autogen, elixir-format msgid "This will replace agent assignments for ALL devices in this organization. Are you sure?" msgstr "" -#: lib/towerops_web/live/device_live/index.html.heex:100 +#: lib/towerops_web/live/device_live/index.html.heex:119 #, elixir-autogen, elixir-format msgid "This will trigger SNMP discovery for all SNMP-enabled devices. Continue?" msgstr "" -#: lib/towerops_web/live/site_live/show.html.heex:19 +#: lib/towerops_web/live/site_live/show.html.heex:45 #, elixir-autogen, elixir-format msgid "This will trigger SNMP discovery for all devices at this site. Continue?" msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:2850 +#: lib/towerops_web/live/device_live/show.html.heex:2987 #, elixir-autogen, elixir-format msgid "Throughput" msgstr "" -#: lib/towerops_web/live/admin/dashboard_live.html.heex:106 -#: lib/towerops_web/live/device_live/show.html.heex:2835 +#: lib/towerops_web/live/admin/dashboard_live.html.heex:125 +#: lib/towerops_web/live/device_live/show.html.heex:2972 #, elixir-autogen, elixir-format msgid "Time" msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:260 +#: lib/towerops_web/live/user_settings_live.html.heex:273 #, elixir-autogen, elixir-format msgid "Time Format" msgstr "" -#: lib/towerops_web/live/agent_live/show.html.heex:257 +#: lib/towerops_web/live/agent_live/show.html.heex:267 #, elixir-autogen, elixir-format msgid "Timestamps" msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:167 +#: lib/towerops_web/live/user_settings_live.html.heex:180 #, elixir-autogen, elixir-format msgid "Timezone" msgstr "" -#: lib/towerops_web/live/org_live/new.html.heex:22 +#: lib/towerops_web/live/org_live/new.html.heex:21 #, elixir-autogen, elixir-format msgid "To create additional organizations, you'll need to upgrade your existing organization to a paid plan." msgstr "" -#: lib/towerops_web/live/device_live/form.html.heex:157 +#: lib/towerops_web/live/device_live/form.html.heex:159 #, elixir-autogen, elixir-format msgid "To monitor this device, assign it to a" msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:678 +#: lib/towerops_web/live/user_settings_live.html.heex:710 #, elixir-autogen, elixir-format msgid "Toggle" msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:224 +#: lib/towerops_web/live/user_settings_live.html.heex:237 #, elixir-autogen, elixir-format msgid "Tokyo" msgstr "" @@ -4242,37 +4237,39 @@ msgstr "" msgid "Total Devices" msgstr "" -#: lib/towerops_web/live/dashboard_live.html.heex:94 +#: lib/towerops_web/live/dashboard_live.html.heex:97 #, elixir-autogen, elixir-format msgid "TowerOps automatically monitors your devices and alerts you of issues" msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:1194 +#: lib/towerops_web/live/org/settings_live.html.heex:1278 #, elixir-autogen, elixir-format msgid "TowerOps is the source of truth. Push discovered devices and monitoring data to NetBox." msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:1522 +#: lib/towerops_web/live/org/settings_live.html.heex:1853 #, elixir-autogen, elixir-format msgid "TowerOps will automatically update the corresponding alert." msgstr "" -#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:186 +#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:188 #, elixir-autogen, elixir-format msgid "Towerops" msgstr "" +#: lib/towerops_web/components/layouts.ex:366 +#: lib/towerops_web/components/layouts.ex:585 #: lib/towerops_web/live/trace_live/index.ex:73 #, elixir-autogen, elixir-format msgid "Trace" msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:927 +#: lib/towerops_web/live/device_live/show.html.heex:990 #, elixir-autogen, elixir-format msgid "Transceivers" msgstr "" -#: lib/towerops_web/live/alert_live/index.html.heex:10 +#: lib/towerops_web/live/alert_live/index.html.heex:15 #, elixir-autogen, elixir-format msgid "Triage alerts by site impact — fix the biggest problems first" msgstr "" @@ -4282,12 +4279,12 @@ msgstr "" msgid "Try adjusting your search terms or clearing the filters." msgstr "" -#: lib/towerops_web/live/trace_live/index.html.heex:75 +#: lib/towerops_web/live/trace_live/index.html.heex:79 #, elixir-autogen, elixir-format msgid "Try searching by customer name, IP address, account ID, or device name" msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:1517 +#: lib/towerops_web/live/org/settings_live.html.heex:1846 #, elixir-autogen, elixir-format msgid "Two-Way Sync (Webhooks)" msgstr "" @@ -4302,56 +4299,57 @@ msgstr "" msgid "Two-factor authentication is required for this action." msgstr "" -#: lib/towerops_web/live/device_live/index.html.heex:560 -#: lib/towerops_web/live/device_live/show.html.heex:2175 +#: lib/towerops_web/live/device_live/index.html.heex:284 +#: lib/towerops_web/live/device_live/index.html.heex:613 +#: lib/towerops_web/live/device_live/show.html.heex:2304 #, elixir-autogen, elixir-format msgid "Type" msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:176 +#: lib/towerops_web/live/user_settings_live.html.heex:189 #, elixir-autogen, elixir-format msgid "UTC (Coordinated Universal Time)" msgstr "" -#: lib/towerops_web/live/admin/security_live/index.html.heex:198 +#: lib/towerops_web/live/admin/security_live/index.html.heex:200 #, elixir-autogen, elixir-format msgid "Unblock" msgstr "" -#: lib/towerops_web/live/admin/security_live/index.html.heex:195 +#: lib/towerops_web/live/admin/security_live/index.html.heex:196 #, elixir-autogen, elixir-format msgid "Unblock this IP address? This will remove all offense history." msgstr "" -#: lib/towerops_web/live/agent_live/show.html.heex:218 -#: lib/towerops_web/live/device_live/show.html.heex:1364 +#: lib/towerops_web/live/agent_live/show.html.heex:228 +#: lib/towerops_web/live/device_live/show.html.heex:1477 #, elixir-autogen, elixir-format msgid "Unknown" msgstr "" -#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:216 -#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:239 -#: lib/towerops_web/live/org/preseem_devices_live.html.heex:202 +#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:247 +#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:270 +#: lib/towerops_web/live/org/preseem_devices_live.html.heex:213 #, elixir-autogen, elixir-format msgid "Unlink" msgstr "" -#: lib/towerops_web/live/org/preseem_devices_live.html.heex:199 +#: lib/towerops_web/live/org/preseem_devices_live.html.heex:210 #, elixir-autogen, elixir-format msgid "Unlink this device from the Preseem access point?" msgstr "" -#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:236 +#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:267 #, elixir-autogen, elixir-format msgid "Unlink this device?" msgstr "" -#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:213 +#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:244 #, elixir-autogen, elixir-format msgid "Unlink this site?" msgstr "" -#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:310 +#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:312 #, elixir-autogen, elixir-format msgid "Unmapped Gaiia items (no Towerops link)" msgstr "" @@ -4361,7 +4359,7 @@ msgstr "" msgid "Unmatched" msgstr "" -#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:318 +#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:320 #, elixir-autogen, elixir-format msgid "Untracked Towerops devices (not in Gaiia)" msgstr "" @@ -4376,22 +4374,22 @@ msgstr "" msgid "Update the agent name. The authentication token cannot be changed." msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:112 +#: lib/towerops_web/live/org/settings_live.html.heex:116 #, elixir-autogen, elixir-format msgid "Update the name of your organization." msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:387 +#: lib/towerops_web/live/user_settings_live.html.heex:407 #, elixir-autogen, elixir-format msgid "Update your email address. You'll receive a confirmation link to verify the new address." msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:113 +#: lib/towerops_web/live/user_settings_live.html.heex:126 #, elixir-autogen, elixir-format msgid "Update your name and timezone preferences." msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:435 +#: lib/towerops_web/live/user_settings_live.html.heex:457 #, elixir-autogen, elixir-format msgid "Update your password. You'll be logged out and need to sign in again with your new password." msgstr "" @@ -4401,30 +4399,25 @@ msgstr "" msgid "Updates every 10 seconds" msgstr "" -#: lib/towerops_web/live/dashboard_live.html.heex:159 -#, elixir-autogen, elixir-format -msgid "Uptime" -msgstr "" - -#: lib/towerops_web/live/device_live/form.html.heex:688 -#: lib/towerops_web/live/org/settings_live.html.heex:414 -#: lib/towerops_web/live/site_live/form.html.heex:419 +#: lib/towerops_web/live/device_live/form.html.heex:703 +#: lib/towerops_web/live/org/settings_live.html.heex:438 +#: lib/towerops_web/live/site_live/form.html.heex:435 #, elixir-autogen, elixir-format msgid "Use SSL (API-SSL)" msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:182 +#: lib/towerops_web/live/org/settings_live.html.heex:190 #, elixir-autogen, elixir-format msgid "Use sites to organize devices" msgstr "" -#: lib/towerops_web/live/agent_live/index.html.heex:387 +#: lib/towerops_web/live/agent_live/index.html.heex:401 #, elixir-autogen, elixir-format msgid "Use the token and Docker Compose configuration below to deploy this agent." msgstr "" -#: lib/towerops_web/live/admin/dashboard_live.html.heex:104 -#: lib/towerops_web/live/org/settings_live.html.heex:707 +#: lib/towerops_web/live/admin/dashboard_live.html.heex:123 +#: lib/towerops_web/live/org/settings_live.html.heex:748 #, elixir-autogen, elixir-format msgid "User" msgstr "" @@ -4435,12 +4428,13 @@ msgstr "" msgid "User confirmed successfully." msgstr "" -#: lib/towerops_web/live/device_live/form.html.heex:433 -#: lib/towerops_web/live/device_live/form.html.heex:661 -#: lib/towerops_web/live/org/settings_live.html.heex:264 -#: lib/towerops_web/live/org/settings_live.html.heex:384 -#: lib/towerops_web/live/site_live/form.html.heex:288 -#: lib/towerops_web/live/site_live/form.html.heex:398 +#: lib/towerops_web/live/device_live/form.html.heex:442 +#: lib/towerops_web/live/device_live/form.html.heex:676 +#: lib/towerops_web/live/onboarding_live.html.heex:90 +#: lib/towerops_web/live/org/settings_live.html.heex:280 +#: lib/towerops_web/live/org/settings_live.html.heex:408 +#: lib/towerops_web/live/site_live/form.html.heex:300 +#: lib/towerops_web/live/site_live/form.html.heex:414 #, elixir-autogen, elixir-format msgid "Username" msgstr "" @@ -4450,40 +4444,40 @@ msgstr "" msgid "Users" msgstr "" -#: lib/towerops_web/live/device_live/form.html.heex:421 +#: lib/towerops_web/live/device_live/form.html.heex:428 #, elixir-autogen, elixir-format msgid "Using default (v2c, no community set - configure at organization or site level)" msgstr "" -#: lib/towerops_web/live/device_live/form.html.heex:282 +#: lib/towerops_web/live/device_live/form.html.heex:284 #, elixir-autogen, elixir-format msgid "Using global default cloud poller:" msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:184 +#: lib/towerops_web/live/device_live/show.html.heex:219 #, elixir-autogen, elixir-format msgid "VLANs" msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:2112 -#: lib/towerops_web/live/device_live/show.html.heex:2146 -#: lib/towerops_web/live/device_live/show.html.heex:2184 -#: lib/towerops_web/live/device_live/show.html.heex:2316 +#: lib/towerops_web/live/device_live/show.html.heex:2241 +#: lib/towerops_web/live/device_live/show.html.heex:2275 +#: lib/towerops_web/live/device_live/show.html.heex:2313 +#: lib/towerops_web/live/device_live/show.html.heex:2449 #, elixir-autogen, elixir-format msgid "Value" msgstr "" -#: lib/towerops_web/live/agent_live/show.html.heex:98 +#: lib/towerops_web/live/agent_live/show.html.heex:106 #, elixir-autogen, elixir-format msgid "Verbose logging is disabled. Enable it in the agent edit page to troubleshoot issues." msgstr "" -#: lib/towerops_web/live/agent_live/show.html.heex:96 +#: lib/towerops_web/live/agent_live/show.html.heex:104 #, elixir-autogen, elixir-format msgid "Verbose logging is enabled. All SNMP data and agent messages are being logged." msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:1582 +#: lib/towerops_web/live/user_settings_live.html.heex:1660 #, elixir-autogen, elixir-format msgid "Verify" msgstr "" @@ -4491,23 +4485,23 @@ msgstr "" #: lib/towerops_web/live/admin/agent_live/index.html.heex:68 #: lib/towerops_web/live/admin/agent_live/index.html.heex:142 #: lib/towerops_web/live/agent_live/index.html.heex:128 -#: lib/towerops_web/live/agent_live/index.html.heex:238 +#: lib/towerops_web/live/agent_live/index.html.heex:244 #, elixir-autogen, elixir-format msgid "Version" msgstr "" -#: lib/towerops_web/live/agent_live/show.html.heex:105 +#: lib/towerops_web/live/agent_live/show.html.heex:115 #, elixir-autogen, elixir-format msgid "View Debug Logs" msgstr "" #: lib/towerops_web/live/agent_live/index.html.heex:151 -#: lib/towerops_web/live/agent_live/index.html.heex:261 +#: lib/towerops_web/live/agent_live/index.html.heex:267 #, elixir-autogen, elixir-format msgid "View Setup" msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:774 +#: lib/towerops_web/live/org/settings_live.html.heex:824 #, elixir-autogen, elixir-format msgid "Viewer" msgstr "" @@ -4517,7 +4511,7 @@ msgstr "" msgid "Visual topology of your network infrastructure" msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:889 +#: lib/towerops_web/live/device_live/show.html.heex:951 #, elixir-autogen, elixir-format msgid "Voltage" msgstr "" @@ -4527,12 +4521,12 @@ msgstr "" msgid "Warning" msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:196 +#: lib/towerops_web/live/org/settings_live.html.heex:206 #, elixir-autogen, elixir-format msgid "Warning: Disabling Sites" msgstr "" -#: lib/towerops_web/live/agent_live/index.html.heex:326 +#: lib/towerops_web/live/agent_live/index.html.heex:338 #, elixir-autogen, elixir-format msgid "Warning: Selected agent no longer exists. Please choose a new agent." msgstr "" @@ -4542,56 +4536,56 @@ msgstr "" msgid "We're working on fixing the problem. Please try again later." msgstr "" -#: lib/towerops_web/live/org/integrations_live.html.heex:266 -#: lib/towerops_web/live/org/settings_live.html.heex:1651 +#: lib/towerops_web/live/org/integrations_live.html.heex:324 +#: lib/towerops_web/live/org/settings_live.html.heex:1988 #, elixir-autogen, elixir-format msgid "Webhook Configuration" msgstr "" -#: lib/towerops_web/live/org/integrations_live.html.heex:299 -#: lib/towerops_web/live/org/settings_live.html.heex:1685 +#: lib/towerops_web/live/org/integrations_live.html.heex:359 +#: lib/towerops_web/live/org/settings_live.html.heex:2024 #, elixir-autogen, elixir-format msgid "Webhook Secret" msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:1537 +#: lib/towerops_web/live/org/settings_live.html.heex:1868 #, elixir-autogen, elixir-format msgid "Webhook Signing Secret" msgstr "" -#: lib/towerops_web/live/org/integrations_live.html.heex:275 -#: lib/towerops_web/live/org/settings_live.html.heex:1526 -#: lib/towerops_web/live/org/settings_live.html.heex:1661 +#: lib/towerops_web/live/org/integrations_live.html.heex:335 +#: lib/towerops_web/live/org/settings_live.html.heex:1857 +#: lib/towerops_web/live/org/settings_live.html.heex:2000 #, elixir-autogen, elixir-format msgid "Webhook URL" msgstr "" -#: lib/towerops_web/live/org/integrations_live.ex:164 +#: lib/towerops_web/live/org/integrations_live.ex:245 #, elixir-autogen, elixir-format msgid "Webhook secret regenerated" msgstr "" -#: lib/towerops_web/live/org/settings_live.ex:429 +#: lib/towerops_web/live/org/settings_live.ex:441 #, elixir-autogen, elixir-format msgid "Webhook secret saved" msgstr "" -#: lib/towerops_web/live/agent_live/show.html.heex:128 +#: lib/towerops_web/live/agent_live/show.html.heex:138 #, elixir-autogen, elixir-format msgid "What Gets Logged:" msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:1232 +#: lib/towerops_web/live/org/settings_live.html.heex:1320 #, elixir-autogen, elixir-format msgid "What to Sync" msgstr "" -#: lib/towerops_web/live/dashboard_live.html.heex:389 +#: lib/towerops_web/live/dashboard_live.html.heex:374 #, elixir-autogen, elixir-format msgid "When" msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:1509 +#: lib/towerops_web/live/org/settings_live.html.heex:1836 #, elixir-autogen, elixir-format msgid "When connected, TowerOps will automatically trigger, acknowledge, and resolve PagerDuty incidents in sync with your alerts." msgstr "" @@ -4601,27 +4595,27 @@ msgstr "" msgid "When enabled, the server logs all SNMP data and messages for this agent." msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:185 +#: lib/towerops_web/live/org/settings_live.html.heex:193 #, elixir-autogen, elixir-format msgid "When enabled, you can organize devices into sites. When disabled, all devices belong directly to the organization." msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:1521 +#: lib/towerops_web/live/org/settings_live.html.heex:1850 #, elixir-autogen, elixir-format msgid "When someone resolves or acknowledges an incident directly in PagerDuty," msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:1494 +#: lib/towerops_web/live/org/settings_live.html.heex:1818 #, elixir-autogen, elixir-format msgid "Where to find your Integration Key" msgstr "" -#: lib/towerops_web/live/device_live/show.html.heex:1040 +#: lib/towerops_web/live/device_live/show.html.heex:1106 #, elixir-autogen, elixir-format msgid "Wireless" msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:1101 +#: lib/towerops_web/live/org/settings_live.html.heex:1181 #, elixir-autogen, elixir-format msgid "Write permission is required if you want to push data to NetBox." msgstr "" @@ -4633,12 +4627,12 @@ msgstr "" msgid "You don't have access to this device" msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:1148 +#: lib/towerops_web/live/user_settings_live.html.heex:1194 #, elixir-autogen, elixir-format msgid "You have" msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:1181 +#: lib/towerops_web/live/user_settings_live.html.heex:1229 #, elixir-autogen, elixir-format msgid "You have no recovery codes available. If you lose access to your authenticator app," msgstr "" @@ -4648,22 +4642,22 @@ msgstr "" msgid "You've joined %{org}!" msgstr "" -#: lib/towerops_web/live/org/settings_live.html.heex:1100 +#: lib/towerops_web/live/org/settings_live.html.heex:1178 #, elixir-autogen, elixir-format msgid "Your NetBox instance URL and API token. The token needs read permission at minimum." msgstr "" -#: lib/towerops_web/live/org_live/index.ex:15 +#: lib/towerops_web/live/org_live/index.ex:14 #, elixir-autogen, elixir-format msgid "Your Organizations" msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:752 +#: lib/towerops_web/live/user_settings_live.html.heex:785 #, elixir-autogen, elixir-format msgid "Your current session will appear here after your next login." msgstr "" -#: lib/towerops_web/live/user_settings_live.html.heex:842 +#: lib/towerops_web/live/user_settings_live.html.heex:886 #, elixir-autogen, elixir-format msgid "Your login attempts will appear here." msgstr "" @@ -4673,50 +4667,791 @@ msgstr "" msgid "Your network operations log is empty. Events will appear here in real time as config changes, alerts, device events, and syncs happen across your organization." msgstr "" -#: lib/towerops_web/plugs/update_session_activity.ex:98 +#: lib/towerops_web/plugs/update_session_activity.ex:99 #, elixir-autogen, elixir-format msgid "Your session expired due to inactivity. Please log in again." msgstr "" -#: lib/towerops/workers/gaiia_insight_worker.ex:45 -#: lib/towerops/workers/gaiia_insight_worker.ex:47 +#: lib/towerops/workers/gaiia_insight_worker.ex:80 +#: lib/towerops/workers/gaiia_insight_worker.ex:82 #, elixir-autogen, elixir-format msgid "device" msgid_plural "devices" msgstr[0] "" msgstr[1] "" -#: lib/towerops/workers/gaiia_insight_worker.ex:95 +#: lib/towerops/workers/gaiia_insight_worker.ex:130 #, elixir-autogen, elixir-format msgid "device has" msgid_plural "devices have" msgstr[0] "" msgstr[1] "" -#: lib/towerops/workers/gaiia_insight_worker.ex:47 +#: lib/towerops/workers/gaiia_insight_worker.ex:82 #, elixir-autogen, elixir-format msgid "has" msgid_plural "have" msgstr[0] "" msgstr[1] "" -#: lib/towerops/workers/gaiia_insight_worker.ex:72 +#: lib/towerops/workers/gaiia_insight_worker.ex:107 #, elixir-autogen, elixir-format msgid "item is" msgid_plural "items are" msgstr[0] "" msgstr[1] "" -#: lib/towerops/workers/gaiia_insight_worker.ex:70 +#: lib/towerops/workers/gaiia_insight_worker.ex:105 #, elixir-autogen, elixir-format msgid "item references" msgid_plural "items reference" msgstr[0] "" msgstr[1] "" -#: lib/towerops/workers/gaiia_insight_worker.ex:93 +#: lib/towerops/workers/gaiia_insight_worker.ex:128 #, elixir-autogen, elixir-format msgid "mismatch" msgid_plural "mismatches" msgstr[0] "" msgstr[1] "" + +#: lib/towerops_web/controllers/user_session_html/new.html.heex:18 +#, elixir-autogen, elixir-format +msgid "\"TowerOps cut our response time to network issues by 80%. We can see problems before customers even notice.\"" +msgstr "" + +#: lib/towerops_web/live/onboarding_live.html.heex:263 +#: lib/towerops_web/live/org/integrations_live.html.heex:250 +#: lib/towerops_web/live/org/settings_live.html.heex:1704 +#, elixir-autogen, elixir-format +msgid "API Secret" +msgstr "" + +#: lib/towerops_web/live/alert_live/index.html.heex:145 +#, elixir-autogen, elixir-format +msgid "Ack Selected" +msgstr "" + +#: lib/towerops_web/live/alert_live/index.html.heex:418 +#, elixir-autogen, elixir-format +msgid "Ack'd" +msgstr "" + +#: lib/towerops_web/live/dashboard_live.html.heex:272 +#, elixir-autogen, elixir-format +msgid "Active Issues" +msgstr "" + +#: lib/towerops_web/components/layouts.ex:379 +#: lib/towerops_web/components/layouts.ex:588 +#, elixir-autogen, elixir-format +msgid "Activity" +msgstr "" + +#: lib/towerops_web/live/site_live/index.html.heex:138 +#: lib/towerops_web/live/site_live/show.html.heex:56 +#, elixir-autogen, elixir-format +msgid "Add Device" +msgstr "" + +#: lib/towerops_web/live/onboarding_live.html.heex:137 +#, elixir-autogen, elixir-format +msgid "Add Your First Site" +msgstr "" + +#: lib/towerops_web/components/layouts.ex:459 +#, elixir-autogen, elixir-format +msgid "Admin Panel" +msgstr "" + +#: lib/towerops_web/live/dashboard_live.html.heex:511 +#, elixir-autogen, elixir-format +msgid "Affected" +msgstr "" + +#: lib/towerops_web/live/onboarding_live.ex:204 +#, elixir-autogen, elixir-format +msgid "Agent" +msgstr "" + +#: lib/towerops_web/live/onboarding_live.html.heex:330 +#, elixir-autogen, elixir-format +msgid "Agent:" +msgstr "" + +#: lib/towerops_web/live/dashboard_live.html.heex:368 +#, elixir-autogen, elixir-format +msgid "Alert" +msgstr "" + +#: lib/towerops_web/live/maintenance_live/show.html.heex:59 +#, elixir-autogen, elixir-format +msgid "Are you sure you want to delete this maintenance window?" +msgstr "" + +#: lib/towerops_web/live/maintenance_live/form.html.heex:12 +#: lib/towerops_web/live/maintenance_live/show.html.heex:12 +#, elixir-autogen, elixir-format +msgid "Back to Maintenance Windows" +msgstr "" + +#: lib/towerops_web/live/onboarding_live.html.heex:226 +#, elixir-autogen, elixir-format +msgid "Back to providers" +msgstr "" + +#: lib/towerops_web/live/onboarding_live.ex:203 +#, elixir-autogen, elixir-format +msgid "Billing" +msgstr "" + +#: lib/towerops_web/live/device_live/index.html.heex:240 +#, elixir-autogen, elixir-format +msgid "Clear filter" +msgstr "" + +#: lib/towerops_web/live/alert_live/index.html.heex:155 +#, elixir-autogen, elixir-format +msgid "Clear selection" +msgstr "" + +#: lib/towerops_web/live/device_live/show.html.heex:58 +#: lib/towerops_web/live/device_live/show.html.heex:385 +#: lib/towerops_web/live/device_live/show.html.heex:1361 +#: lib/towerops_web/live/device_live/show.html.heex:1385 +#, elixir-autogen, elixir-format +msgid "Click to copy" +msgstr "" + +#: lib/towerops_web/live/onboarding_live.html.heex:194 +#, elixir-autogen, elixir-format +msgid "Connect a Billing Platform" +msgstr "" + +#: lib/towerops_web/live/site_live/index.html.heex:63 +#, elixir-autogen, elixir-format +msgid "Coordinates" +msgstr "" + +#: lib/towerops_web/live/onboarding_live.html.heex:187 +#, elixir-autogen, elixir-format +msgid "Create Site & Continue" +msgstr "" + +#: lib/towerops_web/live/device_live/index.html.heex:136 +#, elixir-autogen, elixir-format +msgid "Create a site" +msgstr "" + +#: lib/towerops_web/live/maintenance_live/index.html.heex:98 +#: lib/towerops_web/live/maintenance_live/show.html.heex:137 +#, elixir-autogen, elixir-format +msgid "Created By" +msgstr "" + +#: lib/towerops_web/live/maintenance_live/show.html.heex:25 +#, elixir-autogen, elixir-format +msgid "Currently Active" +msgstr "" + +#: lib/towerops_web/components/layouts.ex:262 +#: lib/towerops_web/components/layouts.ex:553 +#, elixir-autogen, elixir-format +msgid "Dashboard" +msgstr "" + +#: lib/towerops_web/live/onboarding_live.html.heex:307 +#, elixir-autogen, elixir-format +msgid "Deploy Agent" +msgstr "" + +#: lib/towerops_web/live/alert_live/index.html.heex:484 +#, elixir-autogen, elixir-format +msgid "Details" +msgstr "" + +#: lib/towerops_web/live/onboarding_live.html.heex:340 +#, elixir-autogen, elixir-format +msgid "Docker" +msgstr "" + +#: lib/towerops_web/live/onboarding_live.html.heex:373 +#, elixir-autogen, elixir-format +msgid "Done — Go to Dashboard" +msgstr "" + +#: lib/towerops_web/live/alert_live/index.html.heex:226 +#, elixir-autogen, elixir-format +msgid "Duration" +msgstr "" + +#: lib/towerops_web/live/maintenance_live/show.html.heex:54 +#, elixir-autogen, elixir-format +msgid "Edit" +msgstr "" + +#: lib/towerops_web/live/maintenance_live/form.ex:49 +#, elixir-autogen, elixir-format +msgid "Edit Maintenance Window" +msgstr "" + +#: lib/towerops_web/live/maintenance_live/form.html.heex:119 +#, elixir-autogen, elixir-format +msgid "Ends At" +msgstr "" + +#: lib/towerops_web/live/user_settings_live.html.heex:1624 +#, elixir-autogen, elixir-format +msgid "Enter the 6-digit code from your app to verify setup" +msgstr "" + +#: lib/towerops_web/live/org/settings_live.html.heex:1589 +#, elixir-autogen, elixir-format +msgid "Enter your Sonar API token" +msgstr "" + +#: lib/towerops_web/live/org/settings_live.html.heex:1697 +#, elixir-autogen, elixir-format +msgid "Enter your Splynx API key" +msgstr "" + +#: lib/towerops_web/live/org/settings_live.html.heex:1710 +#, elixir-autogen, elixir-format +msgid "Enter your Splynx API secret" +msgstr "" + +#: lib/towerops_web/live/org/settings_live.html.heex:815 +#, elixir-autogen, elixir-format +msgid "Executive" +msgstr "" + +#: lib/towerops_web/live/device_live/index.html.heex:56 +#, elixir-autogen, elixir-format +msgid "Existing" +msgstr "" + +#: lib/towerops_web/live/onboarding_live.html.heex:363 +#, elixir-autogen, elixir-format +msgid "Failed to create agent token. You can create one later in Settings → Agents." +msgstr "" + +#: lib/towerops_web/live/device_live/index.html.heex:175 +#, elixir-autogen, elixir-format +msgid "Filter by name or IP..." +msgstr "" + +#: lib/towerops_web/live/site_live/show.html.heex:48 +#, elixir-autogen, elixir-format +msgid "Force Rediscover All" +msgstr "" + +#: lib/towerops_web/controllers/user_registration_html/new.html.heex:17 +#, elixir-autogen, elixir-format +msgid "Free tier includes:" +msgstr "" + +#: lib/towerops_web/live/user_settings_live.html.heex:1606 +#, elixir-autogen, elixir-format +msgid "Install an authenticator app (Google Authenticator, Authy, 1Password, etc.)" +msgstr "" + +#: lib/towerops_web/live/onboarding_live.html.heex:241 +#: lib/towerops_web/live/onboarding_live.html.heex:255 +#: lib/towerops_web/live/org/integrations_live.html.heex:219 +#: lib/towerops_web/live/org/settings_live.html.heex:1570 +#: lib/towerops_web/live/org/settings_live.html.heex:1677 +#, elixir-autogen, elixir-format +msgid "Instance URL" +msgstr "" + +#: lib/towerops_web/live/onboarding_live.ex:144 +#, elixir-autogen, elixir-format +msgid "Integration saved" +msgstr "" + +#: lib/towerops_web/live/site_live/index.html.heex:66 +#, elixir-autogen, elixir-format +msgid "Last Check" +msgstr "" + +#: lib/towerops_web/live/site_live/show.html.heex:388 +#, elixir-autogen, elixir-format +msgid "Latency" +msgstr "" + +#: lib/towerops_web/live/device_live/show.html.heex:608 +#: lib/towerops_web/live/device_live/show.html.heex:644 +#: lib/towerops_web/live/site_live/show.html.heex:501 +#, elixir-autogen, elixir-format +msgid "Loading chart..." +msgstr "" + +#: lib/towerops_web/components/layouts.ex:493 +#, elixir-autogen, elixir-format +msgid "Log out" +msgstr "" + +#: lib/towerops_web/components/layouts.ex:287 +#: lib/towerops_web/components/layouts.ex:569 +#, elixir-autogen, elixir-format +msgid "Maintenance" +msgstr "" + +#: lib/towerops_web/live/maintenance_live/index.ex:13 +#: lib/towerops_web/live/maintenance_live/index.html.heex:7 +#, elixir-autogen, elixir-format +msgid "Maintenance Windows" +msgstr "" + +#: lib/towerops_web/live/maintenance_live/form.ex:98 +#, elixir-autogen, elixir-format +msgid "Maintenance window created" +msgstr "" + +#: lib/towerops_web/live/maintenance_live/show.ex:25 +#, elixir-autogen, elixir-format +msgid "Maintenance window deleted" +msgstr "" + +#: lib/towerops_web/live/maintenance_live/form.ex:111 +#, elixir-autogen, elixir-format +msgid "Maintenance window updated" +msgstr "" + +#: lib/towerops_web/controllers/user_registration_html/new.html.heex:21 +#, elixir-autogen, elixir-format +msgid "Monitor up to 10 devices" +msgstr "" + +#: lib/towerops_web/controllers/user_session_html/new.html.heex:12 +#, elixir-autogen, elixir-format +msgid "Monitor your entire network from a single dashboard." +msgstr "" + +#: lib/towerops_web/components/layouts.ex:316 +#, elixir-autogen, elixir-format +msgid "More" +msgstr "" + +#: lib/towerops_web/components/layouts.ex:608 +#, elixir-autogen, elixir-format +msgid "My Settings" +msgstr "" + +#: lib/towerops_web/components/layouts.ex:550 +#, elixir-autogen, elixir-format +msgid "Navigation" +msgstr "" + +#: lib/towerops_web/live/dashboard_live.html.heex:706 +#, elixir-autogen, elixir-format +msgid "Network Pulse" +msgstr "" + +#: lib/towerops_web/live/maintenance_live/form.ex:30 +#, elixir-autogen, elixir-format +msgid "New Maintenance Window" +msgstr "" + +#: lib/towerops_web/live/maintenance_live/index.html.heex:13 +#, elixir-autogen, elixir-format +msgid "New Window" +msgstr "" + +#: lib/towerops_web/live/maintenance_live/show.html.heex:111 +#: lib/towerops_web/live/maintenance_live/show.html.heex:128 +#, elixir-autogen, elixir-format +msgid "No" +msgstr "" + +#: lib/towerops_web/controllers/user_registration_html/new.html.heex:33 +#, elixir-autogen, elixir-format +msgid "No credit card required" +msgstr "" + +#: lib/towerops_web/live/maintenance_live/index.html.heex:73 +#, elixir-autogen, elixir-format +msgid "No maintenance windows" +msgstr "" + +#: lib/towerops_web/live/maintenance_live/show.html.heex:109 +#, elixir-autogen, elixir-format +msgid "No rule specified" +msgstr "" + +#: lib/towerops_web/live/alert_live/index.html.heex:120 +#, elixir-autogen, elixir-format +msgid "Oldest" +msgstr "" + +#: lib/towerops_web/live/org/integrations_live.ex:269 +#, elixir-autogen, elixir-format +msgid "Only one %{category} integration can be active. Disable %{provider} first." +msgstr "" + +#: lib/towerops_web/live/org/integrations_live.ex:201 +#, elixir-autogen, elixir-format +msgid "Only one %{category} integration can be active. You already have %{provider} configured. Disable it first to switch." +msgstr "" + +#: lib/towerops_web/live/maintenance_live/form.html.heex:41 +#, elixir-autogen, elixir-format +msgid "Optional description of the maintenance work" +msgstr "" + +#: lib/towerops_web/live/onboarding_live.html.heex:197 +#, elixir-autogen, elixir-format +msgid "Optional. Sync subscriber data for outage impact analysis and inventory reconciliation." +msgstr "" + +#: lib/towerops_web/live/maintenance_live/form.html.heex:60 +#, elixir-autogen, elixir-format +msgid "Org-wide" +msgstr "" + +#: lib/towerops_web/components/layouts.ex:540 +#, elixir-autogen, elixir-format +msgid "Organization" +msgstr "" + +#: lib/towerops_web/live/maintenance_live/index.html.heex:61 +#, elixir-autogen, elixir-format +msgid "Past" +msgstr "" + +#: lib/towerops_web/controllers/user_registration_html/new.html.heex:29 +#, elixir-autogen, elixir-format +msgid "Performance charts & history" +msgstr "" + +#: lib/towerops_web/live/org/settings_live.ex:475 +#, elixir-autogen, elixir-format +msgid "Please enter your NetBox API token first" +msgstr "" + +#: lib/towerops_web/live/org/settings_live.ex:484 +#, elixir-autogen, elixir-format +msgid "Please enter your Sonar API token first" +msgstr "" + +#: lib/towerops_web/live/org/settings_live.ex:483 +#, elixir-autogen, elixir-format +msgid "Please enter your Sonar instance URL first" +msgstr "" + +#: lib/towerops_web/live/org/settings_live.ex:493 +#, elixir-autogen, elixir-format +msgid "Please enter your Splynx API key first" +msgstr "" + +#: lib/towerops_web/live/org/settings_live.ex:494 +#, elixir-autogen, elixir-format +msgid "Please enter your Splynx API secret first" +msgstr "" + +#: lib/towerops_web/live/org/settings_live.ex:492 +#, elixir-autogen, elixir-format +msgid "Please enter your Splynx instance URL first" +msgstr "" + +#: lib/towerops_web/live/org/integrations_live.ex:219 +#, elixir-autogen, elixir-format +msgid "Please fill in all required fields first" +msgstr "" + +#: lib/towerops_web/controllers/user_registration_html/new.html.heex:25 +#, elixir-autogen, elixir-format +msgid "Real-time alerts" +msgstr "" + +#: lib/towerops_web/live/maintenance_live/form.html.heex:144 +#, elixir-autogen, elixir-format +msgid "Recurrence Rule" +msgstr "" + +#: lib/towerops_web/live/maintenance_live/form.html.heex:136 +#: lib/towerops_web/live/maintenance_live/show.html.heex:105 +#, elixir-autogen, elixir-format +msgid "Recurring" +msgstr "" + +#: lib/towerops_web/live/alert_live/index.html.heex:148 +#, elixir-autogen, elixir-format +msgid "Resolve Selected" +msgstr "" + +#: lib/towerops_web/live/alert_live/index.html.heex:147 +#, elixir-autogen, elixir-format +msgid "Resolve selected alerts?" +msgstr "" + +#: lib/towerops_web/live/alert_live/index.html.heex:84 +#: lib/towerops_web/live/alert_live/index.html.heex:361 +#: lib/towerops_web/live/alert_live/index.html.heex:438 +#, elixir-autogen, elixir-format +msgid "Resolved" +msgstr "" + +#: lib/towerops_web/live/device_live/show.html.heex:381 +#, elixir-autogen, elixir-format +msgid "Resolved IP" +msgstr "" + +#: lib/towerops_web/live/onboarding_live.ex:67 +#, elixir-autogen, elixir-format +msgid "SNMP configuration saved" +msgstr "" + +#: lib/towerops_web/live/onboarding_live.html.heex:130 +#: lib/towerops_web/live/onboarding_live.html.heex:287 +#, elixir-autogen, elixir-format +msgid "Save & Continue" +msgstr "" + +#: lib/towerops_web/live/onboarding_live.html.heex:321 +#, elixir-autogen, elixir-format +msgid "Save this token — it won't be shown again." +msgstr "" + +#: lib/towerops_web/live/user_settings_live.html.heex:1616 +#, elixir-autogen, elixir-format +msgid "Scan the QR code below with your authenticator app" +msgstr "" + +#: lib/towerops_web/live/maintenance_live/index.html.heex:76 +#, elixir-autogen, elixir-format +msgid "Schedule maintenance to suppress alerts during planned work." +msgstr "" + +#: lib/towerops_web/live/maintenance_live/form.html.heex:47 +#: lib/towerops_web/live/maintenance_live/index.html.heex:89 +#: lib/towerops_web/live/maintenance_live/show.html.heex:84 +#, elixir-autogen, elixir-format +msgid "Scope" +msgstr "" + +#: lib/towerops_web/components/layouts.ex:398 +#, elixir-autogen, elixir-format +msgid "Search" +msgstr "" + +#: lib/towerops_web/live/maintenance_live/form.html.heex:101 +#, elixir-autogen, elixir-format +msgid "Select a device..." +msgstr "" + +#: lib/towerops_web/live/maintenance_live/form.html.heex:92 +#, elixir-autogen, elixir-format +msgid "Select a site..." +msgstr "" + +#: lib/towerops_web/live/alert_live/index.html.heex:198 +#, elixir-autogen, elixir-format +msgid "Select all" +msgstr "" + +#: lib/towerops_web/live/onboarding_live.html.heex:65 +#, elixir-autogen, elixir-format +msgid "Set organization-wide SNMP defaults. Can be overridden per-site or per-device." +msgstr "" + +#: lib/towerops_web/live/onboarding_live.ex:30 +#, elixir-autogen, elixir-format +msgid "Setup" +msgstr "" + +#: lib/towerops_web/live/onboarding_live.ex:211 +#, elixir-autogen, elixir-format +msgid "Setup complete" +msgstr "" + +#: lib/towerops_web/live/site_live/show.html.heex:484 +#, elixir-autogen, elixir-format +msgid "Site Latency — Last 24 Hours" +msgstr "" + +#: lib/towerops_web/live/onboarding_live.ex:101 +#, elixir-autogen, elixir-format +msgid "Site created" +msgstr "" + +#: lib/towerops_web/live/onboarding_live.html.heex:140 +#, elixir-autogen, elixir-format +msgid "Sites represent physical locations — tower sites, POPs, data centers, etc." +msgstr "" + +#: lib/towerops_web/live/onboarding_live.html.heex:124 +#: lib/towerops_web/live/onboarding_live.html.heex:181 +#: lib/towerops_web/live/onboarding_live.html.heex:281 +#, elixir-autogen, elixir-format +msgid "Skip" +msgstr "" + +#: lib/towerops_web/live/onboarding_live.html.heex:301 +#, elixir-autogen, elixir-format +msgid "Skip — I'll set this up later" +msgstr "" + +#: lib/towerops_web/live/alert_live/index.html.heex:97 +#, elixir-autogen, elixir-format +msgid "Sort" +msgstr "" + +#: lib/towerops_web/controllers/user_registration_html/new.html.heex:12 +#, elixir-autogen, elixir-format +msgid "Start monitoring your network in minutes." +msgstr "" + +#: lib/towerops_web/live/maintenance_live/form.html.heex:112 +#, elixir-autogen, elixir-format +msgid "Starts At" +msgstr "" + +#: lib/towerops_web/live/dashboard_live.html.heex:508 +#: lib/towerops_web/live/device_live/index.html.heex:302 +#: lib/towerops_web/live/site_live/show.html.heex:384 +#, elixir-autogen, elixir-format +msgid "Subs" +msgstr "" + +#: lib/towerops_web/live/maintenance_live/show.html.heex:119 +#, elixir-autogen, elixir-format +msgid "Suppress Alerts" +msgstr "" + +#: lib/towerops_web/live/maintenance_live/form.html.heex:129 +#, elixir-autogen, elixir-format +msgid "Suppress alerts during this window" +msgstr "" + +#: lib/towerops_web/components/layouts.ex:239 +#, elixir-autogen, elixir-format +msgid "Switch Organization" +msgstr "" + +#: lib/towerops_web/live/onboarding_live.html.heex:353 +#, elixir-autogen, elixir-format +msgid "Systemd" +msgstr "" + +#: lib/towerops_web/live/org/settings_live.html.heex:821 +#, elixir-autogen, elixir-format +msgid "Technician" +msgstr "" + +#: lib/towerops_web/live/onboarding_live.html.heex:310 +#, elixir-autogen, elixir-format +msgid "The TowerOps agent polls your network devices via SNMP. Deploy it on a host with network access to your infrastructure." +msgstr "" + +#: lib/towerops_web/live/maintenance_live/show.html.heex:28 +#, elixir-autogen, elixir-format +msgid "This maintenance window is currently in effect. Alerts are being suppressed." +msgstr "" + +#: lib/towerops_web/live/maintenance_live/index.html.heex:92 +#: lib/towerops_web/live/maintenance_live/show.html.heex:92 +#, elixir-autogen, elixir-format +msgid "Time Range" +msgstr "" + +#: lib/towerops_web/live/alert_live/index.html.heex:397 +#, elixir-autogen, elixir-format +msgid "Timeline" +msgstr "" + +#: lib/towerops_web/components/layouts.ex:576 +#, elixir-autogen, elixir-format +msgid "Tools" +msgstr "" + +#: lib/towerops_web/live/admin/dashboard_live.html.heex:68 +#, elixir-autogen, elixir-format +msgid "Tracked errors and exceptions" +msgstr "" + +#: lib/towerops_web/live/alert_live/index.html.heex:404 +#, elixir-autogen, elixir-format +msgid "Triggered" +msgstr "" + +#: lib/towerops_web/live/maintenance_live/show.ex:29 +#, elixir-autogen, elixir-format +msgid "Unable to delete maintenance window" +msgstr "" + +#: lib/towerops_web/live/alert_live/index.html.heex:30 +#, elixir-autogen, elixir-format +msgid "Unresolved" +msgstr "" + +#: lib/towerops_web/live/maintenance_live/index.html.heex:50 +#, elixir-autogen, elixir-format +msgid "Upcoming" +msgstr "" + +#: lib/towerops_web/components/layouts.ex:468 +#, elixir-autogen, elixir-format +msgid "User Settings" +msgstr "" + +#: lib/towerops_web/live/site_live/show.html.heex:63 +#, elixir-autogen, elixir-format +msgid "View on Map" +msgstr "" + +#: lib/towerops_web/components/layouts.ex:484 +#, elixir-autogen, elixir-format +msgid "What's New" +msgstr "" + +#: lib/towerops_web/live/org/integrations_live.html.heex:166 +#, elixir-autogen, elixir-format +msgid "Which billing platform does your organization use?" +msgstr "" + +#: lib/towerops_web/live/maintenance_live/show.html.heex:109 +#: lib/towerops_web/live/maintenance_live/show.html.heex:124 +#, elixir-autogen, elixir-format +msgid "Yes" +msgstr "" + +#: lib/towerops_web/controllers/user_session_controller.ex:129 +#, elixir-autogen, elixir-format +msgid "You don't have access to this organization." +msgstr "" + +#: lib/towerops_web/live/org/settings_live.html.heex:1565 +#, elixir-autogen, elixir-format +msgid "Your Sonar instance URL and API token from the Sonar admin panel." +msgstr "" + +#: lib/towerops_web/live/org/settings_live.html.heex:1670 +#, elixir-autogen, elixir-format +msgid "Your Splynx instance URL, API key, and API secret. Find these in Splynx under Administration → API Keys." +msgstr "" + +#: lib/towerops_web/live/site_live/show.html.heex:103 +#, elixir-autogen, elixir-format +msgid "down" +msgstr "" + +#: lib/towerops_web/live/maintenance_live/form.html.heex:145 +#, elixir-autogen, elixir-format +msgid "e.g., FREQ=WEEKLY;BYDAY=SU" +msgstr "" + +#: lib/towerops_web/live/maintenance_live/form.html.heex:32 +#, elixir-autogen, elixir-format +msgid "e.g., Tower firmware upgrade" +msgstr "" + +#: lib/towerops_web/live/alert_live/index.html.heex:142 +#, elixir-autogen, elixir-format +msgid "selected" +msgstr "" + +#: lib/towerops_web/controllers/user_session_html/new.html.heex:22 +#, elixir-autogen, elixir-format +msgid "— WISP Network Operator" +msgstr "" diff --git a/priv/gettext/en/LC_MESSAGES/admin.po b/priv/gettext/en/LC_MESSAGES/admin.po index e01069bf..d6aaa2e8 100644 --- a/priv/gettext/en/LC_MESSAGES/admin.po +++ b/priv/gettext/en/LC_MESSAGES/admin.po @@ -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." diff --git a/priv/gettext/en/LC_MESSAGES/auth.po b/priv/gettext/en/LC_MESSAGES/auth.po index 987329bb..fed86f82 100644 --- a/priv/gettext/en/LC_MESSAGES/auth.po +++ b/priv/gettext/en/LC_MESSAGES/auth.po @@ -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 "" diff --git a/priv/gettext/en/LC_MESSAGES/default.po b/priv/gettext/en/LC_MESSAGES/default.po index cd41a0a4..441c3cdf 100644 --- a/priv/gettext/en/LC_MESSAGES/default.po +++ b/priv/gettext/en/LC_MESSAGES/default.po @@ -53,18 +53,19 @@ msgid_plural "%{count}y ago" msgstr[0] "" msgstr[1] "" -#: lib/towerops_web/components/core_components.ex:491 -#: lib/towerops_web/live/device_live/index.html.heex:606 -#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:162 -#: lib/towerops_web/live/org/preseem_devices_live.html.heex:153 -#: lib/towerops_web/live/org/settings_live.html.heex:640 -#: lib/towerops_web/live/org/settings_live.html.heex:717 +#: lib/towerops_web/components/core_components.ex:540 +#: lib/towerops_web/live/alert_live/index.html.heex:238 +#: lib/towerops_web/live/device_live/index.html.heex:653 +#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:166 +#: lib/towerops_web/live/org/preseem_devices_live.html.heex:155 +#: lib/towerops_web/live/org/settings_live.html.heex:681 +#: lib/towerops_web/live/org/settings_live.html.heex:758 #, elixir-autogen, elixir-format msgid "Actions" msgstr "Actions" -#: lib/towerops_web/components/layouts.ex:603 -#: lib/towerops_web/components/layouts.ex:615 +#: lib/towerops_web/components/layouts.ex:773 +#: lib/towerops_web/components/layouts.ex:785 #, elixir-autogen, elixir-format msgid "Attempting to reconnect" msgstr "Attempting to reconnect" @@ -77,12 +78,12 @@ msgstr "Attempting to reconnect" msgid "Never" msgstr "Never" -#: lib/towerops_web/components/layouts.ex:610 +#: lib/towerops_web/components/layouts.ex:780 #, elixir-autogen, elixir-format msgid "Something went wrong!" msgstr "Something went wrong!" -#: lib/towerops_web/components/layouts.ex:598 +#: lib/towerops_web/components/layouts.ex:768 #, elixir-autogen, elixir-format msgid "We can't find the internet" msgstr "We can't find the internet" @@ -92,47 +93,47 @@ msgstr "We can't find the internet" msgid "close" msgstr "close" -#: lib/towerops_web/controllers/user_session_html/new.html.heex:88 +#: lib/towerops_web/controllers/user_session_html/new.html.heex:131 #, elixir-autogen, elixir-format msgid "or" msgstr "or" -#: lib/towerops_web/components/consent_prompt.ex:105 +#: lib/towerops_web/components/consent_prompt.ex:106 #, elixir-autogen, elixir-format msgid "Accept and Continue" msgstr "Accept and Continue" -#: lib/towerops_web/components/consent_prompt.ex:89 +#: lib/towerops_web/components/consent_prompt.ex:90 #, elixir-autogen, elixir-format msgid "By accepting, you acknowledge that you have read and agree to the updated policies. You can review your consent history at any time from your account settings." msgstr "By accepting, you acknowledge that you have read and agree to the updated policies. You can review your consent history at any time from your account settings." -#: lib/towerops_web/components/consent_prompt.ex:72 +#: lib/towerops_web/components/consent_prompt.ex:73 #, elixir-autogen, elixir-format msgid "I agree to the updated" msgstr "I agree to the updated" -#: lib/towerops_web/components/consent_prompt.ex:117 +#: lib/towerops_web/components/consent_prompt.ex:118 #, elixir-autogen, elixir-format msgid "Policy" msgstr "Policy" -#: lib/towerops_web/components/consent_prompt.ex:115 +#: lib/towerops_web/components/consent_prompt.ex:116 #, elixir-autogen, elixir-format msgid "Privacy Policy" msgstr "Privacy Policy" -#: lib/towerops_web/components/consent_prompt.ex:116 +#: lib/towerops_web/components/consent_prompt.ex:117 #, elixir-autogen, elixir-format msgid "Terms of Service" msgstr "Terms of Service" -#: lib/towerops_web/components/consent_prompt.ex:44 +#: lib/towerops_web/components/consent_prompt.ex:45 #, elixir-autogen, elixir-format msgid "Updated Policies - Action Required" msgstr "Updated Policies - Action Required" -#: lib/towerops_web/components/consent_prompt.ex:48 +#: lib/towerops_web/components/consent_prompt.ex:49 #, elixir-autogen, elixir-format msgid "We've updated our policies. Please review and accept the changes to continue using Towerops." msgstr "We've updated our policies. Please review and accept the changes to continue using Towerops." @@ -162,60 +163,68 @@ msgstr "A device with this IP address already exists:" msgid "A link to confirm your email change has been sent to the new address." msgstr "A link to confirm your email change has been sent to the new address." -#: lib/towerops_web/live/user_settings_live.html.heex:65 +#: lib/towerops_web/live/user_settings_live.html.heex:73 #, elixir-autogen, elixir-format msgid "API" msgstr "API" -#: lib/towerops_web/live/org/integrations_live.html.heex:192 +#: lib/towerops_web/live/onboarding_live.html.heex:259 +#: lib/towerops_web/live/onboarding_live.html.heex:270 +#: lib/towerops_web/live/org/integrations_live.html.heex:239 +#: lib/towerops_web/live/org/integrations_live.html.heex:571 +#: lib/towerops_web/live/org/settings_live.html.heex:1691 #, elixir-autogen, elixir-format msgid "API Key" msgstr "API Key" -#: lib/towerops_web/live/device_live/form.html.heex:679 -#: lib/towerops_web/live/org/settings_live.html.heex:404 -#: lib/towerops_web/live/site_live/form.html.heex:412 +#: lib/towerops_web/live/device_live/form.html.heex:694 +#: lib/towerops_web/live/org/settings_live.html.heex:428 +#: lib/towerops_web/live/site_live/form.html.heex:428 #, elixir-autogen, elixir-format msgid "API Port" msgstr "API Port" -#: lib/towerops_web/live/org/settings_live.html.heex:1119 +#: lib/towerops_web/live/onboarding_live.html.heex:248 +#: lib/towerops_web/live/org/integrations_live.html.heex:230 +#: lib/towerops_web/live/org/settings_live.html.heex:1199 +#: lib/towerops_web/live/org/settings_live.html.heex:1583 #, elixir-autogen, elixir-format msgid "API Token" msgstr "API Token" -#: lib/towerops_web/live/user_settings_live.html.heex:1388 +#: lib/towerops_web/live/user_settings_live.html.heex:1441 #, elixir-autogen, elixir-format msgid "API Token Created" msgstr "API Token Created" -#: lib/towerops_web/live/user_settings_live.html.heex:526 +#: lib/towerops_web/live/user_settings_live.html.heex:551 #, elixir-autogen, elixir-format msgid "API Tokens" msgstr "API Tokens" -#: lib/towerops_web/live/device_live/show.html.heex:152 -#: lib/towerops_web/live/device_live/show.html.heex:1419 +#: lib/towerops_web/live/device_live/show.html.heex:187 +#: lib/towerops_web/live/device_live/show.html.heex:1534 #, elixir-autogen, elixir-format msgid "ARP Table" msgstr "ARP Table" -#: lib/towerops_web/live/device_live/show.html.heex:2759 +#: lib/towerops_web/live/device_live/show.html.heex:2896 #, elixir-autogen, elixir-format msgid "Access Point Details" msgstr "Access Point Details" -#: lib/towerops_web/live/graph_live/show.ex:811 +#: lib/towerops_web/live/graph_live/show.ex:815 #, elixir-autogen, elixir-format msgid "Access to device revoked" msgstr "Access to device revoked" -#: lib/towerops_web/live/user_settings_live.html.heex:41 +#: lib/towerops_web/components/layouts.ex:595 +#: lib/towerops_web/live/user_settings_live.html.heex:43 #, elixir-autogen, elixir-format msgid "Account" msgstr "Account" -#: lib/towerops_web/live/device_live/show.html.heex:2545 +#: lib/towerops_web/live/device_live/show.html.heex:2682 #, elixir-autogen, elixir-format msgid "Account ID" msgstr "Account ID" @@ -242,48 +251,39 @@ msgstr "Account created successfully. Welcome to %{org}!" msgid "Account created! Please check your email to verify your account." msgstr "Account created! Please check your email to verify your account." -#: lib/towerops_web/live/dashboard_live.html.heex:432 -#, elixir-autogen, elixir-format -msgid "Ack" -msgstr "Ack" - -#: lib/towerops_web/live/admin/dashboard_live.html.heex:103 +#: lib/towerops_web/live/admin/dashboard_live.html.heex:122 #, elixir-autogen, elixir-format, fuzzy msgid "Action" msgstr "Actions" #: lib/towerops_web/live/insights_live/index.html.heex:33 +#: lib/towerops_web/live/maintenance_live/index.html.heex:39 #: lib/towerops_web/live/org/preseem_insights_live.html.heex:44 #, elixir-autogen, elixir-format msgid "Active" msgstr "Active" -#: lib/towerops_web/live/dashboard_live.html.heex:366 +#: lib/towerops_web/live/site_live/show.html.heex:117 #, elixir-autogen, elixir-format msgid "Active Alerts" msgstr "Active Alerts" -#: lib/towerops_web/live/dashboard_live.html.heex:310 -#, elixir-autogen, elixir-format -msgid "Active Incidents" -msgstr "Active Incidents" - #: lib/towerops_web/live/admin/monitoring_live.html.heex:43 #, elixir-autogen, elixir-format, fuzzy msgid "Active Jobs" msgstr "Actions" -#: lib/towerops_web/live/user_settings_live.html.heex:737 +#: lib/towerops_web/live/user_settings_live.html.heex:770 #, elixir-autogen, elixir-format msgid "Active Sessions" msgstr "Active Sessions" -#: lib/towerops_web/live/trace_live/index.html.heex:329 +#: lib/towerops_web/live/trace_live/index.html.heex:342 #, elixir-autogen, elixir-format msgid "Active alerts on device" msgstr "Active alerts on device" -#: lib/towerops_web/live/activity_feed_live.ex:33 +#: lib/towerops_web/live/activity_feed_live.ex:35 #: lib/towerops_web/live/activity_feed_live.html.heex:13 #, elixir-autogen, elixir-format msgid "Activity Feed" @@ -294,28 +294,28 @@ msgstr "Activity Feed" msgid "Activity Log" msgstr "Activity Log" -#: lib/towerops_web/live/user_settings_live.html.heex:1472 +#: lib/towerops_web/live/user_settings_live.html.heex:1525 #, elixir-autogen, elixir-format msgid "Add Authenticator Device" msgstr "Add Authenticator Device" -#: lib/towerops_web/live/dashboard_live.html.heex:66 -#: lib/towerops_web/live/dashboard_live.html.heex:78 +#: lib/towerops_web/live/dashboard_live.html.heex:69 +#: lib/towerops_web/live/dashboard_live.html.heex:81 #, elixir-autogen, elixir-format msgid "Add Devices" msgstr "Add Devices" -#: lib/towerops_web/live/org/settings_live.html.heex:1503 +#: lib/towerops_web/live/org/settings_live.html.heex:1827 #, elixir-autogen, elixir-format msgid "Add Integration" msgstr "Add Integration" -#: lib/towerops_web/live/user_settings_live.html.heex:627 +#: lib/towerops_web/live/user_settings_live.html.heex:659 #, 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/live/org/settings_live.html.heex:1555 +#: lib/towerops_web/live/org/settings_live.html.heex:1888 #, elixir-autogen, elixir-format msgid "Add a subscription with the Webhook URL above" msgstr "Add a subscription with the Webhook URL above" @@ -335,12 +335,12 @@ msgstr "Add devices with SNMP enabled to start building your network map." msgid "Add geographic coordinates to enable network mapping and spatial analysis." msgstr "Add geographic coordinates to enable network mapping and spatial analysis." -#: lib/towerops_web/live/dashboard_live.html.heex:80 +#: lib/towerops_web/live/dashboard_live.html.heex:83 #, elixir-autogen, elixir-format msgid "Add network devices to monitor" msgstr "Add network devices to monitor" -#: lib/towerops_web/live/dashboard_live.html.heex:68 +#: lib/towerops_web/live/dashboard_live.html.heex:71 #, elixir-autogen, elixir-format msgid "Add routers, switches, and servers to your sites" msgstr "Add routers, switches, and servers to your sites" @@ -350,12 +350,12 @@ msgstr "Add routers, switches, and servers to your sites" msgid "Add to Allowlist" msgstr "Add to Allowlist" -#: lib/towerops_web/live/user_settings_live.html.heex:1047 +#: lib/towerops_web/live/user_settings_live.html.heex:1093 #, elixir-autogen, elixir-format msgid "Add your first authenticator app to enable two-factor authentication." msgstr "Add your first authenticator app to enable two-factor authentication." -#: lib/towerops_web/live/site_live/show.html.heex:261 +#: lib/towerops_web/live/site_live/show.html.heex:366 #, elixir-autogen, elixir-format msgid "Add your first device" msgstr "Add your first device" @@ -376,6 +376,7 @@ msgstr "Added By" msgid "Added Devices" msgstr "Added Devices" +#: lib/towerops_web/live/onboarding_live.html.heex:155 #: lib/towerops_web/live/site_live/form.html.heex:81 #, elixir-autogen, elixir-format msgid "Address" @@ -386,13 +387,13 @@ msgstr "Address" msgid "Address geocoded successfully!" msgstr "Address geocoded successfully!" -#: lib/towerops_web/live/device_live/show.html.heex:1659 -#: lib/towerops_web/live/device_live/show.html.heex:1716 +#: lib/towerops_web/live/device_live/show.html.heex:1778 +#: lib/towerops_web/live/device_live/show.html.heex:1837 #, elixir-autogen, elixir-format msgid "Addresses" msgstr "Addresses" -#: lib/towerops_web/live/org/settings_live.html.heex:768 +#: lib/towerops_web/live/org/settings_live.html.heex:812 #, elixir-autogen, elixir-format msgid "Admin" msgstr "Admin" @@ -408,12 +409,12 @@ msgstr "Admin Dashboard" msgid "Affected devices:" msgstr "Affected devices:" -#: lib/towerops_web/live/site_live/form.html.heex:191 +#: lib/towerops_web/live/site_live/form.html.heex:193 #, elixir-autogen, elixir-format msgid "Agent Configuration" msgstr "Agent Configuration" -#: lib/towerops_web/live/agent_live/show.html.heex:231 +#: lib/towerops_web/live/agent_live/show.html.heex:241 #, elixir-autogen, elixir-format msgid "Agent Details" msgstr "Agent Details" @@ -425,33 +426,33 @@ msgstr "Agent Details and Health" #: lib/towerops_web/live/agent_live/edit.html.heex:34 #: lib/towerops_web/live/agent_live/index.html.heex:27 -#: lib/towerops_web/live/agent_live/index.html.heex:402 +#: lib/towerops_web/live/agent_live/index.html.heex:416 #, elixir-autogen, elixir-format msgid "Agent Name" msgstr "Agent Name" -#: lib/towerops_web/live/agent_live/index.html.heex:384 +#: lib/towerops_web/live/agent_live/index.html.heex:398 #, elixir-autogen, elixir-format msgid "Agent Setup Instructions" msgstr "Agent Setup Instructions" -#: lib/towerops_web/live/org/settings_live.html.heex:65 +#: lib/towerops_web/live/org/settings_live.html.heex:69 #, elixir-autogen, elixir-format msgid "Agents" msgstr "Agents" #: lib/towerops_web/live/admin/agent_live/index.html.heex:6 -#: lib/towerops_web/live/admin/dashboard_live.html.heex:81 +#: lib/towerops_web/live/admin/dashboard_live.html.heex:98 #, elixir-autogen, elixir-format msgid "Agents across all organizations and cloud pollers" msgstr "Agents across all organizations and cloud pollers" -#: lib/towerops_web/live/trace_live/index.html.heex:248 +#: lib/towerops_web/live/trace_live/index.html.heex:261 #, elixir-autogen, elixir-format msgid "Airtime" msgstr "Airtime" -#: lib/towerops_web/live/device_live/show.html.heex:2800 +#: lib/towerops_web/live/device_live/show.html.heex:2937 #, elixir-autogen, elixir-format msgid "Airtime Utilization" msgstr "Airtime Utilization" @@ -466,28 +467,32 @@ msgstr "Alert acknowledged" msgid "Alert not found" msgstr "Alert not found" +#: lib/towerops_web/components/layouts.ex:281 +#: lib/towerops_web/components/layouts.ex:409 +#: lib/towerops_web/components/layouts.ex:566 #: lib/towerops_web/live/alert_live/index.ex:26 -#: lib/towerops_web/live/dashboard_live.html.heex:200 +#: lib/towerops_web/live/alert_live/index.html.heex:9 #, elixir-autogen, elixir-format msgid "Alerts" msgstr "Alerts" -#: lib/towerops_web/live/dashboard_live.html.heex:465 +#: lib/towerops_web/live/alert_live/index.html.heex:66 #: lib/towerops_web/live/insights_live/index.html.heex:69 #: lib/towerops_web/live/insights_live/index.html.heex:105 +#: lib/towerops_web/live/maintenance_live/index.html.heex:28 #: lib/towerops_web/live/org/preseem_devices_live.html.heex:55 #: lib/towerops_web/live/org/preseem_insights_live.html.heex:80 #, elixir-autogen, elixir-format msgid "All" msgstr "All" -#: lib/towerops_web/live/admin/agent_live/index.ex:23 +#: lib/towerops_web/live/admin/agent_live/index.ex:25 #: lib/towerops_web/live/admin/agent_live/index.html.heex:4 #, elixir-autogen, elixir-format msgid "All Agents" msgstr "All Agents" -#: lib/towerops_web/live/alert_live/index.html.heex:74 +#: lib/towerops_web/live/alert_live/index.html.heex:169 #, elixir-autogen, elixir-format msgid "All Clear!" msgstr "All Clear!" @@ -497,7 +502,7 @@ msgstr "All Clear!" msgid "All Devices" msgstr "All Devices" -#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:224 +#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:226 #, elixir-autogen, elixir-format msgid "All Gaiia inventory items are mapped to Towerops devices." msgstr "All Gaiia inventory items are mapped to Towerops devices." @@ -508,7 +513,7 @@ msgstr "All Gaiia inventory items are mapped to Towerops devices." msgid "All Organizations" msgstr "All Organizations" -#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:124 +#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:126 #, elixir-autogen, elixir-format msgid "All Towerops devices have matching Gaiia inventory items." msgstr "All Towerops devices have matching Gaiia inventory items." @@ -524,12 +529,12 @@ msgstr "All Users" msgid "All access points are matched. Nice!" msgstr "All access points are matched. Nice!" -#: lib/towerops_web/live/org/settings_live.html.heex:200 +#: lib/towerops_web/live/org/settings_live.html.heex:210 #, elixir-autogen, elixir-format msgid "All devices will be removed from their current sites and assigned directly to the organization." msgstr "All devices will be removed from their current sites and assigned directly to the organization." -#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:121 +#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:123 #, elixir-autogen, elixir-format msgid "All entities are mapped." msgstr "All entities are mapped." @@ -549,27 +554,27 @@ msgstr "Allowed IPs and CIDR Ranges" msgid "Allowlist" msgstr "Allowlist" -#: lib/towerops_web/live/agent_live/index.html.heex:178 +#: lib/towerops_web/live/agent_live/index.html.heex:182 #, elixir-autogen, elixir-format msgid "Application-wide agents that can poll devices for any organization. Only visible and manageable by superadmins." msgstr "Application-wide agents that can poll devices for any organization. Only visible and manageable by superadmins." -#: lib/towerops_web/live/org/settings_live.ex:142 +#: lib/towerops_web/live/org/settings_live.ex:176 #, elixir-autogen, elixir-format msgid "Applied SNMP configuration to %{count} device records across all sites" msgstr "Applied SNMP configuration to %{count} device records across all sites" -#: lib/towerops_web/live/org/settings_live.ex:149 +#: lib/towerops_web/live/org/settings_live.ex:184 #, elixir-autogen, elixir-format msgid "Applied default agent to %{count} device records across all sites" msgstr "Applied default agent to %{count} device records across all sites" -#: lib/towerops_web/live/org/settings_live.html.heex:515 +#: lib/towerops_web/live/org/settings_live.html.heex:551 #, elixir-autogen, elixir-format msgid "Apply Default Agent to All Devices" msgstr "Apply Default Agent to All Devices" -#: lib/towerops_web/live/org/settings_live.html.heex:342 +#: lib/towerops_web/live/org/settings_live.html.heex:364 #, elixir-autogen, elixir-format msgid "Apply SNMP Config to All Devices" msgstr "Apply SNMP Config to All Devices" @@ -579,77 +584,77 @@ msgstr "Apply SNMP Config to All Devices" msgid "Approaching device limit" msgstr "Approaching device limit" -#: lib/towerops_web/live/user_settings_live.html.heex:583 +#: lib/towerops_web/live/user_settings_live.html.heex:612 #, elixir-autogen, elixir-format msgid "Are you sure you want to delete this API token? This action cannot be undone." msgstr "Are you sure you want to delete this API token? This action cannot be undone." -#: lib/towerops_web/live/agent_live/index.html.heex:157 +#: lib/towerops_web/live/agent_live/index.html.heex:158 #, elixir-autogen, elixir-format msgid "Are you sure you want to delete this agent? All device assignments will be removed, and devices will fall back to site/organization defaults or cloud polling." msgstr "Are you sure you want to delete this agent? All device assignments will be removed, and devices will fall back to site/organization defaults or cloud polling." -#: lib/towerops_web/live/device_live/show.html.heex:1906 +#: lib/towerops_web/live/device_live/show.html.heex:2030 #, elixir-autogen, elixir-format msgid "Are you sure you want to delete this backup? This action cannot be undone." msgstr "Are you sure you want to delete this backup? This action cannot be undone." -#: lib/towerops_web/live/agent_live/index.html.heex:267 +#: lib/towerops_web/live/agent_live/index.html.heex:274 #, elixir-autogen, elixir-format msgid "Are you sure you want to delete this cloud poller? This will affect all organizations using it." msgstr "Are you sure you want to delete this cloud poller? This will affect all organizations using it." -#: lib/towerops_web/live/device_live/form.html.heex:742 +#: lib/towerops_web/live/device_live/form.html.heex:766 #, elixir-autogen, elixir-format msgid "Are you sure you want to delete this device? All monitoring history and alerts will be permanently deleted." msgstr "Are you sure you want to delete this device? All monitoring history and alerts will be permanently deleted." -#: lib/towerops_web/live/site_live/form.html.heex:457 +#: lib/towerops_web/live/site_live/form.html.heex:482 #, elixir-autogen, elixir-format msgid "Are you sure you want to delete this site? This will also delete all devices at this site." msgstr "Are you sure you want to delete this site? This will also delete all devices at this site." -#: lib/towerops_web/live/admin/user_live/index.html.heex:32 +#: lib/towerops_web/live/admin/user_live/index.html.heex:34 #, elixir-autogen, elixir-format msgid "Are you sure you want to delete this user?" msgstr "Are you sure you want to delete this user?" -#: lib/towerops_web/live/user_settings_live.html.heex:684 +#: lib/towerops_web/live/user_settings_live.html.heex:716 #, elixir-autogen, elixir-format msgid "Are you sure you want to remove this device?" msgstr "Are you sure you want to remove this device?" -#: lib/towerops_web/live/agent_live/show.html.heex:21 +#: lib/towerops_web/live/agent_live/show.html.heex:26 #, elixir-autogen, elixir-format msgid "Are you sure you want to restart this agent? It will disconnect and restart its container." msgstr "Are you sure you want to restart this agent? It will disconnect and restart its container." -#: lib/towerops_web/live/agent_live/show.html.heex:13 +#: lib/towerops_web/live/agent_live/show.html.heex:14 #, elixir-autogen, elixir-format msgid "Are you sure you want to update this agent? It will download and replace the binary." msgstr "Are you sure you want to update this agent? It will download and replace the binary." -#: lib/towerops_web/live/org/integrations_live.html.heex:324 +#: lib/towerops_web/live/org/integrations_live.html.heex:385 #, elixir-autogen, elixir-format msgid "Are you sure? Any existing Gaiia webhook using the current secret will stop working." msgstr "Are you sure? Any existing Gaiia webhook using the current secret will stop working." -#: lib/towerops_web/live/admin/org_live/index.html.heex:20 +#: lib/towerops_web/live/admin/org_live/index.html.heex:21 #, elixir-autogen, elixir-format msgid "Are you sure? This will delete all sites, device, and data for this organization." msgstr "Are you sure? This will delete all sites, device, and data for this organization." -#: lib/towerops_web/live/device_live/show.html.heex:1989 +#: lib/towerops_web/live/device_live/show.html.heex:2116 #, elixir-autogen, elixir-format msgid "Assign an agent to enable automatic backups." msgstr "Assign an agent to enable automatic backups." -#: lib/towerops_web/live/device_live/show.html.heex:1794 +#: lib/towerops_web/live/device_live/show.html.heex:1917 #, elixir-autogen, elixir-format msgid "Assign an agent to enable backups" msgstr "Assign an agent to enable backups" -#: lib/towerops_web/live/device_live/form.html.heex:293 +#: lib/towerops_web/live/device_live/form.html.heex:295 #, elixir-autogen, elixir-format msgid "Assign this device to a remote agent for local SNMP polling. Leave empty to inherit from site or organization defaults." msgstr "Assign this device to a remote agent for local SNMP polling. Leave empty to inherit from site or organization defaults." @@ -659,41 +664,43 @@ msgstr "Assign this device to a remote agent for local SNMP polling. Leave empty msgid "Audit Logs" msgstr "Audit Logs" -#: lib/towerops_web/live/device_live/form.html.heex:461 +#: lib/towerops_web/live/device_live/form.html.heex:470 #, elixir-autogen, elixir-format msgid "Auth Level" msgstr "Auth Level" -#: lib/towerops_web/live/device_live/form.html.heex:492 -#: lib/towerops_web/live/org/settings_live.html.heex:288 -#: lib/towerops_web/live/site_live/form.html.heex:312 +#: lib/towerops_web/live/device_live/form.html.heex:501 +#: lib/towerops_web/live/onboarding_live.html.heex:102 +#: lib/towerops_web/live/org/settings_live.html.heex:304 +#: lib/towerops_web/live/site_live/form.html.heex:324 #, elixir-autogen, elixir-format msgid "Auth Password" msgstr "Auth Password" -#: lib/towerops_web/live/device_live/form.html.heex:476 -#: lib/towerops_web/live/org/settings_live.html.heex:273 -#: lib/towerops_web/live/site_live/form.html.heex:297 +#: lib/towerops_web/live/device_live/form.html.heex:485 +#: lib/towerops_web/live/onboarding_live.html.heex:95 +#: lib/towerops_web/live/org/settings_live.html.heex:289 +#: lib/towerops_web/live/site_live/form.html.heex:309 #, elixir-autogen, elixir-format msgid "Auth Protocol" msgstr "Auth Protocol" -#: lib/towerops_web/live/agent_live/index.html.heex:411 +#: lib/towerops_web/live/agent_live/index.html.heex:425 #, elixir-autogen, elixir-format msgid "Authentication Token" msgstr "Authentication Token" -#: lib/towerops_web/live/user_settings_live.html.heex:1032 +#: lib/towerops_web/live/user_settings_live.html.heex:1076 #, elixir-autogen, elixir-format msgid "Authenticator Apps" msgstr "Authenticator Apps" -#: lib/towerops_web/live/user_settings_live.html.heex:1139 +#: lib/towerops_web/live/user_settings_live.html.heex:1185 #, elixir-autogen, elixir-format msgid "Available Recovery Codes" msgstr "Available Recovery Codes" -#: lib/towerops_web/live/device_live/show.html.heex:684 +#: lib/towerops_web/live/device_live/show.html.heex:745 #, elixir-autogen, elixir-format msgid "Average Load" msgstr "Average Load" @@ -703,7 +710,7 @@ msgstr "Average Load" msgid "Avg Duration" msgstr "Avg Duration" -#: lib/towerops_web/live/device_live/show.html.heex:218 +#: lib/towerops_web/live/device_live/show.html.heex:253 #: lib/towerops_web/live/mikrotik_backup_live/compare.html.heex:21 #, elixir-autogen, elixir-format msgid "Backups" @@ -719,95 +726,97 @@ msgstr "Backups do not belong to this device" msgid "Basic Information" msgstr "Basic Information" -#: lib/towerops_web/live/user_settings_live.html.heex:218 +#: lib/towerops_web/live/user_settings_live.html.heex:231 #, elixir-autogen, elixir-format msgid "Berlin" msgstr "Berlin" -#: lib/towerops_web/live/device_live/show.html.heex:2590 +#: lib/towerops_web/live/device_live/show.html.heex:2727 #, elixir-autogen, elixir-format msgid "Billing Subscriptions" msgstr "Billing Subscriptions" -#: lib/towerops_web/live/device_live/show.html.heex:2788 +#: lib/towerops_web/live/device_live/show.html.heex:2925 #, elixir-autogen, elixir-format msgid "Busy Hours" msgstr "Busy Hours" #: lib/towerops_web/live/admin/security_live/index.html.heex:84 -#: lib/towerops_web/live/agent_live/edit.html.heex:79 +#: lib/towerops_web/live/agent_live/edit.html.heex:80 #: lib/towerops_web/live/agent_live/index.html.heex:47 -#: lib/towerops_web/live/agent_live/index.html.heex:355 -#: lib/towerops_web/live/device_live/form.html.heex:714 -#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:363 -#: lib/towerops_web/live/org/integrations_live.html.heex:247 -#: lib/towerops_web/live/org/preseem_devices_live.html.heex:280 -#: lib/towerops_web/live/org/settings_live.html.heex:553 -#: lib/towerops_web/live/org/settings_live.html.heex:678 -#: lib/towerops_web/live/org/settings_live.html.heex:1630 -#: lib/towerops_web/live/org_live/new.html.heex:35 -#: lib/towerops_web/live/site_live/form.html.heex:445 -#: lib/towerops_web/live/user_settings_live.html.heex:1251 -#: lib/towerops_web/live/user_settings_live.html.heex:1346 -#: lib/towerops_web/live/user_settings_live.html.heex:1503 -#: lib/towerops_web/live/user_settings_live.html.heex:1595 +#: lib/towerops_web/live/agent_live/index.html.heex:369 +#: lib/towerops_web/live/device_live/form.html.heex:733 +#: lib/towerops_web/live/maintenance_live/form.html.heex:155 +#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:394 +#: lib/towerops_web/live/org/integrations_live.html.heex:305 +#: lib/towerops_web/live/org/integrations_live.html.heex:625 +#: lib/towerops_web/live/org/preseem_devices_live.html.heex:291 +#: lib/towerops_web/live/org/settings_live.html.heex:589 +#: lib/towerops_web/live/org/settings_live.html.heex:719 +#: lib/towerops_web/live/org/settings_live.html.heex:1965 +#: lib/towerops_web/live/org_live/new.html.heex:38 +#: lib/towerops_web/live/site_live/form.html.heex:465 +#: lib/towerops_web/live/user_settings_live.html.heex:1302 +#: lib/towerops_web/live/user_settings_live.html.heex:1399 +#: lib/towerops_web/live/user_settings_live.html.heex:1556 +#: lib/towerops_web/live/user_settings_live.html.heex:1673 #, elixir-autogen, elixir-format msgid "Cancel" msgstr "Cancel" -#: lib/towerops_web/live/org/settings_live.html.heex:675 +#: lib/towerops_web/live/org/settings_live.html.heex:716 #, elixir-autogen, elixir-format msgid "Cancel this invitation?" msgstr "Cancel this invitation?" -#: lib/towerops_web/live/org/settings_live.ex:231 +#: lib/towerops_web/live/org/settings_live.ex:267 #, elixir-autogen, elixir-format msgid "Cannot change the owner's role" msgstr "Cannot change the owner's role" -#: lib/towerops_web/live/org/settings_live.ex:212 +#: lib/towerops_web/live/org/settings_live.ex:248 #, elixir-autogen, elixir-format msgid "Cannot remove the organization owner" msgstr "Cannot remove the organization owner" -#: lib/towerops_web/live/trace_live/index.html.heex:238 +#: lib/towerops_web/live/trace_live/index.html.heex:251 #, elixir-autogen, elixir-format msgid "Capacity" msgstr "Capacity" -#: lib/towerops_web/live/device_live/show.html.heex:2737 +#: lib/towerops_web/live/device_live/show.html.heex:2874 #, elixir-autogen, elixir-format msgid "Capacity Score" msgstr "Capacity Score" -#: lib/towerops_web/live/device_live/show.html.heex:2436 -#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:238 +#: lib/towerops_web/live/device_live/show.html.heex:2573 +#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:240 #, elixir-autogen, elixir-format msgid "Category" msgstr "Category" -#: lib/towerops_web/live/user_settings_live.html.heex:188 +#: lib/towerops_web/live/user_settings_live.html.heex:201 #, elixir-autogen, elixir-format msgid "Central Time (US & Canada)" msgstr "Central Time (US & Canada)" -#: lib/towerops_web/live/user_settings_live.html.heex:422 +#: lib/towerops_web/live/user_settings_live.html.heex:444 #, elixir-autogen, elixir-format msgid "Change Email" msgstr "Change Email" -#: lib/towerops_web/live/user_settings_live.html.heex:432 +#: lib/towerops_web/live/user_settings_live.html.heex:454 #, elixir-autogen, elixir-format msgid "Change Password" msgstr "Change Password" -#: lib/towerops_web/live/user_settings_live.html.heex:419 -#: lib/towerops_web/live/user_settings_live.html.heex:511 +#: lib/towerops_web/live/user_settings_live.html.heex:441 +#: lib/towerops_web/live/user_settings_live.html.heex:535 #, elixir-autogen, elixir-format msgid "Changing..." msgstr "Changing..." -#: lib/towerops_web/live/device_live/form.html.heex:229 +#: lib/towerops_web/live/device_live/form.html.heex:231 #, elixir-autogen, elixir-format msgid "Check Interval (seconds)" msgstr "Check Interval (seconds)" @@ -827,37 +836,37 @@ msgstr "Check does not belong to this device" msgid "Check not found" msgstr "Check not found" -#: lib/towerops_web/live/device_live/show.html.heex:286 +#: lib/towerops_web/live/device_live/show.html.heex:321 #, elixir-autogen, elixir-format msgid "Checks" msgstr "Checks" -#: lib/towerops_web/live/site_live/show.html.heex:151 +#: lib/towerops_web/live/site_live/show.html.heex:253 #, elixir-autogen, elixir-format msgid "Child Sites" msgstr "Child Sites" -#: lib/towerops_web/live/org/settings_live.html.heex:1142 +#: lib/towerops_web/live/org/settings_live.html.heex:1222 #, elixir-autogen, elixir-format msgid "Choose how data flows between TowerOps and NetBox. You can change this later." msgstr "Choose how data flows between TowerOps and NetBox. You can change this later." -#: lib/towerops_web/live/device_live/form.html.heex:309 +#: lib/towerops_web/live/device_live/form.html.heex:313 #, elixir-autogen, elixir-format msgid "Choose monitoring mode and configure SNMP settings for detailed device information." msgstr "Choose monitoring mode and configure SNMP settings for detailed device information." -#: lib/towerops_web/live/org/settings_live.html.heex:1236 +#: lib/towerops_web/live/org/settings_live.html.heex:1324 #, elixir-autogen, elixir-format msgid "Choose which NetBox objects participate in sync. Devices and sites are recommended at minimum." msgstr "Choose which NetBox objects participate in sync. Devices and sites are recommended at minimum." -#: lib/towerops_web/live/user_settings_live.html.heex:332 +#: lib/towerops_web/live/user_settings_live.html.heex:348 #, elixir-autogen, elixir-format msgid "Choose which organization you see by default when logging in or navigating to pages without an organization context." msgstr "Choose which organization you see by default when logging in or navigating to pages without an organization context." -#: lib/towerops_web/live/device_live/show.html.heex:1957 +#: lib/towerops_web/live/device_live/show.html.heex:2084 #, elixir-autogen, elixir-format msgid "Clear" msgstr "Clear" @@ -872,23 +881,23 @@ msgstr "Click and drag to pan, scroll to zoom, click nodes for details" msgid "Click markers to view site details" msgstr "Click markers to view site details" -#: lib/towerops_web/live/agent_live/index.html.heex:434 -#: lib/towerops_web/live/user_settings_live.html.heex:1417 +#: lib/towerops_web/live/agent_live/index.html.heex:448 +#: lib/towerops_web/live/user_settings_live.html.heex:1470 #, elixir-autogen, elixir-format msgid "Click the token to select all, or use the Copy button" msgstr "Click the token to select all, or use the Copy button" -#: lib/towerops_web/live/org/settings_live.html.heex:160 +#: lib/towerops_web/live/org/settings_live.html.heex:166 #, elixir-autogen, elixir-format msgid "Click to make this your default organization" msgstr "Click to make this your default organization" -#: lib/towerops_web/live/agent_live/index.html.heex:512 +#: lib/towerops_web/live/agent_live/index.html.heex:528 #, elixir-autogen, elixir-format, fuzzy msgid "Close" msgstr "close" -#: lib/towerops_web/live/device_live/show.html.heex:68 +#: lib/towerops_web/live/device_live/show.html.heex:76 #, elixir-autogen, elixir-format msgid "Cloud" msgstr "Cloud" @@ -898,12 +907,13 @@ msgstr "Cloud" msgid "Cloud Poller (Application-wide agent, not tied to this organization)" msgstr "Cloud Poller (Application-wide agent, not tied to this organization)" -#: lib/towerops_web/live/agent_live/index.html.heex:175 +#: lib/towerops_web/live/agent_live/index.html.heex:179 #, elixir-autogen, elixir-format msgid "Cloud Pollers" msgstr "Cloud Pollers" -#: lib/towerops_web/live/device_live/form.html.heex:384 +#: lib/towerops_web/live/device_live/form.html.heex:391 +#: lib/towerops_web/live/onboarding_live.html.heex:81 #, elixir-autogen, elixir-format msgid "Community String" msgstr "Community String" @@ -918,12 +928,12 @@ msgstr "Compare Configuration Backups" msgid "Compare Gaiia inventory against Towerops device discovery. Reconciliation runs nightly." msgstr "Compare Gaiia inventory against Towerops device discovery. Reconciliation runs nightly." -#: lib/towerops_web/live/device_live/show.html.heex:230 +#: lib/towerops_web/live/device_live/show.html.heex:265 #, elixir-autogen, elixir-format msgid "Config Timeline" msgstr "Config Timeline" -#: lib/towerops_web/live/device_live/show.html.heex:1773 +#: lib/towerops_web/live/device_live/show.html.heex:1896 #, elixir-autogen, elixir-format msgid "Configuration Backups" msgstr "Configuration Backups" @@ -933,27 +943,28 @@ msgstr "Configuration Backups" msgid "Configuration Differences" msgstr "Configuration Differences" -#: lib/towerops_web/live/org/integrations_live.html.heex:175 +#: lib/towerops_web/live/org/integrations_live.html.heex:152 +#: lib/towerops_web/live/org/integrations_live.html.heex:553 #, elixir-autogen, elixir-format msgid "Configure" msgstr "Configure" -#: lib/towerops_web/live/device_live/form.html.heex:626 +#: lib/towerops_web/live/device_live/form.html.heex:639 #, elixir-autogen, elixir-format msgid "Configure MikroTik RouterOS API access. Works alongside SNMP for enhanced device management. SSH is used for device backups." msgstr "Configure MikroTik RouterOS API access. Works alongside SNMP for enhanced device management. SSH is used for device backups." -#: lib/towerops_web/live/device_live/form.html.heex:219 +#: lib/towerops_web/live/device_live/form.html.heex:221 #, elixir-autogen, elixir-format msgid "Configure how and how often this device should be monitored." msgstr "Configure how and how often this device should be monitored." -#: lib/towerops_web/live/device_live/show.html.heex:1585 +#: lib/towerops_web/live/device_live/show.html.heex:1702 #, elixir-autogen, elixir-format msgid "Configured VLANs" msgstr "Configured VLANs" -#: lib/towerops_web/live/user_settings_live.html.heex:493 +#: lib/towerops_web/live/user_settings_live.html.heex:517 #, elixir-autogen, elixir-format msgid "Confirm password" msgstr "Confirm password" @@ -968,27 +979,29 @@ msgstr "Connect Preseem or enable SNMP monitoring to get started." msgid "Connect third-party services to enhance your monitoring capabilities." msgstr "Connect third-party services to enhance your monitoring capabilities." -#: lib/towerops_web/live/device_live/show.html.heex:1083 +#: lib/towerops_web/live/device_live/show.html.heex:1150 #, elixir-autogen, elixir-format msgid "Connected Devices" msgstr "Connected Devices" -#: lib/towerops_web/live/org/settings_live.html.heex:1096 +#: lib/towerops_web/live/org/settings_live.html.heex:1174 +#: lib/towerops_web/live/org/settings_live.html.heex:1561 +#: lib/towerops_web/live/org/settings_live.html.heex:1666 #, elixir-autogen, elixir-format msgid "Connection" msgstr "Connection" -#: lib/towerops_web/live/org/settings_live.html.heex:1463 +#: lib/towerops_web/live/org/settings_live.html.heex:1787 #, elixir-autogen, elixir-format msgid "Connection Settings" msgstr "Connection Settings" -#: lib/towerops_web/live/device_live/form.html.heex:598 +#: lib/towerops_web/live/device_live/form.html.heex:611 #, elixir-autogen, elixir-format msgid "Connection failed" msgstr "Connection failed" -#: lib/towerops_web/live/device_live/form.html.heex:582 +#: lib/towerops_web/live/device_live/form.html.heex:595 #, elixir-autogen, elixir-format msgid "Connection successful!" msgstr "Connection successful!" @@ -1003,23 +1016,23 @@ msgstr "Connections" msgid "Consent revoked successfully." msgstr "Consent revoked successfully." -#: lib/towerops_web/live/user_settings_live.html.heex:1496 +#: lib/towerops_web/live/user_settings_live.html.heex:1549 #, elixir-autogen, elixir-format msgid "Continue" msgstr "Continue" -#: lib/towerops_web/live/agent_live/index.html.heex:430 -#: lib/towerops_web/live/user_settings_live.html.heex:1413 +#: lib/towerops_web/live/agent_live/index.html.heex:444 +#: lib/towerops_web/live/user_settings_live.html.heex:1466 #, elixir-autogen, elixir-format msgid "Copy" msgstr "Copy" -#: lib/towerops_web/live/user_settings_live.html.heex:1392 +#: lib/towerops_web/live/user_settings_live.html.heex:1445 #, elixir-autogen, elixir-format msgid "Copy this token now. You won't be able to see it again." msgstr "Copy this token now. You won't be able to see it again." -#: lib/towerops_web/live/device_live/show.html.heex:2228 +#: lib/towerops_web/live/device_live/show.html.heex:2357 #, elixir-autogen, elixir-format msgid "Copyable Raw Data" msgstr "Copyable Raw Data" @@ -1034,17 +1047,17 @@ msgstr "Core device identification and location details." msgid "Could not accept invitation. You may already be a member." msgstr "Could not accept invitation. You may already be a member." -#: lib/towerops_web/live/device_live/show.html.heex:967 +#: lib/towerops_web/live/device_live/show.html.heex:1031 #, elixir-autogen, elixir-format msgid "Counters" msgstr "Counters" -#: lib/towerops_web/live/user_settings_live.html.heex:1292 +#: lib/towerops_web/live/user_settings_live.html.heex:1343 #, elixir-autogen, elixir-format msgid "Create API Token" msgstr "Create API Token" -#: lib/towerops_web/live/user_settings_live.html.heex:528 +#: lib/towerops_web/live/user_settings_live.html.heex:554 #, elixir-autogen, elixir-format msgid "Create API tokens to access Towerops programmatically. Tokens are scoped to a specific organization." msgstr "Create API tokens to access Towerops programmatically. Tokens are scoped to a specific organization." @@ -1059,12 +1072,12 @@ msgstr "Create Agent" msgid "Create New Agent" msgstr "Create New Agent" -#: lib/towerops_web/live/user_settings_live.html.heex:1339 +#: lib/towerops_web/live/user_settings_live.html.heex:1392 #, elixir-autogen, elixir-format msgid "Create Token" msgstr "Create Token" -#: lib/towerops_web/live/dashboard_live.html.heex:55 +#: lib/towerops_web/live/dashboard_live.html.heex:58 #, elixir-autogen, elixir-format msgid "Create a Site" msgstr "Create a Site" @@ -1074,7 +1087,7 @@ msgstr "Create a Site" msgid "Create a new organization to manage your sites and devices" msgstr "Create a new organization to manage your sites and devices" -#: lib/towerops_web/live/org/settings_live.html.heex:533 +#: lib/towerops_web/live/org/settings_live.html.heex:569 #, elixir-autogen, elixir-format msgid "Create an agent" msgstr "Create an agent" @@ -1086,22 +1099,23 @@ msgstr "Create your first site to organize devices by tower location." #: lib/towerops_web/live/admin/org_live/index.html.heex:13 #: lib/towerops_web/live/agent_live/index.html.heex:136 -#: lib/towerops_web/live/agent_live/index.html.heex:246 +#: lib/towerops_web/live/agent_live/index.html.heex:252 #, elixir-autogen, elixir-format msgid "Created" msgstr "Created" -#: lib/towerops_web/live/org_live/new.html.heex:34 +#: lib/towerops_web/live/org_live/new.html.heex:35 #, elixir-autogen, elixir-format msgid "Creating..." msgstr "Creating..." +#: lib/towerops_web/live/alert_live/index.html.heex:48 #: lib/towerops_web/live/org/preseem_insights_live.html.heex:95 #, elixir-autogen, elixir-format msgid "Critical" msgstr "Critical" -#: lib/towerops_web/live/org/settings_live.html.heex:421 +#: lib/towerops_web/live/org/settings_live.html.heex:445 #, elixir-autogen, elixir-format msgid "Critical Security Warning:" msgstr "Critical Security Warning:" @@ -1111,64 +1125,65 @@ msgstr "Critical Security Warning:" msgid "Current Activity" msgstr "Current Activity" -#: lib/towerops_web/live/org/settings_live.html.heex:469 +#: lib/towerops_web/live/org/settings_live.html.heex:499 #, elixir-autogen, elixir-format msgid "Current Device Assignment:" msgstr "Current Device Assignment:" -#: lib/towerops_web/live/user_settings_live.html.heex:767 +#: lib/towerops_web/live/user_settings_live.html.heex:808 #, elixir-autogen, elixir-format msgid "Current Session" msgstr "Current Session" -#: lib/towerops_web/live/device_live/form.html.heex:729 -#: lib/towerops_web/live/site_live/form.html.heex:451 +#: lib/towerops_web/live/device_live/form.html.heex:749 +#: lib/towerops_web/live/site_live/form.html.heex:472 #, elixir-autogen, elixir-format msgid "Danger Zone" msgstr "Danger Zone" -#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:326 +#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:328 #, elixir-autogen, elixir-format msgid "Data mismatches (IP, serial, etc.)" msgstr "Data mismatches (IP, serial, etc.)" -#: lib/towerops_web/live/user_settings_live.html.heex:854 +#: lib/towerops_web/live/user_settings_live.html.heex:898 #, elixir-autogen, elixir-format msgid "Date & Time" msgstr "Date & Time" -#: lib/towerops_web/live/agent_live/show.html.heex:75 +#: lib/towerops_web/live/agent_live/show.html.heex:83 #, elixir-autogen, elixir-format msgid "Debug Logs" msgstr "Debug Logs" -#: lib/towerops_web/live/org/settings_live.html.heex:447 -#: lib/towerops_web/live/org/settings_live.html.heex:525 +#: lib/towerops_web/live/org/settings_live.html.heex:475 +#: lib/towerops_web/live/org/settings_live.html.heex:561 #, elixir-autogen, elixir-format msgid "Default Agent" msgstr "Default Agent" -#: lib/towerops_web/live/site_live/form.html.heex:201 +#: lib/towerops_web/live/site_live/form.html.heex:205 #, elixir-autogen, elixir-format msgid "Default Agent for Site" msgstr "Default Agent for Site" -#: lib/towerops_web/live/org/settings_live.html.heex:131 -#: lib/towerops_web/live/user_settings_live.html.heex:329 +#: lib/towerops_web/live/org/settings_live.html.heex:135 +#: lib/towerops_web/live/user_settings_live.html.heex:345 #, elixir-autogen, elixir-format msgid "Default Organization" msgstr "Default Organization" -#: lib/towerops_web/live/org/settings_live.html.heex:462 +#: lib/towerops_web/live/org/settings_live.html.heex:492 #, elixir-autogen, elixir-format msgid "Default Remote Agent" msgstr "Default Remote Agent" -#: lib/towerops_web/live/admin/org_live/index.html.heex:23 -#: lib/towerops_web/live/admin/user_live/index.html.heex:36 -#: lib/towerops_web/live/agent_live/index.html.heex:160 -#: lib/towerops_web/live/agent_live/index.html.heex:270 -#: lib/towerops_web/live/user_settings_live.html.heex:586 +#: lib/towerops_web/live/admin/org_live/index.html.heex:27 +#: lib/towerops_web/live/admin/user_live/index.html.heex:38 +#: lib/towerops_web/live/agent_live/index.html.heex:164 +#: lib/towerops_web/live/agent_live/index.html.heex:280 +#: lib/towerops_web/live/maintenance_live/show.html.heex:63 +#: lib/towerops_web/live/user_settings_live.html.heex:618 #, elixir-autogen, elixir-format msgid "Delete" msgstr "Delete" @@ -1185,9 +1200,9 @@ msgstr "Denylist" #: lib/towerops_web/live/admin/security_live/index.html.heex:76 #: lib/towerops_web/live/admin/security_live/index.html.heex:99 -#: lib/towerops_web/live/device_live/form.html.heex:182 -#: lib/towerops_web/live/device_live/show.html.heex:2178 -#: lib/towerops_web/live/site_live/form.html.heex:177 +#: lib/towerops_web/live/device_live/form.html.heex:184 +#: lib/towerops_web/live/device_live/show.html.heex:2307 +#: lib/towerops_web/live/site_live/form.html.heex:179 #, elixir-autogen, elixir-format msgid "Description" msgstr "Description" @@ -1198,21 +1213,26 @@ msgstr "Description" msgid "Deselect All" msgstr "Deselect All" -#: lib/towerops_web/live/agent_live/show.html.heex:119 +#: lib/towerops_web/live/agent_live/show.html.heex:129 #, elixir-autogen, elixir-format msgid "Development (tail):" msgstr "Development (tail):" #: lib/towerops_web/live/agent_live/index.html.heex:99 -#: lib/towerops_web/live/agent_live/index.html.heex:209 -#: lib/towerops_web/live/dashboard_live.html.heex:380 -#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:132 -#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:180 +#: lib/towerops_web/live/agent_live/index.html.heex:215 +#: lib/towerops_web/live/alert_live/index.html.heex:208 +#: lib/towerops_web/live/dashboard_live.html.heex:365 +#: lib/towerops_web/live/device_live/index.html.heex:266 +#: lib/towerops_web/live/maintenance_live/form.html.heex:84 +#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:134 +#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:182 +#: lib/towerops_web/live/site_live/show.html.heex:184 +#: lib/towerops_web/live/site_live/show.html.heex:382 #, elixir-autogen, elixir-format msgid "Device" msgstr "Device" -#: lib/towerops_web/live/device_live/show.html.heex:332 +#: lib/towerops_web/live/device_live/show.html.heex:367 #, elixir-autogen, elixir-format msgid "Device Information" msgstr "Device Information" @@ -1222,8 +1242,8 @@ msgstr "Device Information" msgid "Device Name" msgstr "Device Name" -#: lib/towerops_web/live/device_live/form.html.heex:189 -#: lib/towerops_web/live/org/settings_live.html.heex:1347 +#: lib/towerops_web/live/device_live/form.html.heex:191 +#: lib/towerops_web/live/org/settings_live.html.heex:1439 #, elixir-autogen, elixir-format msgid "Device Role" msgstr "Device Role" @@ -1239,7 +1259,7 @@ msgstr "Device is DOWN" msgid "Device linked successfully" msgstr "Device linked successfully" -#: lib/towerops_web/live/graph_live/show.ex:801 +#: lib/towerops_web/live/graph_live/show.ex:805 #, elixir-autogen, elixir-format msgid "Device no longer exists" msgstr "Device no longer exists" @@ -1251,7 +1271,7 @@ msgstr "Device no longer exists" msgid "Device not found" msgstr "Device not found" -#: lib/towerops_web/live/agent_live/show.html.heex:301 +#: lib/towerops_web/live/agent_live/show.html.heex:311 #, elixir-autogen, elixir-format msgid "Device that this agent is responsible for polling" msgstr "Device that this agent is responsible for polling" @@ -1262,56 +1282,54 @@ msgstr "Device that this agent is responsible for polling" msgid "Device unlinked" msgstr "Device unlinked" +#: lib/towerops_web/components/layouts.ex:268 +#: lib/towerops_web/components/layouts.ex:556 #: lib/towerops_web/live/admin/agent_live/index.html.heex:40 #: lib/towerops_web/live/admin/agent_live/index.html.heex:114 -#: lib/towerops_web/live/admin/user_live/index.html.heex:13 -#: lib/towerops_web/live/dashboard_live.html.heex:177 -#: lib/towerops_web/live/dashboard_live.html.heex:603 +#: lib/towerops_web/live/admin/user_live/index.html.heex:15 +#: lib/towerops_web/live/dashboard_live.html.heex:499 #: lib/towerops_web/live/mikrotik_backup_live/compare.html.heex:7 #: lib/towerops_web/live/org/preseem_devices_live.html.heex:29 -#: lib/towerops_web/live/org/settings_live.html.heex:1254 +#: lib/towerops_web/live/org/settings_live.html.heex:1344 #: lib/towerops_web/live/site_live/index.html.heex:48 +#: lib/towerops_web/live/site_live/show.html.heex:97 #, elixir-autogen, elixir-format msgid "Devices" msgstr "Devices" -#: lib/towerops_web/live/device_live/index.html.heex:501 +#: lib/towerops_web/live/device_live/index.html.heex:559 #, elixir-autogen, elixir-format msgid "Devices will appear here as they are discovered via LLDP/CDP." msgstr "Devices will appear here as they are discovered via LLDP/CDP." -#: lib/towerops_web/live/device_live/show.html.heex:1196 +#: lib/towerops_web/live/device_live/index.html.heex:69 +#: lib/towerops_web/live/device_live/show.html.heex:1263 #: lib/towerops_web/live/network_map_live.html.heex:116 #, elixir-autogen, elixir-format msgid "Discovered" msgstr "Discovered" -#: lib/towerops_web/live/device_live/index.html.heex:582 +#: lib/towerops_web/live/device_live/index.html.heex:631 #, elixir-autogen, elixir-format msgid "Discovered By" msgstr "Discovered By" -#: lib/towerops_web/live/device_live/index.html.heex:135 -#, elixir-autogen, elixir-format -msgid "Discovered Devices" -msgstr "Discovered Devices" - -#: lib/towerops_web/live/device_live/show.html.heex:1310 +#: lib/towerops_web/live/device_live/show.html.heex:1423 #, elixir-autogen, elixir-format msgid "Discovered Neighbors" msgstr "Discovered Neighbors" -#: lib/towerops_web/live/device_live/show.html.heex:2168 +#: lib/towerops_web/live/device_live/show.html.heex:2297 #, elixir-autogen, elixir-format msgid "Discovered Sensors" msgstr "Discovered Sensors" -#: lib/towerops_web/live/device_live/form.html.heex:549 +#: lib/towerops_web/live/device_live/form.html.heex:562 #, elixir-autogen, elixir-format msgid "Discovering..." msgstr "Discovering..." -#: lib/towerops_web/live/device_live/show.ex:1283 +#: lib/towerops_web/live/device_live/show.ex:1298 #, elixir-autogen, elixir-format msgid "Discovery started for %{name}" msgstr "Discovery started for %{name}" @@ -1334,28 +1352,28 @@ msgstr "Dismiss Selected" msgid "Dismissed" msgstr "Dismissed" -#: lib/towerops_web/live/agent_live/index.html.heex:440 +#: lib/towerops_web/live/agent_live/index.html.heex:454 #, elixir-autogen, elixir-format msgid "Docker Compose Setup with Auto-Updates" msgstr "Docker Compose Setup with Auto-Updates" -#: lib/towerops_web/live/user_settings_live.html.heex:1428 +#: lib/towerops_web/live/user_settings_live.html.heex:1481 #, elixir-autogen, elixir-format msgid "Done" msgstr "Done" -#: lib/towerops_web/live/dashboard_live.html.heex:606 +#: lib/towerops_web/live/dashboard_live.html.heex:502 #: lib/towerops_web/live/site_live/index.html.heex:51 #, elixir-autogen, elixir-format msgid "Down" msgstr "Down" -#: lib/towerops_web/live/device_live/show.html.heex:422 +#: lib/towerops_web/live/device_live/show.html.heex:465 #, elixir-autogen, elixir-format msgid "Download" msgstr "Download" -#: lib/towerops_web/live/user_settings_live.html.heex:182 +#: lib/towerops_web/live/user_settings_live.html.heex:195 #, elixir-autogen, elixir-format msgid "Eastern Time (US & Canada)" msgstr "Eastern Time (US & Canada)" @@ -1370,29 +1388,30 @@ msgstr "Edit Agent" msgid "Edit Device" msgstr "Edit Device" -#: lib/towerops_web/live/device_live/show.html.heex:2007 +#: lib/towerops_web/live/device_live/show.html.heex:2134 #, elixir-autogen, elixir-format msgid "Edit Device Settings" msgstr "Edit Device Settings" #: lib/towerops_web/live/site_live/form.ex:61 +#: lib/towerops_web/live/site_live/show.html.heex:67 #, elixir-autogen, elixir-format msgid "Edit Site" msgstr "Edit Site" #: lib/towerops_web/live/admin/user_live/index.html.heex:10 -#: lib/towerops_web/live/org/settings_live.html.heex:627 +#: lib/towerops_web/live/org/settings_live.html.heex:668 #, elixir-autogen, elixir-format msgid "Email" msgstr "Email" -#: lib/towerops_web/live/user_settings_live.html.heex:385 +#: lib/towerops_web/live/user_settings_live.html.heex:404 #, elixir-autogen, elixir-format msgid "Email Address" msgstr "Email Address" -#: lib/towerops_web/live/org/settings_live.html.heex:586 -#: lib/towerops_web/live/user_settings_live.html.heex:400 +#: lib/towerops_web/live/org/settings_live.html.heex:622 +#: lib/towerops_web/live/user_settings_live.html.heex:422 #, elixir-autogen, elixir-format msgid "Email address" msgstr "Email address" @@ -1417,97 +1436,88 @@ msgstr "Email confirmation link is invalid or has expired." msgid "Email confirmed successfully. You may now log in." msgstr "Email confirmed successfully. You may now log in." -#: lib/towerops_web/live/device_live/form.html.heex:653 -#: lib/towerops_web/live/org/settings_live.html.heex:377 -#: lib/towerops_web/live/site_live/form.html.heex:391 +#: lib/towerops_web/live/device_live/form.html.heex:668 +#: lib/towerops_web/live/org/settings_live.html.heex:401 +#: lib/towerops_web/live/site_live/form.html.heex:407 #, elixir-autogen, elixir-format msgid "Enable MikroTik API" msgstr "Enable MikroTik API" -#: lib/towerops_web/live/device_live/show.html.heex:2003 +#: lib/towerops_web/live/device_live/show.html.heex:2130 #, elixir-autogen, elixir-format msgid "Enable MikroTik API in device settings to enable configuration backups." msgstr "Enable MikroTik API in device settings to enable configuration backups." -#: lib/towerops_web/live/device_live/form.html.heex:239 +#: lib/towerops_web/live/device_live/form.html.heex:241 #, elixir-autogen, elixir-format msgid "Enable Monitoring" msgstr "Enable Monitoring" -#: lib/towerops_web/live/org/settings_live.html.heex:174 +#: lib/towerops_web/live/org/settings_live.html.heex:180 #, elixir-autogen, elixir-format msgid "Enable site organization to group devices into physical locations (offices, datacenters, etc.)." msgstr "Enable site organization to group devices into physical locations (offices, datacenters, etc.)." -#: lib/towerops_web/live/agent_live/edit.html.heex:68 +#: lib/towerops_web/live/agent_live/edit.html.heex:69 #, elixir-autogen, elixir-format msgid "Enable verbose logging for troubleshooting SNMP discovery and polling issues." msgstr "Enable verbose logging for troubleshooting SNMP discovery and polling issues." -#: lib/towerops_web/live/user_settings_live.html.heex:305 -#, elixir-autogen, elixir-format -msgid "English" -msgstr "English" - #: lib/towerops_web/live/site_live/form.html.heex:101 #, elixir-autogen, elixir-format msgid "Enter a full address and click Geocode to automatically fill latitude/longitude" msgstr "Enter a full address and click Geocode to automatically fill latitude/longitude" -#: lib/towerops_web/live/user_settings_live.html.heex:1562 +#: lib/towerops_web/live/user_settings_live.html.heex:1640 #, elixir-autogen, elixir-format msgid "Enter the 6-digit code from your app to verify" msgstr "Enter the 6-digit code from your app to verify" -#: lib/towerops_web/live/org/settings_live.html.heex:1125 +#: lib/towerops_web/live/org/settings_live.html.heex:1205 #, elixir-autogen, elixir-format msgid "Enter your NetBox API token" msgstr "Enter your NetBox API token" -#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:29 -#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:20 +#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:31 +#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:22 #, elixir-autogen, elixir-format msgid "Entity Mapping" msgstr "Entity Mapping" -#: lib/towerops_web/live/device_live/show.html.heex:2016 +#: lib/towerops_web/live/device_live/show.html.heex:2143 #, elixir-autogen, elixir-format msgid "Event Logs" msgstr "Event Logs" -#: lib/towerops_web/live/device_live/show.html.heex:300 +#: lib/towerops_web/live/device_live/show.html.heex:335 #, elixir-autogen, elixir-format msgid "Events" msgstr "Events" -#: lib/towerops_web/live/org/settings_live.html.heex:1504 +#: lib/towerops_web/live/org/settings_live.html.heex:1828 #, elixir-autogen, elixir-format msgid "Events API v2" msgstr "Events API v2" -#: lib/towerops_web/live/device_live/show.html.heex:2072 +#: lib/towerops_web/live/device_live/show.html.heex:2199 #, elixir-autogen, elixir-format msgid "Events will appear here as interface states change, speeds change, or other monitored changes occur." msgstr "Events will appear here as interface states change, speeds change, or other monitored changes occur." -#: lib/towerops_web/live/device_live/index.html.heex:121 -#, elixir-autogen, elixir-format -msgid "Existing Devices" -msgstr "Existing Devices" - +#: lib/towerops_web/live/alert_live/index.html.heex:11 #: lib/towerops_web/live/network_map_live.html.heex:10 #, elixir-autogen, elixir-format msgid "Experimental" msgstr "Experimental" -#: lib/towerops_web/live/device_live/form.html.heex:631 -#: lib/towerops_web/live/org/settings_live.html.heex:363 -#: lib/towerops_web/live/site_live/form.html.heex:383 +#: lib/towerops_web/live/device_live/form.html.heex:646 +#: lib/towerops_web/live/org/settings_live.html.heex:387 +#: lib/towerops_web/live/site_live/form.html.heex:399 #, elixir-autogen, elixir-format msgid "Experimental Feature:" msgstr "Experimental Feature:" -#: lib/towerops_web/live/org/settings_live.html.heex:636 +#: lib/towerops_web/live/org/settings_live.html.heex:677 #, elixir-autogen, elixir-format msgid "Expires" msgstr "Expires" @@ -1529,7 +1539,7 @@ msgid "Failed to dismiss" msgstr "Failed to dismiss" #: lib/towerops_web/live/dashboard_live.ex:62 -#: lib/towerops_web/live/device_live/show.ex:1356 +#: lib/towerops_web/live/device_live/show.ex:1371 #: lib/towerops_web/live/site_live/index.ex:46 #, elixir-autogen, elixir-format msgid "Failed to dismiss insight" @@ -1556,7 +1566,7 @@ msgstr "Failed to fetch latest release from GitHub" msgid "Failed to generate diff: %{reason}" msgstr "Failed to generate diff: %{reason}" -#: lib/towerops_web/live/help_live/index.ex:84 +#: lib/towerops_web/live/help_live/index.ex:83 #, elixir-autogen, elixir-format msgid "Failed to generate password: %{reason}" msgstr "Failed to generate password: %{reason}" @@ -1577,7 +1587,7 @@ msgstr "Failed to link device" msgid "Failed to link site" msgstr "Failed to link site" -#: lib/towerops_web/live/org/integrations_live.ex:167 +#: lib/towerops_web/live/org/integrations_live.ex:248 #, elixir-autogen, elixir-format msgid "Failed to regenerate webhook secret" msgstr "Failed to regenerate webhook secret" @@ -1587,7 +1597,7 @@ msgstr "Failed to regenerate webhook secret" msgid "Failed to remove from allowlist" msgstr "Failed to remove from allowlist" -#: lib/towerops_web/live/org/settings_live.ex:215 +#: lib/towerops_web/live/org/settings_live.ex:251 #, elixir-autogen, elixir-format msgid "Failed to remove member" msgstr "Failed to remove member" @@ -1597,22 +1607,22 @@ msgstr "Failed to remove member" msgid "Failed to revoke consent." msgstr "Failed to revoke consent." -#: lib/towerops_web/live/org/settings_live.ex:432 +#: lib/towerops_web/live/org/settings_live.ex:444 #, elixir-autogen, elixir-format msgid "Failed to save webhook secret" msgstr "Failed to save webhook secret" -#: lib/towerops_web/live/org/settings_live.ex:179 +#: lib/towerops_web/live/org/settings_live.ex:215 #, elixir-autogen, elixir-format msgid "Failed to send invitation: %{errors}" msgstr "Failed to send invitation: %{errors}" -#: lib/towerops_web/live/org/settings_live.ex:257 +#: lib/towerops_web/live/org/settings_live.ex:293 #, elixir-autogen, elixir-format msgid "Failed to set default organization" msgstr "Failed to set default organization" -#: lib/towerops_web/live/device_live/show.ex:1286 +#: lib/towerops_web/live/device_live/show.ex:1301 #, elixir-autogen, elixir-format msgid "Failed to start discovery. Please try again." msgstr "Failed to start discovery. Please try again." @@ -1633,56 +1643,56 @@ msgstr "Failed to unlink device" msgid "Failed to unlink site" msgstr "Failed to unlink site" -#: lib/towerops_web/live/org/integrations_live.ex:189 -#: lib/towerops_web/live/org/settings_live.ex:454 +#: lib/towerops_web/live/org/integrations_live.ex:291 +#: lib/towerops_web/live/org/settings_live.ex:466 #, elixir-autogen, elixir-format msgid "Failed to update integration" msgstr "Failed to update integration" -#: lib/towerops_web/live/org/settings_live.ex:234 +#: lib/towerops_web/live/org/settings_live.ex:270 #, elixir-autogen, elixir-format msgid "Failed to update role" msgstr "Failed to update role" -#: lib/towerops_web/live/agent_live/index.html.heex:289 +#: lib/towerops_web/live/agent_live/index.html.heex:299 #, elixir-autogen, elixir-format msgid "Fallback agent for organizations without a default agent configured. Devices with no assignment at any level will use this agent." msgstr "Fallback agent for organizations without a default agent configured. Devices with no assignment at any level will use this agent." -#: lib/towerops_web/live/device_live/show.html.heex:2106 -#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:183 +#: lib/towerops_web/live/device_live/show.html.heex:2235 +#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:185 #, elixir-autogen, elixir-format msgid "Field" msgstr "Field" -#: lib/towerops_web/live/org/settings_live.html.heex:1335 +#: lib/towerops_web/live/org/settings_live.html.heex:1425 #, elixir-autogen, elixir-format msgid "Filters" msgstr "Filters" -#: lib/towerops_web/live/device_live/show.html.heex:1003 +#: lib/towerops_web/live/device_live/show.html.heex:1068 #, elixir-autogen, elixir-format msgid "Firewall" msgstr "Firewall" -#: lib/towerops_web/live/device_live/show.html.heex:392 +#: lib/towerops_web/live/device_live/show.html.heex:435 #, elixir-autogen, elixir-format msgid "Firmware Update Available" msgstr "Firmware Update Available" -#: lib/towerops_web/live/user_settings_live.html.heex:129 +#: lib/towerops_web/live/user_settings_live.html.heex:142 #, elixir-autogen, elixir-format msgid "First name" msgstr "First name" -#: lib/towerops_web/live/org/settings_live.html.heex:330 -#: lib/towerops_web/live/org/settings_live.html.heex:503 +#: lib/towerops_web/live/org/settings_live.html.heex:346 +#: lib/towerops_web/live/org/settings_live.html.heex:533 #, elixir-autogen, elixir-format msgid "Force Apply to All Devices" msgstr "Force Apply to All Devices" -#: lib/towerops_web/live/site_live/form.html.heex:215 -#: lib/towerops_web/live/site_live/form.html.heex:354 +#: lib/towerops_web/live/site_live/form.html.heex:219 +#: lib/towerops_web/live/site_live/form.html.heex:366 #, elixir-autogen, elixir-format msgid "Force Apply to Site Device" msgstr "Force Apply to Site Device" @@ -1692,7 +1702,7 @@ msgstr "Force Apply to Site Device" msgid "Free organization limit reached" msgstr "Free organization limit reached" -#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:189 +#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:191 #, elixir-autogen, elixir-format msgid "Gaiia" msgstr "Gaiia" @@ -1702,12 +1712,12 @@ msgstr "Gaiia" msgid "Gaiia Entity Mapping" msgstr "Gaiia Entity Mapping" -#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:142 +#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:146 #, elixir-autogen, elixir-format msgid "Gaiia ID" msgstr "Gaiia ID" -#: lib/towerops_web/live/device_live/show.html.heex:2378 +#: lib/towerops_web/live/device_live/show.html.heex:2515 #, elixir-autogen, elixir-format msgid "Gaiia Inventory Item" msgstr "Gaiia Inventory Item" @@ -1718,12 +1728,12 @@ msgstr "Gaiia Inventory Item" msgid "Gaiia Inventory Reconciliation" msgstr "Gaiia Inventory Reconciliation" -#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:232 +#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:234 #, elixir-autogen, elixir-format msgid "Gaiia Item" msgstr "Gaiia Item" -#: lib/towerops_web/live/device_live/show.html.heex:2488 +#: lib/towerops_web/live/device_live/show.html.heex:2625 #, elixir-autogen, elixir-format msgid "Gaiia Network Site" msgstr "Gaiia Network Site" @@ -1780,17 +1790,17 @@ msgstr "Geographic Site Locations" msgid "Geographic locations of your sites" msgstr "Geographic locations of your sites" -#: lib/towerops_web/live/device_live/index.html.heex:177 +#: lib/towerops_web/live/device_live/index.html.heex:152 #, elixir-autogen, elixir-format msgid "Get started by adding your first device." msgstr "Get started by adding your first device." -#: lib/towerops_web/live/user_settings_live.html.heex:540 +#: lib/towerops_web/live/user_settings_live.html.heex:568 #, elixir-autogen, elixir-format msgid "Get started by creating a new API token." msgstr "Get started by creating a new API token." -#: lib/towerops_web/live/org_live/index.html.heex:35 +#: lib/towerops_web/live/org_live/index.html.heex:42 #, elixir-autogen, elixir-format msgid "Get started by creating a new organization." msgstr "Get started by creating a new organization." @@ -1800,12 +1810,12 @@ msgstr "Get started by creating a new organization." msgid "Get started by creating your first remote agent." msgstr "Get started by creating your first remote agent." -#: lib/towerops_web/live/user_settings_live.html.heex:1296 +#: lib/towerops_web/live/user_settings_live.html.heex:1347 #, elixir-autogen, elixir-format msgid "Give this token a name and select the organization it will have access to." msgstr "Give this token a name and select the organization it will have access to." -#: lib/towerops_web/live/agent_live/index.html.heex:286 +#: lib/towerops_web/live/agent_live/index.html.heex:296 #, elixir-autogen, elixir-format msgid "Global Default Cloud Poller" msgstr "Global Default Cloud Poller" @@ -1821,66 +1831,53 @@ msgstr "Go back home" msgid "Go to your org settings to connect an integration." msgstr "Go to your org settings to connect an integration." -#: lib/towerops_web/live/device_live/show.html.heex:2359 +#: lib/towerops_web/live/device_live/show.html.heex:2496 #, elixir-autogen, elixir-format msgid "Graph" msgstr "Graph" -#: lib/towerops_web/live/device_live/index.html.heex:539 -#, elixir-autogen, elixir-format -msgid "HOST" -msgstr "HOST" - -#: lib/towerops_web/live/dashboard_live.html.heex:126 -#, elixir-autogen, elixir-format -msgid "Health" -msgstr "Health" - #: lib/towerops_web/live/admin/monitoring_live.html.heex:165 #, elixir-autogen, elixir-format msgid "Health Metrics" msgstr "Health Metrics" -#: lib/towerops_web/live/device_live/show.html.heex:2136 +#: lib/towerops_web/live/device_live/show.html.heex:2265 #, elixir-autogen, elixir-format msgid "Health Sensor Table Walk" msgstr "Health Sensor Table Walk" +#: lib/towerops_web/components/layouts.ex:418 +#: lib/towerops_web/components/layouts.ex:611 #: lib/towerops_web/live/help_live/index.ex:34 #, elixir-autogen, elixir-format msgid "Help" msgstr "Help" -#: lib/towerops_web/live/device_live/index.html.heex:550 +#: lib/towerops_web/live/device_live/index.html.heex:604 #, elixir-autogen, elixir-format msgid "Hostname" msgstr "Hostname" -#: lib/towerops_web/live/org/settings_live.html.heex:1400 +#: lib/towerops_web/live/org/settings_live.html.heex:1492 #, elixir-autogen, elixir-format msgid "How often TowerOps checks NetBox for changes. 30 minutes is recommended for most setups." msgstr "How often TowerOps checks NetBox for changes. 30 minutes is recommended for most setups." -#: lib/towerops_web/live/user_settings_live.html.heex:1702 +#: lib/towerops_web/live/user_settings_live.html.heex:1784 #, elixir-autogen, elixir-format msgid "I've Saved These Codes" msgstr "I've Saved These Codes" -#: lib/towerops_web/live/device_live/show.html.heex:574 +#: lib/towerops_web/live/device_live/show.html.heex:625 #, elixir-autogen, elixir-format msgid "ICMP Latency" msgstr "ICMP Latency" -#: lib/towerops_web/live/device_live/form.html.heex:345 +#: lib/towerops_web/live/device_live/form.html.heex:351 #, elixir-autogen, elixir-format msgid "ICMP Only" msgstr "ICMP Only" -#: lib/towerops_web/live/device_live/index.html.heex:530 -#, elixir-autogen, elixir-format -msgid "IP" -msgstr "IP" - #: lib/towerops_web/live/admin/security_live/index.ex:97 #, elixir-autogen, elixir-format msgid "IP %{ip_address} unblocked" @@ -1893,17 +1890,18 @@ msgstr "IP Access Control" #: lib/towerops_web/live/admin/security_live/index.html.heex:154 #: lib/towerops_web/live/device_live/form.html.heex:127 -#: lib/towerops_web/live/device_live/index.html.heex:239 -#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:149 -#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:135 -#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:235 -#: lib/towerops_web/live/org/preseem_devices_live.html.heex:135 -#: lib/towerops_web/live/user_settings_live.html.heex:878 +#: lib/towerops_web/live/device_live/index.html.heex:272 +#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:153 +#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:137 +#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:237 +#: lib/towerops_web/live/org/preseem_devices_live.html.heex:137 +#: lib/towerops_web/live/site_live/show.html.heex:383 +#: lib/towerops_web/live/user_settings_live.html.heex:922 #, elixir-autogen, elixir-format msgid "IP Address" msgstr "IP Address" -#: lib/towerops_web/live/device_live/show.html.heex:2466 +#: lib/towerops_web/live/device_live/show.html.heex:2603 #, elixir-autogen, elixir-format msgid "IP Address (Gaiia)" msgstr "IP Address (Gaiia)" @@ -1913,8 +1911,8 @@ msgstr "IP Address (Gaiia)" msgid "IP Address or CIDR" msgstr "IP Address or CIDR" -#: lib/towerops_web/live/device_live/show.html.heex:200 -#: lib/towerops_web/live/org/settings_live.html.heex:1298 +#: lib/towerops_web/live/device_live/show.html.heex:235 +#: lib/towerops_web/live/org/settings_live.html.heex:1388 #, elixir-autogen, elixir-format msgid "IP Addresses" msgstr "IP Addresses" @@ -1929,22 +1927,22 @@ msgstr "IP/CIDR" msgid "IP/CIDR added to allowlist" msgstr "IP/CIDR added to allowlist" -#: lib/towerops_web/live/org/settings_live.html.heex:1301 +#: lib/towerops_web/live/org/settings_live.html.heex:1391 #, elixir-autogen, elixir-format msgid "IPAM data — assigned IPs, prefixes, VRFs" msgstr "IPAM data — assigned IPs, prefixes, VRFs" -#: lib/towerops_web/live/device_live/show.html.heex:1657 +#: lib/towerops_web/live/device_live/show.html.heex:1776 #, elixir-autogen, elixir-format msgid "IPv4" msgstr "IPv4" -#: lib/towerops_web/live/device_live/show.html.heex:1714 +#: lib/towerops_web/live/device_live/show.html.heex:1835 #, elixir-autogen, elixir-format msgid "IPv6" msgstr "IPv6" -#: lib/towerops_web/live/device_live/index.html.heex:516 +#: lib/towerops_web/live/device_live/index.html.heex:571 #, elixir-autogen, elixir-format msgid "Identifier" msgstr "Identifier" @@ -1954,22 +1952,25 @@ msgstr "Identifier" msgid "Identity verified." msgstr "Identity verified." -#: lib/towerops_web/live/user_settings_live.html.heex:1688 +#: lib/towerops_web/live/user_settings_live.html.heex:1768 #, elixir-autogen, elixir-format msgid "If you lose your authenticator and these codes, you won't be able to access your account." msgstr "If you lose your authenticator and these codes, you won't be able to access your account." -#: lib/towerops_web/live/dashboard_live.html.heex:386 +#: lib/towerops_web/live/alert_live/index.html.heex:132 +#: lib/towerops_web/live/alert_live/index.html.heex:232 +#: lib/towerops_web/live/alert_live/index.html.heex:455 +#: lib/towerops_web/live/dashboard_live.html.heex:371 #, elixir-autogen, elixir-format msgid "Impact" msgstr "Impact" -#: lib/towerops_web/live/admin/user_live/index.html.heex:26 +#: lib/towerops_web/live/admin/user_live/index.html.heex:28 #, elixir-autogen, elixir-format msgid "Impersonate" msgstr "Impersonate" -#: lib/towerops_web/live/user_settings_live.html.heex:1683 +#: lib/towerops_web/live/user_settings_live.html.heex:1761 #, elixir-autogen, elixir-format msgid "Important" msgstr "Important" @@ -1987,46 +1988,47 @@ msgstr "Info" msgid "Insight dismissed" msgstr "Insight dismissed" -#: lib/towerops_web/live/dashboard_live.html.heex:280 -#: lib/towerops_web/live/dashboard_live.html.heex:451 +#: lib/towerops_web/components/layouts.ex:353 +#: lib/towerops_web/components/layouts.ex:582 +#: lib/towerops_web/live/dashboard_live.html.heex:594 #: lib/towerops_web/live/insights_live/index.ex:17 #: lib/towerops_web/live/org/preseem_devices_live.html.heex:35 -#: lib/towerops_web/live/site_live/index.html.heex:123 +#: lib/towerops_web/live/site_live/index.html.heex:151 #, elixir-autogen, elixir-format msgid "Insights" msgstr "Insights" -#: lib/towerops_web/live/org/settings_live.html.heex:1506 +#: lib/towerops_web/live/org/settings_live.html.heex:1831 #, elixir-autogen, elixir-format msgid "Integration Key" msgstr "Integration Key" -#: lib/towerops_web/live/org/integrations_live.ex:125 -#: lib/towerops_web/live/org/settings_live.ex:374 +#: lib/towerops_web/live/org/integrations_live.ex:194 +#: lib/towerops_web/live/org/settings_live.ex:411 #, elixir-autogen, elixir-format msgid "Integration saved successfully" msgstr "Integration saved successfully" -#: lib/towerops_web/live/org/integrations_live.ex:186 -#: lib/towerops_web/live/org/settings_live.ex:451 +#: lib/towerops_web/live/org/integrations_live.ex:288 +#: lib/towerops_web/live/org/settings_live.ex:463 #, elixir-autogen, elixir-format msgid "Integration updated" msgstr "Integration updated" #: lib/towerops_web/live/org/integrations_live.html.heex:15 -#: lib/towerops_web/live/org/settings_live.html.heex:87 -#: lib/towerops_web/live/org/settings_live.html.heex:1501 -#: lib/towerops_web/live/org/settings_live.html.heex:1551 +#: lib/towerops_web/live/org/settings_live.html.heex:91 +#: lib/towerops_web/live/org/settings_live.html.heex:1825 +#: lib/towerops_web/live/org/settings_live.html.heex:1884 #, elixir-autogen, elixir-format msgid "Integrations" msgstr "Integrations" -#: lib/towerops_web/live/org/settings_live.html.heex:1320 +#: lib/towerops_web/live/org/settings_live.html.heex:1410 #, elixir-autogen, elixir-format msgid "Interfaces" msgstr "Interfaces" -#: lib/towerops_web/controllers/user_session_controller.ex:192 +#: lib/towerops_web/controllers/user_session_controller.ex:209 #: lib/towerops_web/controllers/user_sudo_controller.ex:91 #, elixir-autogen, elixir-format msgid "Invalid authentication code. Please try again." @@ -2048,37 +2050,37 @@ msgstr "Invalid email or password" msgid "Invalid or expired invitation link." msgstr "Invalid or expired invitation link." -#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:73 +#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:75 #, elixir-autogen, elixir-format msgid "Inventory Items" msgstr "Inventory Items" -#: lib/towerops_web/live/org/settings_live.ex:193 +#: lib/towerops_web/live/org/settings_live.ex:229 #, elixir-autogen, elixir-format msgid "Invitation cancelled" msgstr "Invitation cancelled" -#: lib/towerops_web/live/org/settings_live.ex:196 +#: lib/towerops_web/live/org/settings_live.ex:232 #, elixir-autogen, elixir-format msgid "Invitation not found" msgstr "Invitation not found" -#: lib/towerops_web/live/org/settings_live.ex:174 +#: lib/towerops_web/live/org/settings_live.ex:209 #, elixir-autogen, elixir-format msgid "Invitation sent to %{email}" msgstr "Invitation sent to %{email}" -#: lib/towerops_web/live/org/settings_live.html.heex:617 +#: lib/towerops_web/live/org/settings_live.html.heex:658 #, elixir-autogen, elixir-format msgid "Invitations that haven't been accepted yet." msgstr "Invitations that haven't been accepted yet." -#: lib/towerops_web/live/org/settings_live.html.heex:573 +#: lib/towerops_web/live/org/settings_live.html.heex:609 #, elixir-autogen, elixir-format msgid "Invite a Team Member" msgstr "Invite a Team Member" -#: lib/towerops_web/live/device_live/show.html.heex:2844 +#: lib/towerops_web/live/device_live/show.html.heex:2981 #, elixir-autogen, elixir-format msgid "Jitter (ms)" msgstr "Jitter (ms)" @@ -2093,18 +2095,18 @@ msgstr "Job Monitoring" msgid "Job Monitoring Dashboard" msgstr "Job Monitoring Dashboard" -#: lib/towerops_web/live/admin/user_live/index.html.heex:14 -#: lib/towerops_web/live/org/settings_live.html.heex:713 +#: lib/towerops_web/live/admin/user_live/index.html.heex:16 +#: lib/towerops_web/live/org/settings_live.html.heex:754 #, elixir-autogen, elixir-format msgid "Joined" msgstr "Joined" -#: lib/towerops_web/live/user_settings_live.html.heex:296 +#: lib/towerops_web/live/user_settings_live.html.heex:309 #, elixir-autogen, elixir-format msgid "Language" msgstr "Language" -#: lib/towerops_web/live/device_live/show.html.heex:2322 +#: lib/towerops_web/live/device_live/show.html.heex:2455 #, elixir-autogen, elixir-format msgid "Last Checked" msgstr "Last Checked" @@ -2112,14 +2114,14 @@ msgstr "Last Checked" #: lib/towerops_web/live/admin/agent_live/index.html.heex:53 #: lib/towerops_web/live/admin/agent_live/index.html.heex:127 #: lib/towerops_web/live/agent_live/index.html.heex:112 -#: lib/towerops_web/live/agent_live/index.html.heex:222 -#: lib/towerops_web/live/device_live/index.html.heex:251 -#: lib/towerops_web/live/device_live/index.html.heex:599 +#: lib/towerops_web/live/agent_live/index.html.heex:228 +#: lib/towerops_web/live/device_live/index.html.heex:290 +#: lib/towerops_web/live/device_live/index.html.heex:647 #, elixir-autogen, elixir-format msgid "Last Seen" msgstr "Last Seen" -#: lib/towerops_web/live/agent_live/show.html.heex:276 +#: lib/towerops_web/live/agent_live/show.html.heex:286 #, elixir-autogen, elixir-format msgid "Last Seen (Heartbeat)" msgstr "Last Seen (Heartbeat)" @@ -2129,65 +2131,67 @@ msgstr "Last Seen (Heartbeat)" msgid "Last Violation" msgstr "Last Violation" -#: lib/towerops_web/live/user_settings_live.html.heex:148 +#: lib/towerops_web/live/user_settings_live.html.heex:161 #, elixir-autogen, elixir-format msgid "Last name" msgstr "Last name" -#: lib/towerops_web/live/org/settings_live.html.heex:939 +#: lib/towerops_web/live/org/settings_live.html.heex:1015 #, elixir-autogen, elixir-format msgid "Last sync failed" msgstr "Last sync failed" -#: lib/towerops_web/live/org/integrations_live.html.heex:54 +#: lib/towerops_web/live/org/integrations_live.html.heex:75 +#: lib/towerops_web/live/org/integrations_live.html.heex:452 #, elixir-autogen, elixir-format msgid "Last synced:" msgstr "Last synced:" -#: lib/towerops_web/live/device_live/show.html.heex:2838 +#: lib/towerops_web/live/device_live/show.html.heex:2975 #, elixir-autogen, elixir-format msgid "Latency (ms)" msgstr "Latency (ms)" -#: lib/towerops_web/live/trace_live/index.html.heex:256 +#: lib/towerops_web/live/trace_live/index.html.heex:269 #, elixir-autogen, elixir-format msgid "Latest Metrics" msgstr "Latest Metrics" -#: lib/towerops_web/live/site_live/form.html.heex:110 +#: lib/towerops_web/live/onboarding_live.html.heex:162 +#: lib/towerops_web/live/site_live/form.html.heex:112 #, elixir-autogen, elixir-format msgid "Latitude" msgstr "Latitude" -#: lib/towerops_web/live/site_live/form.html.heex:267 -#: lib/towerops_web/live/site_live/form.html.heex:289 -#: lib/towerops_web/live/site_live/form.html.heex:399 -#: lib/towerops_web/live/site_live/form.html.heex:406 +#: lib/towerops_web/live/site_live/form.html.heex:279 +#: lib/towerops_web/live/site_live/form.html.heex:301 +#: lib/towerops_web/live/site_live/form.html.heex:415 +#: lib/towerops_web/live/site_live/form.html.heex:422 #, elixir-autogen, elixir-format msgid "Leave blank to inherit from organization" msgstr "Leave blank to inherit from organization" -#: lib/towerops_web/live/site_live/form.html.heex:348 +#: lib/towerops_web/live/site_live/form.html.heex:360 #, elixir-autogen, elixir-format msgid "Leave blank to inherit from organization (default: 161)" msgstr "Leave blank to inherit from organization (default: 161)" -#: lib/towerops_web/live/device_live/form.html.heex:385 -#: lib/towerops_web/live/device_live/form.html.heex:434 -#: lib/towerops_web/live/device_live/form.html.heex:662 -#: lib/towerops_web/live/device_live/form.html.heex:671 +#: lib/towerops_web/live/device_live/form.html.heex:392 +#: lib/towerops_web/live/device_live/form.html.heex:443 +#: lib/towerops_web/live/device_live/form.html.heex:677 +#: lib/towerops_web/live/device_live/form.html.heex:686 #, elixir-autogen, elixir-format msgid "Leave blank to inherit from site/organization" msgstr "Leave blank to inherit from site/organization" -#: lib/towerops_web/live/dashboard_live.html.heex:42 +#: lib/towerops_web/live/dashboard_live.html.heex:45 #, elixir-autogen, elixir-format msgid "Let's get started!" msgstr "Let's get started!" -#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:226 -#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:249 -#: lib/towerops_web/live/org/preseem_devices_live.html.heex:212 +#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:257 +#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:280 +#: lib/towerops_web/live/org/preseem_devices_live.html.heex:223 #, elixir-autogen, elixir-format msgid "Link" msgstr "Link" @@ -2197,82 +2201,75 @@ msgstr "Link" msgid "Link Gaiia entities to your Towerops sites and devices. Match suggestions are shown in amber." msgstr "Link Gaiia entities to your Towerops sites and devices. Match suggestions are shown in amber." -#: lib/towerops_web/live/org/preseem_devices_live.html.heex:147 +#: lib/towerops_web/live/org/preseem_devices_live.html.heex:149 #, elixir-autogen, elixir-format msgid "Linked Device" msgstr "Linked Device" -#: lib/towerops_web/live/device_live/show.html.heex:2531 +#: lib/towerops_web/live/device_live/show.html.heex:2668 #, elixir-autogen, elixir-format msgid "Linked Subscriber" msgstr "Linked Subscriber" -#: lib/towerops_web/live/activity_feed_live.html.heex:129 +#: lib/towerops_web/live/activity_feed_live.html.heex:131 #, elixir-autogen, elixir-format msgid "Live" msgstr "Live" #: lib/towerops_web/live/site_live/index.html.heex:60 -#: lib/towerops_web/live/user_settings_live.html.heex:872 +#: lib/towerops_web/live/user_settings_live.html.heex:916 #, elixir-autogen, elixir-format msgid "Location" msgstr "Location" -#: lib/towerops_web/controllers/user_session_controller.ex:119 +#: lib/towerops_web/controllers/user_session_controller.ex:136 #, elixir-autogen, elixir-format msgid "Logged out successfully." msgstr "Logged out successfully." -#: lib/towerops_web/live/user_settings_live.html.heex:827 +#: lib/towerops_web/live/user_settings_live.html.heex:871 #, elixir-autogen, elixir-format msgid "Login History" msgstr "Login History" -#: lib/towerops_web/live/user_settings_live.html.heex:206 +#: lib/towerops_web/live/user_settings_live.html.heex:219 #, elixir-autogen, elixir-format msgid "London" msgstr "London" -#: lib/towerops_web/live/site_live/form.html.heex:132 +#: lib/towerops_web/live/onboarding_live.html.heex:169 +#: lib/towerops_web/live/site_live/form.html.heex:134 #, elixir-autogen, elixir-format msgid "Longitude" msgstr "Longitude" -#: lib/towerops_web/live/device_live/show.html.heex:2847 +#: lib/towerops_web/live/device_live/show.html.heex:2984 #, elixir-autogen, elixir-format msgid "Loss (%)" msgstr "Loss (%)" -#: lib/towerops_web/live/device_live/index.html.heex:521 -#, elixir-autogen, elixir-format -msgid "MAC" -msgstr "MAC" - -#: lib/towerops_web/live/device_live/show.html.heex:2456 +#: lib/towerops_web/live/device_live/show.html.heex:2593 #, elixir-autogen, elixir-format msgid "MAC Address" msgstr "MAC Address" -#: lib/towerops_web/live/device_live/show.html.heex:1499 +#: lib/towerops_web/live/device_live/show.html.heex:1614 #, elixir-autogen, elixir-format msgid "MAC Address Table" msgstr "MAC Address Table" -#: lib/towerops_web/live/device_live/show.html.heex:168 +#: lib/towerops_web/live/device_live/show.html.heex:203 #, elixir-autogen, elixir-format msgid "MAC Table" msgstr "MAC Table" -#: lib/towerops_web/live/device_live/show.html.heex:2613 +#: lib/towerops_web/live/device_live/show.html.heex:2750 +#: lib/towerops_web/live/site_live/show.html.heex:187 +#: lib/towerops_web/live/site_live/show.html.heex:386 #, elixir-autogen, elixir-format msgid "MRR" msgstr "MRR" -#: lib/towerops_web/live/dashboard_live.html.heex:241 -#, elixir-autogen, elixir-format -msgid "MRR at Risk" -msgstr "MRR at Risk" - #: lib/towerops_web/controllers/user_session_controller.ex:112 #, elixir-autogen, elixir-format msgid "Magic link is invalid or it has expired." @@ -2288,12 +2285,12 @@ msgstr "Manage IP allowlist and view denied IPs" msgid "Manage Sites" msgstr "Manage Sites" -#: lib/towerops_web/live/user_settings_live.html.heex:1035 +#: lib/towerops_web/live/user_settings_live.html.heex:1079 #, elixir-autogen, elixir-format msgid "Manage TOTP devices for two-factor authentication. You must have at least one device configured." msgstr "Manage TOTP devices for two-factor authentication. You must have at least one device configured." -#: lib/towerops_web/live/user_settings_live.html.heex:740 +#: lib/towerops_web/live/user_settings_live.html.heex:773 #, elixir-autogen, elixir-format msgid "Manage browser sessions where you're currently logged in." msgstr "Manage browser sessions where you're currently logged in." @@ -2303,7 +2300,7 @@ msgstr "Manage browser sessions where you're currently logged in." msgid "Manage device matching between Preseem access points and your monitored devices." msgstr "Manage device matching between Preseem access points and your monitored devices." -#: lib/towerops_web/live/user_settings_live.html.heex:615 +#: lib/towerops_web/live/user_settings_live.html.heex:647 #, elixir-autogen, elixir-format msgid "Manage mobile devices that receive push notifications for alerts." msgstr "Manage mobile devices that receive push notifications for alerts." @@ -2328,18 +2325,18 @@ msgstr "Manage your account email address, password, and security settings" msgid "Manage your site locations and hierarchy" msgstr "Manage your site locations and hierarchy" -#: lib/towerops_web/live/device_live/show.html.heex:1192 +#: lib/towerops_web/live/device_live/show.html.heex:1259 #, elixir-autogen, elixir-format msgid "Managed" msgstr "Managed" -#: lib/towerops_web/live/device_live/index.html.heex:572 -#: lib/towerops_web/live/device_live/show.html.heex:2426 +#: lib/towerops_web/live/device_live/index.html.heex:624 +#: lib/towerops_web/live/device_live/show.html.heex:2563 #, elixir-autogen, elixir-format msgid "Manufacturer" msgstr "Manufacturer" -#: lib/towerops_web/live/site_live/form.html.heex:156 +#: lib/towerops_web/live/site_live/form.html.heex:158 #, elixir-autogen, elixir-format msgid "Map Preview" msgstr "Map Preview" @@ -2349,7 +2346,7 @@ msgstr "Map Preview" msgid "Map to Gaiia inventory" msgstr "Map to Gaiia inventory" -#: lib/towerops_web/live/device_live/show.html.heex:2812 +#: lib/towerops_web/live/device_live/show.html.heex:2949 #, elixir-autogen, elixir-format msgid "Match Type" msgstr "Match Type" @@ -2359,84 +2356,78 @@ msgstr "Match Type" msgid "Matched" msgstr "Matched" -#: lib/towerops_web/live/org/settings_live.html.heex:771 -#, elixir-autogen, elixir-format -msgid "Member" -msgstr "Member" - -#: lib/towerops_web/live/org/settings_live.ex:208 +#: lib/towerops_web/live/org/settings_live.ex:244 #, elixir-autogen, elixir-format msgid "Member removed" msgstr "Member removed" #: lib/towerops_web/live/admin/org_live/index.html.heex:12 -#: lib/towerops_web/live/org/settings_live.html.heex:75 -#: lib/towerops_web/live/org/settings_live.html.heex:694 +#: lib/towerops_web/live/org/settings_live.html.heex:79 +#: lib/towerops_web/live/org/settings_live.html.heex:735 #, elixir-autogen, elixir-format msgid "Members" msgstr "Members" -#: lib/towerops_web/live/device_live/show.html.heex:717 +#: lib/towerops_web/live/device_live/show.html.heex:778 #, elixir-autogen, elixir-format msgid "Memory Usage" msgstr "Memory Usage" -#: lib/towerops_web/components/layouts.ex:296 -#: lib/towerops_web/components/layouts.ex:301 +#: lib/towerops_web/components/layouts.ex:437 #, elixir-autogen, elixir-format msgid "Menu" msgstr "Menu" -#: lib/towerops_web/live/org/settings_live.html.heex:1220 +#: lib/towerops_web/live/org/settings_live.html.heex:1306 #, elixir-autogen, elixir-format msgid "Merge data from both systems. Conflicts resolved by most-recently-updated. Requires write token." msgstr "Merge data from both systems. Conflicts resolved by most-recently-updated. Requires write token." -#: lib/towerops_web/live/dashboard_live.html.heex:383 +#: lib/towerops_web/live/alert_live/index.html.heex:220 #, elixir-autogen, elixir-format msgid "Message" msgstr "Message" -#: lib/towerops_web/live/user_settings_live.html.heex:866 +#: lib/towerops_web/live/user_settings_live.html.heex:910 #, elixir-autogen, elixir-format msgid "Method" msgstr "Method" -#: lib/towerops_web/live/org/settings_live.html.heex:54 +#: lib/towerops_web/live/org/settings_live.html.heex:57 #, elixir-autogen, elixir-format msgid "MikroTik" msgstr "MikroTik" -#: lib/towerops_web/live/device_live/form.html.heex:623 -#: lib/towerops_web/live/org/settings_live.html.heex:355 -#: lib/towerops_web/live/site_live/form.html.heex:374 +#: lib/towerops_web/live/device_live/form.html.heex:636 +#: lib/towerops_web/live/org/settings_live.html.heex:377 +#: lib/towerops_web/live/site_live/form.html.heex:388 #, elixir-autogen, elixir-format msgid "MikroTik API Configuration" msgstr "MikroTik API Configuration" -#: lib/towerops_web/live/device_live/form.html.heex:632 -#: lib/towerops_web/live/org/settings_live.html.heex:364 -#: lib/towerops_web/live/site_live/form.html.heex:384 +#: lib/towerops_web/live/device_live/form.html.heex:647 +#: lib/towerops_web/live/org/settings_live.html.heex:388 +#: lib/towerops_web/live/site_live/form.html.heex:400 #, elixir-autogen, elixir-format msgid "MikroTik API integration is under active development." msgstr "MikroTik API integration is under active development." -#: lib/towerops_web/live/device_live/show.html.heex:2000 +#: lib/towerops_web/live/device_live/show.html.heex:2127 #, elixir-autogen, elixir-format msgid "MikroTik API not enabled" msgstr "MikroTik API not enabled" -#: lib/towerops_web/live/device_live/form.html.heex:493 -#: lib/towerops_web/live/device_live/form.html.heex:521 -#: lib/towerops_web/live/org/settings_live.html.heex:289 -#: lib/towerops_web/live/org/settings_live.html.heex:314 -#: lib/towerops_web/live/site_live/form.html.heex:313 -#: lib/towerops_web/live/site_live/form.html.heex:338 +#: lib/towerops_web/live/device_live/form.html.heex:502 +#: lib/towerops_web/live/device_live/form.html.heex:530 +#: lib/towerops_web/live/org/settings_live.html.heex:305 +#: lib/towerops_web/live/org/settings_live.html.heex:330 +#: lib/towerops_web/live/site_live/form.html.heex:325 +#: lib/towerops_web/live/site_live/form.html.heex:350 #, elixir-autogen, elixir-format msgid "Min 8 characters" msgstr "Min 8 characters" -#: lib/towerops_web/live/device_live/show.html.heex:2473 +#: lib/towerops_web/live/device_live/show.html.heex:2610 #, elixir-autogen, elixir-format msgid "Mismatch" msgstr "Mismatch" @@ -2446,71 +2437,68 @@ msgstr "Mismatch" msgid "Missing required parameters" msgstr "Missing required parameters" -#: lib/towerops_web/live/user_settings_live.html.heex:612 +#: lib/towerops_web/live/user_settings_live.html.heex:644 #, elixir-autogen, elixir-format msgid "Mobile Devices" msgstr "Mobile Devices" -#: lib/towerops_web/live/mobile_qr_live.ex:65 +#: lib/towerops_web/live/mobile_qr_live.ex:71 #, elixir-autogen, elixir-format msgid "Mobile device authenticated successfully!" msgstr "Mobile device authenticated successfully!" -#: lib/towerops_web/live/dashboard_live.html.heex:91 +#: lib/towerops_web/live/dashboard_live.html.heex:94 #, elixir-autogen, elixir-format msgid "Monitor & Receive Alerts" msgstr "Monitor & Receive Alerts" -#: lib/towerops_web/live/device_live/index.html.heex:10 -#, elixir-autogen, elixir-format -msgid "Monitor and manage all your network devices" -msgstr "Monitor and manage all your network devices" - -#: lib/towerops_web/live/admin/dashboard_live.html.heex:36 +#: lib/towerops_web/live/admin/dashboard_live.html.heex:38 #, elixir-autogen, elixir-format msgid "Monitor background jobs and queues" msgstr "Monitor background jobs and queues" -#: lib/towerops_web/live/device_live/form.html.heex:352 +#: lib/towerops_web/live/device_live/form.html.heex:358 #, elixir-autogen, elixir-format msgid "Monitor device availability with ICMP pings and collect detailed information via SNMP" msgstr "Monitor device availability with ICMP pings and collect detailed information via SNMP" -#: lib/towerops_web/live/device_live/form.html.heex:216 +#: lib/towerops_web/live/device_live/form.html.heex:218 #, elixir-autogen, elixir-format msgid "Monitoring Configuration" msgstr "Monitoring Configuration" -#: lib/towerops_web/live/device_live/form.html.heex:318 +#: lib/towerops_web/live/device_live/form.html.heex:324 #, elixir-autogen, elixir-format msgid "Monitoring mode" msgstr "Monitoring mode" -#: lib/towerops_web/live/device_live/show.html.heex:2514 +#: lib/towerops_web/live/device_live/show.html.heex:2651 +#: lib/towerops_web/live/site_live/show.html.heex:87 #, elixir-autogen, elixir-format msgid "Monthly Revenue" msgstr "Monthly Revenue" -#: lib/towerops_web/live/user_settings_live.html.heex:194 +#: lib/towerops_web/live/user_settings_live.html.heex:207 #, elixir-autogen, elixir-format msgid "Mountain Time (US & Canada)" msgstr "Mountain Time (US & Canada)" +#: lib/towerops_web/components/layouts.ex:476 #: lib/towerops_web/live/account_live/my_data.ex:58 -#: lib/towerops_web/live/user_settings_live.html.heex:97 +#: lib/towerops_web/live/user_settings_live.html.heex:111 #, elixir-autogen, elixir-format msgid "My Data" msgstr "My Data" #: lib/towerops_web/live/admin/monitoring_live.html.heex:36 #: lib/towerops_web/live/admin/monitoring_live.html.heex:253 -#: lib/towerops_web/live/device_live/show.html.heex:764 -#: lib/towerops_web/live/device_live/show.html.heex:876 -#: lib/towerops_web/live/device_live/show.html.heex:913 -#: lib/towerops_web/live/device_live/show.html.heex:953 -#: lib/towerops_web/live/device_live/show.html.heex:992 -#: lib/towerops_web/live/device_live/show.html.heex:1025 -#: lib/towerops_web/live/device_live/show.html.heex:1067 +#: lib/towerops_web/live/device_live/show.html.heex:825 +#: lib/towerops_web/live/device_live/show.html.heex:937 +#: lib/towerops_web/live/device_live/show.html.heex:976 +#: lib/towerops_web/live/device_live/show.html.heex:1016 +#: lib/towerops_web/live/device_live/show.html.heex:1057 +#: lib/towerops_web/live/device_live/show.html.heex:1090 +#: lib/towerops_web/live/device_live/show.html.heex:1134 #, elixir-autogen, elixir-format msgid "N/A" msgstr "N/A" @@ -2519,36 +2507,38 @@ msgstr "N/A" #: lib/towerops_web/live/admin/agent_live/index.html.heex:90 #: lib/towerops_web/live/admin/org_live/index.html.heex:10 #: lib/towerops_web/live/agent_live/index.html.heex:75 -#: lib/towerops_web/live/agent_live/index.html.heex:185 -#: lib/towerops_web/live/device_live/index.html.heex:233 -#: lib/towerops_web/live/device_live/show.html.heex:2304 -#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:136 -#: lib/towerops_web/live/org/preseem_devices_live.html.heex:123 +#: lib/towerops_web/live/agent_live/index.html.heex:191 +#: lib/towerops_web/live/device_live/show.html.heex:2437 +#: lib/towerops_web/live/maintenance_live/form.html.heex:30 +#: lib/towerops_web/live/maintenance_live/index.html.heex:86 +#: lib/towerops_web/live/onboarding_live.html.heex:148 +#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:140 +#: lib/towerops_web/live/org/preseem_devices_live.html.heex:125 #, elixir-autogen, elixir-format msgid "Name" msgstr "Name" -#: lib/towerops_web/live/org/settings_live.html.heex:1257 +#: lib/towerops_web/live/org/settings_live.html.heex:1347 #, elixir-autogen, elixir-format msgid "Name, IP, role, platform, status, serial number" msgstr "Name, IP, role, platform, status, serial number" -#: lib/towerops_web/live/org/settings_live.html.heex:1342 +#: lib/towerops_web/live/org/settings_live.html.heex:1432 #, elixir-autogen, elixir-format msgid "Narrow the sync scope. Leave blank to sync everything. Comma-separated for multiple values." msgstr "Narrow the sync scope. Leave blank to sync everything. Comma-separated for multiple values." -#: lib/towerops_web/live/device_live/show.html.heex:137 +#: lib/towerops_web/live/device_live/show.html.heex:172 #, elixir-autogen, elixir-format msgid "Neighbors" msgstr "Neighbors" -#: lib/towerops_web/live/org/settings_live.html.heex:1106 +#: lib/towerops_web/live/org/settings_live.html.heex:1186 #, elixir-autogen, elixir-format msgid "NetBox URL" msgstr "NetBox URL" -#: lib/towerops_web/live/org/settings_live.html.heex:1170 +#: lib/towerops_web/live/org/settings_live.html.heex:1252 #, elixir-autogen, elixir-format msgid "NetBox is the source of truth. Import devices, sites, and IPs from NetBox into TowerOps." msgstr "NetBox is the source of truth. Import devices, sites, and IPs from NetBox into TowerOps." @@ -2559,13 +2549,15 @@ msgstr "NetBox is the source of truth. Import devices, sites, and IPs from NetBo msgid "Network Insights" msgstr "Network Insights" +#: lib/towerops_web/components/layouts.ex:340 +#: lib/towerops_web/components/layouts.ex:579 #: lib/towerops_web/live/network_map_live.ex:32 #: lib/towerops_web/live/network_map_live.html.heex:8 #, elixir-autogen, elixir-format msgid "Network Map" msgstr "Network Map" -#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:57 +#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:59 #, elixir-autogen, elixir-format msgid "Network Sites" msgstr "Network Sites" @@ -2575,17 +2567,19 @@ msgstr "Network Sites" msgid "Network map refreshed" msgstr "Network map refreshed" -#: lib/towerops_web/live/org/settings_live.html.heex:988 +#: lib/towerops_web/live/org/settings_live.html.heex:1064 #, elixir-autogen, elixir-format, fuzzy msgid "Never synced" msgstr "Never" -#: lib/towerops_web/live/user_settings_live.html.heex:574 +#: lib/towerops_web/live/user_settings_live.html.heex:602 #, elixir-autogen, elixir-format, fuzzy msgid "Never used" msgstr "Never" #: lib/towerops_web/live/device_live/form.ex:92 +#: lib/towerops_web/live/device_live/index.html.heex:111 +#: lib/towerops_web/live/device_live/index.html.heex:156 #, elixir-autogen, elixir-format msgid "New Device" msgstr "New Device" @@ -2600,38 +2594,38 @@ msgstr "New Organization" msgid "New Site" msgstr "New Site" -#: lib/towerops_web/live/user_settings_live.html.heex:451 +#: lib/towerops_web/live/user_settings_live.html.heex:475 #, elixir-autogen, elixir-format msgid "New password" msgstr "New password" -#: lib/towerops_web/live/device_live/index.html.heex:632 -#: lib/towerops_web/live/user_settings_live.html.heex:941 +#: lib/towerops_web/live/device_live/index.html.heex:679 +#: lib/towerops_web/live/user_settings_live.html.heex:985 #, elixir-autogen, elixir-format msgid "Next" msgstr "Next" -#: lib/towerops_web/live/user_settings_live.html.heex:537 +#: lib/towerops_web/live/user_settings_live.html.heex:565 #, elixir-autogen, elixir-format msgid "No API tokens" msgstr "No API tokens" -#: lib/towerops_web/live/device_live/show.html.heex:1486 +#: lib/towerops_web/live/device_live/show.html.heex:1601 #, elixir-autogen, elixir-format msgid "No ARP entries discovered" msgstr "No ARP entries discovered" -#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:123 +#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:125 #, elixir-autogen, elixir-format msgid "No Gaiia data has been synced yet. Enable the Gaiia integration and run a sync." msgstr "No Gaiia data has been synced yet. Enable the Gaiia integration and run a sync." -#: lib/towerops_web/live/device_live/show.html.heex:2661 +#: lib/towerops_web/live/device_live/show.html.heex:2798 #, elixir-autogen, elixir-format msgid "No Gaiia inventory item linked to this device." msgstr "No Gaiia inventory item linked to this device." -#: lib/towerops_web/live/device_live/show.html.heex:1757 +#: lib/towerops_web/live/device_live/show.html.heex:1878 #, elixir-autogen, elixir-format msgid "No IP addresses discovered" msgstr "No IP addresses discovered" @@ -2641,7 +2635,7 @@ msgstr "No IP addresses discovered" msgid "No Insights Yet" msgstr "No Insights Yet" -#: lib/towerops_web/live/device_live/show.html.heex:1572 +#: lib/towerops_web/live/device_live/show.html.heex:1687 #, elixir-autogen, elixir-format msgid "No MAC addresses discovered" msgstr "No MAC addresses discovered" @@ -2651,17 +2645,17 @@ msgstr "No MAC addresses discovered" msgid "No Preseem access points have been synced yet. Enable the integration and run a sync." msgstr "No Preseem access points have been synced yet. Enable the integration and run a sync." -#: lib/towerops_web/live/trace_live/index.html.heex:297 +#: lib/towerops_web/live/trace_live/index.html.heex:310 #, elixir-autogen, elixir-format msgid "No Preseem data available" msgstr "No Preseem data available" -#: lib/towerops_web/live/device_live/show.html.heex:2904 +#: lib/towerops_web/live/device_live/show.html.heex:3041 #, elixir-autogen, elixir-format msgid "No Preseem data linked to this device." msgstr "No Preseem data linked to this device." -#: lib/towerops_web/live/user_settings_live.html.heex:1177 +#: lib/towerops_web/live/user_settings_live.html.heex:1225 #, elixir-autogen, elixir-format msgid "No Recovery Codes" msgstr "No Recovery Codes" @@ -2671,7 +2665,7 @@ msgstr "No Recovery Codes" msgid "No Sites Yet" msgstr "No Sites Yet" -#: lib/towerops_web/live/device_live/show.html.heex:1641 +#: lib/towerops_web/live/device_live/show.html.heex:1758 #, elixir-autogen, elixir-format msgid "No VLANs discovered" msgstr "No VLANs discovered" @@ -2681,8 +2675,8 @@ msgstr "No VLANs discovered" msgid "No access points found" msgstr "No access points found" -#: lib/towerops_web/live/alert_live/index.html.heex:78 -#: lib/towerops_web/live/alert_live/index.html.heex:84 +#: lib/towerops_web/live/alert_live/index.html.heex:174 +#: lib/towerops_web/live/alert_live/index.html.heex:180 #, elixir-autogen, elixir-format msgid "No active alerts. Your network is looking good!" msgstr "No active alerts. Your network is looking good!" @@ -2692,7 +2686,7 @@ msgstr "No active alerts. Your network is looking good!" msgid "No active insights. Your network is looking healthy!" msgstr "No active insights. Your network is looking healthy!" -#: lib/towerops_web/live/user_settings_live.html.heex:749 +#: lib/towerops_web/live/user_settings_live.html.heex:782 #, elixir-autogen, elixir-format msgid "No active sessions" msgstr "No active sessions" @@ -2702,7 +2696,7 @@ msgstr "No active sessions" msgid "No activity yet" msgstr "No activity yet" -#: lib/towerops_web/live/device_live/form.html.heex:288 +#: lib/towerops_web/live/device_live/form.html.heex:290 #, elixir-autogen, elixir-format msgid "No agent assigned - cloud polling" msgstr "No agent assigned - cloud polling" @@ -2712,7 +2706,7 @@ msgstr "No agent assigned - cloud polling" msgid "No agents" msgstr "No agents" -#: lib/towerops_web/live/org/settings_live.html.heex:528 +#: lib/towerops_web/live/org/settings_live.html.heex:564 #, elixir-autogen, elixir-format msgid "No agents configured yet." msgstr "No agents configured yet." @@ -2722,12 +2716,12 @@ msgstr "No agents configured yet." msgid "No allowed IPs or CIDR ranges" msgstr "No allowed IPs or CIDR ranges" -#: lib/towerops_web/live/user_settings_live.html.heex:1044 +#: lib/towerops_web/live/user_settings_live.html.heex:1090 #, elixir-autogen, elixir-format msgid "No authenticator apps" msgstr "No authenticator apps" -#: lib/towerops_web/live/device_live/show.html.heex:1978 +#: lib/towerops_web/live/device_live/show.html.heex:2105 #, elixir-autogen, elixir-format msgid "No backups yet" msgstr "No backups yet" @@ -2737,17 +2731,17 @@ msgstr "No backups yet" msgid "No binary available for architecture: %{arch}" msgstr "No binary available for architecture: %{arch}" -#: lib/towerops_web/live/device_live/show.html.heex:2258 +#: lib/towerops_web/live/device_live/show.html.heex:2389 #, elixir-autogen, elixir-format msgid "No checks configured" msgstr "No checks configured" -#: lib/towerops_web/live/alert_live/index.html.heex:80 +#: lib/towerops_web/live/alert_live/index.html.heex:176 #, elixir-autogen, elixir-format msgid "No critical alerts. Nice work keeping things healthy!" msgstr "No critical alerts. Nice work keeping things healthy!" -#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:172 +#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:174 #, elixir-autogen, elixir-format msgid "No data mismatches found between mapped devices." msgstr "No data mismatches found between mapped devices." @@ -2757,17 +2751,17 @@ msgstr "No data mismatches found between mapped devices." msgid "No denied IPs" msgstr "No denied IPs" -#: lib/towerops_web/live/device_live/index.html.heex:175 +#: lib/towerops_web/live/device_live/index.html.heex:149 #, elixir-autogen, elixir-format msgid "No devices" msgstr "No devices" -#: lib/towerops_web/live/agent_live/show.html.heex:309 +#: lib/towerops_web/live/agent_live/show.html.heex:319 #, elixir-autogen, elixir-format msgid "No devices assigned" msgstr "No devices assigned" -#: lib/towerops_web/live/device_live/index.html.heex:498 +#: lib/towerops_web/live/device_live/index.html.heex:556 #, elixir-autogen, elixir-format msgid "No discovered devices" msgstr "No discovered devices" @@ -2778,7 +2772,7 @@ msgstr "No discovered devices" msgid "No dismissed insights." msgstr "No dismissed insights." -#: lib/towerops_web/live/device_live/show.html.heex:2069 +#: lib/towerops_web/live/device_live/show.html.heex:2196 #, elixir-autogen, elixir-format msgid "No events yet" msgstr "No events yet" @@ -2788,7 +2782,7 @@ msgstr "No events yet" msgid "No geocoded sites" msgstr "No geocoded sites" -#: lib/towerops_web/live/agent_live/index.html.heex:332 +#: lib/towerops_web/live/agent_live/index.html.heex:344 #, elixir-autogen, elixir-format msgid "No global default configured. Devices without assignments will use direct Phoenix cluster polling." msgstr "No global default configured. Devices without assignments will use direct Phoenix cluster polling." @@ -2798,22 +2792,22 @@ msgstr "No global default configured. Devices without assignments will use direc msgid "No insights found" msgstr "No insights found" -#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:284 +#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:286 #, elixir-autogen, elixir-format msgid "No inventory data" msgstr "No inventory data" -#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:113 +#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:115 #, elixir-autogen, elixir-format msgid "No inventory items found" msgstr "No inventory items found" -#: lib/towerops_web/live/user_settings_live.html.heex:839 +#: lib/towerops_web/live/user_settings_live.html.heex:883 #, elixir-autogen, elixir-format msgid "No login history" msgstr "No login history" -#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:119 +#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:121 #, elixir-autogen, elixir-format msgid "No mapped entities yet. Sync from Gaiia and link entities below." msgstr "No mapped entities yet. Sync from Gaiia and link entities below." @@ -2823,17 +2817,17 @@ msgstr "No mapped entities yet. Sync from Gaiia and link entities below." msgid "No matched access points yet. Sync from Preseem and link devices." msgstr "No matched access points yet. Sync from Preseem and link devices." -#: lib/towerops_web/live/user_settings_live.html.heex:624 +#: lib/towerops_web/live/user_settings_live.html.heex:656 #, elixir-autogen, elixir-format msgid "No mobile devices" msgstr "No mobile devices" -#: lib/towerops_web/live/device_live/show.html.heex:1406 +#: lib/towerops_web/live/device_live/show.html.heex:1519 #, elixir-autogen, elixir-format msgid "No neighbors discovered" msgstr "No neighbors discovered" -#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:111 +#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:113 #, elixir-autogen, elixir-format msgid "No network sites found" msgstr "No network sites found" @@ -2843,27 +2837,27 @@ msgstr "No network sites found" msgid "No network topology available" msgstr "No network topology available" -#: lib/towerops_web/live/org_live/index.html.heex:33 +#: lib/towerops_web/live/org_live/index.html.heex:39 #, elixir-autogen, elixir-format msgid "No organizations" msgstr "No organizations" -#: lib/towerops_web/live/trace_live/index.html.heex:369 +#: lib/towerops_web/live/trace_live/index.html.heex:384 #, elixir-autogen, elixir-format msgid "No peer data available" msgstr "No peer data available" -#: lib/towerops_web/live/device_live/show.html.heex:2245 +#: lib/towerops_web/live/device_live/show.html.heex:2374 #, elixir-autogen, elixir-format msgid "No raw discovery data available. Run discovery again to collect debug data." msgstr "No raw discovery data available. Run discovery again to collect debug data." -#: lib/towerops_web/live/user_settings_live.html.heex:1144 +#: lib/towerops_web/live/user_settings_live.html.heex:1190 #, elixir-autogen, elixir-format msgid "No recovery codes available" msgstr "No recovery codes available" -#: lib/towerops_web/live/alert_live/index.html.heex:82 +#: lib/towerops_web/live/alert_live/index.html.heex:178 #, elixir-autogen, elixir-format msgid "No resolved alerts yet." msgstr "No resolved alerts yet." @@ -2873,19 +2867,19 @@ msgstr "No resolved alerts yet." msgid "No sensor data available" msgstr "No sensor data available" -#: lib/towerops_web/live/trace_live/index.html.heex:146 +#: lib/towerops_web/live/trace_live/index.html.heex:156 #, elixir-autogen, elixir-format msgid "No subscriber info available" msgstr "No subscriber info available" -#: lib/towerops_web/live/user_settings_live.html.heex:77 +#: lib/towerops_web/live/user_settings_live.html.heex:88 #, elixir-autogen, elixir-format msgid "Notifications" msgstr "Notifications" -#: lib/towerops_web/live/device_live/show.html.heex:2109 -#: lib/towerops_web/live/device_live/show.html.heex:2143 -#: lib/towerops_web/live/device_live/show.html.heex:2181 +#: lib/towerops_web/live/device_live/show.html.heex:2238 +#: lib/towerops_web/live/device_live/show.html.heex:2272 +#: lib/towerops_web/live/device_live/show.html.heex:2310 #, elixir-autogen, elixir-format msgid "OID" msgstr "OID" @@ -2900,28 +2894,22 @@ msgstr "Offense Count" msgid "Office network" msgstr "Office network" -#: lib/towerops_web/live/alert_live/index.html.heex:54 -#, elixir-autogen, elixir-format -msgid "Oldest First" -msgstr "Oldest First" - -#: lib/towerops_web/live/org/integrations_live.html.heex:345 -#: lib/towerops_web/live/org/settings_live.html.heex:1717 +#: lib/towerops_web/live/org/settings_live.html.heex:2057 #, elixir-autogen, elixir-format msgid "Once configured, Towerops will receive real-time updates when accounts, subscriptions, or inventory items change in Gaiia." msgstr "Once configured, Towerops will receive real-time updates when accounts, subscriptions, or inventory items change in Gaiia." -#: lib/towerops_web/live/site_live/form.html.heex:453 +#: lib/towerops_web/live/site_live/form.html.heex:475 #, elixir-autogen, elixir-format msgid "Once you delete a site, there is no going back. This will also delete all devices at this site." msgstr "Once you delete a site, there is no going back. This will also delete all devices at this site." -#: lib/towerops_web/live/device_live/form.html.heex:738 +#: lib/towerops_web/live/device_live/form.html.heex:759 #, elixir-autogen, elixir-format msgid "Once you delete this device, there is no going back. All monitoring history and alerts will be permanently deleted." msgstr "Once you delete this device, there is no going back. All monitoring history and alerts will be permanently deleted." -#: lib/towerops_web/live/agent_live/edit.html.heex:69 +#: lib/towerops_web/live/agent_live/edit.html.heex:70 #, elixir-autogen, elixir-format msgid "Only organization members can toggle this setting." msgstr "Only organization members can toggle this setting." @@ -2931,23 +2919,25 @@ msgstr "Only organization members can toggle this setting." msgid "Oops, a squirrel must have eaten that wire!" msgstr "Oops, a squirrel must have eaten that wire!" -#: lib/towerops_web/live/org/settings_live.html.heex:1546 +#: lib/towerops_web/live/org/settings_live.html.heex:1879 #, elixir-autogen, elixir-format msgid "Optional — paste from PagerDuty webhook extension" msgstr "Optional — paste from PagerDuty webhook extension" -#: lib/towerops_web/live/device_live/form.html.heex:177 +#: lib/towerops_web/live/device_live/form.html.heex:179 #, elixir-autogen, elixir-format msgid "Optionally group this device into a site (office, datacenter, etc.)" msgstr "Optionally group this device into a site (office, datacenter, etc.)" -#: lib/towerops_web/live/org/settings_live.html.heex:109 -#: lib/towerops_web/live/org/settings_live.html.heex:120 -#: lib/towerops_web/live/org_live/new.html.heex:31 +#: lib/towerops_web/live/org/settings_live.html.heex:113 +#: lib/towerops_web/live/org/settings_live.html.heex:124 +#: lib/towerops_web/live/org_live/new.html.heex:32 #, elixir-autogen, elixir-format msgid "Organization Name" msgstr "Organization Name" +#: lib/towerops_web/components/layouts.ex:247 +#: lib/towerops_web/components/layouts.ex:602 #: lib/towerops_web/live/org/settings_live.html.heex:15 #, elixir-autogen, elixir-format msgid "Organization Settings" @@ -2958,63 +2948,63 @@ msgstr "Organization Settings" msgid "Organization created successfully" msgstr "Organization created successfully" -#: lib/towerops_web/live/admin/dashboard_live.html.heex:21 -#: lib/towerops_web/live/admin/user_live/index.html.heex:12 +#: lib/towerops_web/live/admin/dashboard_live.html.heex:22 +#: lib/towerops_web/live/admin/user_live/index.html.heex:14 #, elixir-autogen, elixir-format msgid "Organizations" msgstr "Organizations" -#: lib/towerops_web/live/device_live/index.html.heex:155 +#: lib/towerops_web/live/device_live/index.html.heex:134 #, elixir-autogen, elixir-format msgid "Organize your devices with sites" msgstr "Organize your devices with sites" -#: lib/towerops_web/live/trace_live/index.html.heex:321 +#: lib/towerops_web/live/trace_live/index.html.heex:334 #, elixir-autogen, elixir-format msgid "Other APs on device" msgstr "Other APs on device" -#: lib/towerops_web/live/device_live/show.html.heex:545 +#: lib/towerops_web/live/device_live/show.html.heex:588 #, elixir-autogen, elixir-format msgid "Overall Traffic" msgstr "Overall Traffic" -#: lib/towerops_web/live/site_live/form.html.heex:378 +#: lib/towerops_web/live/site_live/form.html.heex:392 #, elixir-autogen, elixir-format msgid "Override organization MikroTik API defaults for all devices at this site. Leave blank to inherit from organization. Only applies to MikroTik devices." msgstr "Override organization MikroTik API defaults for all devices at this site. Leave blank to inherit from organization. Only applies to MikroTik devices." -#: lib/towerops_web/live/site_live/form.html.heex:250 +#: lib/towerops_web/live/site_live/form.html.heex:260 #, elixir-autogen, elixir-format msgid "Override organization SNMP defaults for all devices at this site. Leave blank to inherit from organization." msgstr "Override organization SNMP defaults for all devices at this site. Leave blank to inherit from organization." -#: lib/towerops_web/live/device_live/form.html.heex:266 -#: lib/towerops_web/live/device_live/form.html.heex:394 -#: lib/towerops_web/live/site_live/form.html.heex:209 +#: lib/towerops_web/live/device_live/form.html.heex:268 +#: lib/towerops_web/live/device_live/form.html.heex:401 +#: lib/towerops_web/live/site_live/form.html.heex:213 #, elixir-autogen, elixir-format msgid "Overriding" msgstr "Overriding" -#: lib/towerops_web/live/agent_live/show.html.heex:60 -#: lib/towerops_web/live/device_live/show.html.heex:107 -#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:298 +#: lib/towerops_web/live/agent_live/show.html.heex:68 +#: lib/towerops_web/live/device_live/show.html.heex:142 +#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:300 #, elixir-autogen, elixir-format msgid "Overview" msgstr "Overview" -#: lib/towerops_web/live/device_live/show.html.heex:2841 +#: lib/towerops_web/live/device_live/show.html.heex:2978 #, elixir-autogen, elixir-format msgid "P95 Latency" msgstr "P95 Latency" -#: lib/towerops_web/live/user_settings_live.html.heex:200 +#: lib/towerops_web/live/user_settings_live.html.heex:213 #, elixir-autogen, elixir-format msgid "Pacific Time (US & Canada)" msgstr "Pacific Time (US & Canada)" -#: lib/towerops_web/live/device_live/index.html.heex:653 -#: lib/towerops_web/live/user_settings_live.html.heex:968 +#: lib/towerops_web/live/device_live/index.html.heex:689 +#: lib/towerops_web/live/user_settings_live.html.heex:1012 #, elixir-autogen, elixir-format msgid "Pagination" msgstr "Pagination" @@ -3024,28 +3014,23 @@ msgstr "Pagination" msgid "Parent Site" msgstr "Parent Site" -#: lib/towerops_web/live/user_settings_live.html.heex:212 +#: lib/towerops_web/live/user_settings_live.html.heex:225 #, elixir-autogen, elixir-format msgid "Paris" msgstr "Paris" -#: lib/towerops_web/live/device_live/form.html.heex:670 -#: lib/towerops_web/live/org/settings_live.html.heex:394 -#: lib/towerops_web/live/site_live/form.html.heex:405 +#: lib/towerops_web/live/device_live/form.html.heex:685 +#: lib/towerops_web/live/org/settings_live.html.heex:418 +#: lib/towerops_web/live/site_live/form.html.heex:421 #, elixir-autogen, elixir-format msgid "Password" msgstr "Password" -#: lib/towerops_web/live/user_settings_live.html.heex:473 +#: lib/towerops_web/live/user_settings_live.html.heex:497 #, elixir-autogen, elixir-format msgid "Password found in data breaches" msgstr "Password found in data breaches" -#: lib/towerops_web/live/help_live/index.ex:78 -#, elixir-autogen, elixir-format -msgid "Password generated successfully from random.org" -msgstr "Password generated successfully from random.org" - #: lib/towerops_web/controllers/user_reset_password_controller.ex:56 #: lib/towerops_web/live/user_reset_password_live.ex:59 #, elixir-autogen, elixir-format @@ -3057,27 +3042,27 @@ msgstr "Password reset successfully." msgid "Password updated successfully. Please log in with your new password." msgstr "Password updated successfully. Please log in with your new password." -#: lib/towerops_web/live/org/settings_live.html.heex:1696 +#: lib/towerops_web/live/org/settings_live.html.heex:2035 #, elixir-autogen, elixir-format msgid "Paste the secret from Gaiia" msgstr "Paste the secret from Gaiia" -#: lib/towerops_web/live/org/settings_live.html.heex:1688 +#: lib/towerops_web/live/org/settings_live.html.heex:2027 #, elixir-autogen, elixir-format msgid "Paste the secret key generated by Gaiia when you create the webhook." msgstr "Paste the secret key generated by Gaiia when you create the webhook." -#: lib/towerops_web/live/trace_live/index.html.heex:346 +#: lib/towerops_web/live/trace_live/index.html.heex:359 #, elixir-autogen, elixir-format msgid "Peer APs" msgstr "Peer APs" -#: lib/towerops_web/live/org/settings_live.html.heex:614 +#: lib/towerops_web/live/org/settings_live.html.heex:655 #, elixir-autogen, elixir-format msgid "Pending Invitations" msgstr "Pending Invitations" -#: lib/towerops_web/live/org/settings_live.html.heex:697 +#: lib/towerops_web/live/org/settings_live.html.heex:738 #, elixir-autogen, elixir-format msgid "People who have access to this organization." msgstr "People who have access to this organization." @@ -3092,50 +3077,49 @@ msgstr "Performance" msgid "Permanent" msgstr "Permanent" -#: lib/towerops_web/live/device_live/form.html.heex:731 +#: lib/towerops_web/live/device_live/form.html.heex:752 #, elixir-autogen, elixir-format msgid "Permanently delete this device and all its data." msgstr "Permanently delete this device and all its data." -#: lib/towerops_web/live/user_settings_live.html.heex:29 +#: lib/towerops_web/live/user_settings_live.html.heex:28 #, elixir-autogen, elixir-format msgid "Personal" msgstr "Personal" -#: lib/towerops_web/live/user_settings_live.html.heex:110 +#: lib/towerops_web/live/user_settings_live.html.heex:123 #, elixir-autogen, elixir-format msgid "Personal Information" msgstr "Personal Information" -#: lib/towerops_web/live/org/settings_live.html.heex:1323 +#: lib/towerops_web/live/org/settings_live.html.heex:1413 #, elixir-autogen, elixir-format msgid "Physical and virtual interfaces, LAGs, connections" msgstr "Physical and virtual interfaces, LAGs, connections" -#: lib/towerops_web/live/device_live/form.html.heex:697 +#: lib/towerops_web/live/device_live/form.html.heex:712 #, elixir-autogen, elixir-format msgid "Plain API (port 8728) sends credentials unencrypted over the network." msgstr "Plain API (port 8728) sends credentials unencrypted over the network." -#: lib/towerops_web/live/org/settings_live.html.heex:422 -#: lib/towerops_web/live/site_live/form.html.heex:426 +#: lib/towerops_web/live/org/settings_live.html.heex:446 +#: lib/towerops_web/live/site_live/form.html.heex:442 #, elixir-autogen, elixir-format msgid "Plain API (port 8728) sends credentials unencrypted over the network. This setting is" msgstr "Plain API (port 8728) sends credentials unencrypted over the network. This setting is" -#: lib/towerops_web/live/org/settings_live.html.heex:433 -#: lib/towerops_web/live/site_live/form.html.heex:435 +#: lib/towerops_web/live/org/settings_live.html.heex:459 +#: lib/towerops_web/live/site_live/form.html.heex:453 #, elixir-autogen, elixir-format msgid "Plain API (port 8728) sends credentials unencrypted. Use SSL (port 8729) whenever possible." msgstr "Plain API (port 8728) sends credentials unencrypted. Use SSL (port 8729) whenever possible." -#: lib/towerops_web/live/device_live/show.html.heex:2601 +#: lib/towerops_web/live/device_live/show.html.heex:2738 #, elixir-autogen, elixir-format msgid "Plan" msgstr "Plan" -#: lib/towerops_web/live/org/integrations_live.ex:138 -#: lib/towerops_web/live/org/settings_live.ex:404 +#: lib/towerops_web/live/org/settings_live.ex:502 #, elixir-autogen, elixir-format msgid "Please enter an API key first" msgstr "Please enter an API key first" @@ -3145,43 +3129,43 @@ msgstr "Please enter an API key first" msgid "Please enter an address to geocode" msgstr "Please enter an address to geocode" -#: lib/towerops_web/live/org/settings_live.ex:391 +#: lib/towerops_web/live/org/settings_live.ex:474 #, elixir-autogen, elixir-format msgid "Please enter your NetBox URL first" msgstr "Please enter your NetBox URL first" -#: lib/towerops_web/controllers/user_session_controller.ex:127 -#: lib/towerops_web/controllers/user_session_controller.ex:148 +#: lib/towerops_web/controllers/user_session_controller.ex:144 +#: lib/towerops_web/controllers/user_session_controller.ex:165 #, elixir-autogen, elixir-format msgid "Please log in first." msgstr "Please log in first." -#: lib/towerops_web/live/user_settings_live.html.heex:724 +#: lib/towerops_web/live/user_settings_live.html.heex:755 #, elixir-autogen, elixir-format msgid "Please review your login history below and ensure all activity is authorized." msgstr "Please review your login history below and ensure all activity is authorized." -#: lib/towerops_web/live/device_live/show.html.heex:60 +#: lib/towerops_web/live/device_live/show.html.heex:68 #, elixir-autogen, elixir-format msgid "Polled by:" msgstr "Polled by:" -#: lib/towerops_web/live/agent_live/show.html.heex:298 +#: lib/towerops_web/live/agent_live/show.html.heex:308 #, elixir-autogen, elixir-format msgid "Polling Targets" msgstr "Polling Targets" -#: lib/towerops_web/live/device_live/show.html.heex:122 +#: lib/towerops_web/live/device_live/show.html.heex:157 #, elixir-autogen, elixir-format msgid "Ports" msgstr "Ports" -#: lib/towerops_web/live/device_live/show.html.heex:249 +#: lib/towerops_web/live/device_live/show.html.heex:284 #, elixir-autogen, elixir-format msgid "Preseem" msgstr "Preseem" -#: lib/towerops_web/live/trace_live/index.html.heex:204 +#: lib/towerops_web/live/trace_live/index.html.heex:214 #, elixir-autogen, elixir-format msgid "Preseem AP" msgstr "Preseem AP" @@ -3191,38 +3175,40 @@ msgstr "Preseem AP" msgid "Preseem Devices" msgstr "Preseem Devices" -#: lib/towerops_web/live/device_live/show.html.heex:2772 -#: lib/towerops_web/live/org/preseem_devices_live.html.heex:129 +#: lib/towerops_web/live/device_live/show.html.heex:2909 +#: lib/towerops_web/live/org/preseem_devices_live.html.heex:131 #, elixir-autogen, elixir-format msgid "Preseem ID" msgstr "Preseem ID" -#: lib/towerops_web/live/site_live/show.html.heex:89 +#: lib/towerops_web/live/site_live/show.html.heex:137 #, elixir-autogen, elixir-format msgid "Preseem QoE Score" msgstr "Preseem QoE Score" -#: lib/towerops_web/live/device_live/index.html.heex:625 -#: lib/towerops_web/live/user_settings_live.html.heex:932 +#: lib/towerops_web/live/device_live/index.html.heex:672 +#: lib/towerops_web/live/user_settings_live.html.heex:976 #, elixir-autogen, elixir-format msgid "Previous" msgstr "Previous" -#: lib/towerops_web/live/device_live/show.html.heex:1695 +#: lib/towerops_web/live/device_live/show.html.heex:1814 #, elixir-autogen, elixir-format msgid "Primary" msgstr "Primary" -#: lib/towerops_web/live/device_live/form.html.heex:520 -#: lib/towerops_web/live/org/settings_live.html.heex:313 -#: lib/towerops_web/live/site_live/form.html.heex:337 +#: lib/towerops_web/live/device_live/form.html.heex:529 +#: lib/towerops_web/live/onboarding_live.html.heex:114 +#: lib/towerops_web/live/org/settings_live.html.heex:329 +#: lib/towerops_web/live/site_live/form.html.heex:349 #, elixir-autogen, elixir-format msgid "Privacy Password" msgstr "Privacy Password" -#: lib/towerops_web/live/device_live/form.html.heex:505 -#: lib/towerops_web/live/org/settings_live.html.heex:299 -#: lib/towerops_web/live/site_live/form.html.heex:323 +#: lib/towerops_web/live/device_live/form.html.heex:514 +#: lib/towerops_web/live/onboarding_live.html.heex:107 +#: lib/towerops_web/live/org/settings_live.html.heex:315 +#: lib/towerops_web/live/site_live/form.html.heex:335 #, elixir-autogen, elixir-format msgid "Privacy Protocol" msgstr "Privacy Protocol" @@ -3237,12 +3223,12 @@ msgstr "Proactive network health observations from all sources." msgid "Proactive network health observations generated from Preseem data analysis." msgstr "Proactive network health observations generated from Preseem data analysis." -#: lib/towerops_web/live/device_live/show.html.heex:656 +#: lib/towerops_web/live/device_live/show.html.heex:717 #, elixir-autogen, elixir-format msgid "Processors" msgstr "Processors" -#: lib/towerops_web/live/agent_live/show.html.heex:110 +#: lib/towerops_web/live/agent_live/show.html.heex:120 #, elixir-autogen, elixir-format msgid "Production (kubectl):" msgstr "Production (kubectl):" @@ -3252,18 +3238,18 @@ msgstr "Production (kubectl):" msgid "Profile updated successfully." msgstr "Profile updated successfully." -#: lib/towerops_web/live/mobile_qr_live.ex:49 +#: lib/towerops_web/live/mobile_qr_live.ex:53 #, elixir-autogen, elixir-format msgid "QR code expired, generated a new one" msgstr "QR code expired, generated a new one" -#: lib/towerops_web/live/dashboard_live.html.heex:609 +#: lib/towerops_web/live/dashboard_live.html.heex:505 #: lib/towerops_web/live/site_live/index.html.heex:54 #, elixir-autogen, elixir-format msgid "QoE" msgstr "QoE" -#: lib/towerops_web/live/trace_live/index.html.heex:233 +#: lib/towerops_web/live/trace_live/index.html.heex:246 #, elixir-autogen, elixir-format msgid "QoE Score" msgstr "QoE Score" @@ -3273,22 +3259,22 @@ msgstr "QoE Score" msgid "Queue Depths" msgstr "Queue Depths" -#: lib/towerops_web/live/trace_live/index.html.heex:243 +#: lib/towerops_web/live/trace_live/index.html.heex:256 #, elixir-autogen, elixir-format msgid "RF Score" msgstr "RF Score" -#: lib/towerops_web/live/device_live/show.html.heex:315 +#: lib/towerops_web/live/device_live/show.html.heex:350 #, elixir-autogen, elixir-format msgid "Raw Data" msgstr "Raw Data" -#: lib/towerops_web/live/device_live/show.html.heex:2081 +#: lib/towerops_web/live/device_live/show.html.heex:2210 #, elixir-autogen, elixir-format msgid "Raw Discovery Data" msgstr "Raw Discovery Data" -#: lib/towerops_web/live/device_live/show.html.heex:2085 +#: lib/towerops_web/live/device_live/show.html.heex:2214 #, elixir-autogen, elixir-format msgid "Raw SNMP OID values collected during the last discovery run at" msgstr "Raw SNMP OID values collected during the last discovery run at" @@ -3303,44 +3289,46 @@ msgstr "Real-time NOC operations log — config changes, alerts, events, and syn msgid "Real-time monitoring of polling and discovery jobs" msgstr "Real-time monitoring of polling and discovery jobs" -#: lib/towerops_web/live/admin/dashboard_live.html.heex:66 +#: lib/towerops_web/live/admin/dashboard_live.html.heex:83 #, elixir-autogen, elixir-format msgid "Real-time polling and discovery job monitoring" msgstr "Real-time polling and discovery job monitoring" #: lib/towerops_web/live/admin/security_live/index.html.heex:186 +#: lib/towerops_web/live/maintenance_live/form.html.heex:39 +#: lib/towerops_web/live/maintenance_live/show.html.heex:73 #, elixir-autogen, elixir-format msgid "Reason" msgstr "Reason" -#: lib/towerops_web/live/org/integrations_live.html.heex:269 -#: lib/towerops_web/live/org/settings_live.html.heex:1655 +#: lib/towerops_web/live/org/integrations_live.html.heex:327 +#: lib/towerops_web/live/org/settings_live.html.heex:1992 #, elixir-autogen, elixir-format msgid "Receive real-time updates from Gaiia when accounts, subscriptions, or inventory items change." msgstr "Receive real-time updates from Gaiia when accounts, subscriptions, or inventory items change." #: lib/towerops_web/live/admin/monitoring_live.html.heex:297 -#: lib/towerops_web/live/dashboard_live.html.heex:683 +#: lib/towerops_web/live/dashboard_live.html.heex:815 #, elixir-autogen, elixir-format msgid "Recent Activity" msgstr "Recent Activity" -#: lib/towerops_web/live/admin/dashboard_live.html.heex:94 +#: lib/towerops_web/live/admin/dashboard_live.html.heex:112 #, elixir-autogen, elixir-format msgid "Recent Audit Logs" msgstr "Recent Audit Logs" -#: lib/towerops_web/live/device_live/show.html.heex:600 +#: lib/towerops_web/live/device_live/show.html.heex:659 #, elixir-autogen, elixir-format msgid "Recent Config Changes" msgstr "Recent Config Changes" -#: lib/towerops_web/live/device_live/show.html.heex:2827 +#: lib/towerops_web/live/device_live/show.html.heex:2964 #, elixir-autogen, elixir-format msgid "Recent QoE Metrics" msgstr "Recent QoE Metrics" -#: lib/towerops_web/live/user_settings_live.html.heex:830 +#: lib/towerops_web/live/user_settings_live.html.heex:874 #, elixir-autogen, elixir-format msgid "Recent login attempts to your account, including successful and failed attempts." msgstr "Recent login attempts to your account, including successful and failed attempts." @@ -3352,46 +3340,46 @@ msgstr "Recent login attempts to your account, including successful and failed a msgid "Recommended actions" msgstr "Recommended actions" -#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:35 -#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:26 +#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:37 +#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:28 #, elixir-autogen, elixir-format msgid "Reconciliation" msgstr "Reconciliation" -#: lib/towerops_web/live/user_settings_live.html.heex:1127 +#: lib/towerops_web/live/user_settings_live.html.heex:1173 #, elixir-autogen, elixir-format msgid "Recovery Codes" msgstr "Recovery Codes" -#: lib/towerops_web/live/user_settings_live.html.heex:1634 +#: lib/towerops_web/live/user_settings_live.html.heex:1712 #, elixir-autogen, elixir-format msgid "Recovery Codes Generated" msgstr "Recovery Codes Generated" -#: lib/towerops_web/live/org/integrations_live.html.heex:327 +#: lib/towerops_web/live/org/integrations_live.html.heex:391 #, elixir-autogen, elixir-format msgid "Regenerate Secret" msgstr "Regenerate Secret" -#: lib/towerops_web/live/device_live/show.html.heex:435 +#: lib/towerops_web/live/device_live/show.html.heex:478 #, elixir-autogen, elixir-format msgid "Release Notes" msgstr "Release Notes" -#: lib/towerops_web/live/device_live/form.html.heex:248 +#: lib/towerops_web/live/device_live/form.html.heex:250 #, elixir-autogen, elixir-format msgid "Remote Agent" msgstr "Remote Agent" -#: lib/towerops_web/live/agent_live/index.ex:56 +#: lib/towerops_web/live/agent_live/index.ex:58 #, elixir-autogen, elixir-format msgid "Remote Agents" msgstr "Remote Agents" #: lib/towerops_web/live/admin/security_live/index.html.heex:117 -#: lib/towerops_web/live/org/settings_live.html.heex:785 -#: lib/towerops_web/live/user_settings_live.html.heex:687 -#: lib/towerops_web/live/user_settings_live.html.heex:1104 +#: lib/towerops_web/live/org/settings_live.html.heex:835 +#: lib/towerops_web/live/user_settings_live.html.heex:719 +#: lib/towerops_web/live/user_settings_live.html.heex:1150 #, elixir-autogen, elixir-format msgid "Remove" msgstr "Remove" @@ -3401,7 +3389,7 @@ msgstr "Remove" msgid "Remove this IP/CIDR from the allowlist?" msgstr "Remove this IP/CIDR from the allowlist?" -#: lib/towerops_web/live/org/settings_live.html.heex:782 +#: lib/towerops_web/live/org/settings_live.html.heex:832 #, elixir-autogen, elixir-format msgid "Remove this member from the organization?" msgstr "Remove this member from the organization?" @@ -3411,7 +3399,7 @@ msgstr "Remove this member from the organization?" msgid "Removed from allowlist" msgstr "Removed from allowlist" -#: lib/towerops_web/live/device_live/index.html.heex:60 +#: lib/towerops_web/live/device_live/index.html.heex:86 #, elixir-autogen, elixir-format msgid "Reset all sites and devices to alphabetical order?" msgstr "Reset all sites and devices to alphabetical order?" @@ -3423,12 +3411,12 @@ msgstr "Reset all sites and devices to alphabetical order?" msgid "Reset password link is invalid or has expired." msgstr "Reset password link is invalid or has expired." -#: lib/towerops_web/live/alert_live/index.html.heex:297 +#: lib/towerops_web/live/alert_live/index.html.heex:379 #, elixir-autogen, elixir-format msgid "Resolve this alert?" msgstr "Resolve this alert?" -#: lib/towerops_web/live/device_live/index.html.heex:257 +#: lib/towerops_web/live/device_live/index.html.heex:296 #, elixir-autogen, elixir-format msgid "Response" msgstr "Response" @@ -3438,145 +3426,150 @@ msgstr "Response" msgid "Restart command sent to agent" msgstr "Restart command sent to agent" -#: lib/towerops_web/live/user_settings_live.html.heex:802 +#: lib/towerops_web/live/user_settings_live.html.heex:846 #, elixir-autogen, elixir-format msgid "Revoke" msgstr "Revoke" -#: lib/towerops_web/live/user_settings_live.html.heex:1244 +#: lib/towerops_web/live/user_settings_live.html.heex:1295 #, elixir-autogen, elixir-format msgid "Revoke All" msgstr "Revoke All" -#: lib/towerops_web/live/user_settings_live.html.heex:1229 +#: lib/towerops_web/live/user_settings_live.html.heex:1278 #, elixir-autogen, elixir-format msgid "Revoke All Other Sessions?" msgstr "Revoke All Other Sessions?" -#: lib/towerops_web/live/org/settings_live.html.heex:593 -#: lib/towerops_web/live/org/settings_live.html.heex:630 -#: lib/towerops_web/live/org/settings_live.html.heex:710 +#: lib/towerops_web/live/org/settings_live.html.heex:629 +#: lib/towerops_web/live/org/settings_live.html.heex:671 +#: lib/towerops_web/live/org/settings_live.html.heex:751 #, elixir-autogen, elixir-format msgid "Role" msgstr "Role" -#: lib/towerops_web/live/org/settings_live.ex:227 +#: lib/towerops_web/live/org/settings_live.ex:263 #, elixir-autogen, elixir-format msgid "Role updated" msgstr "Role updated" -#: lib/towerops_web/live/org/settings_live.html.heex:395 +#: lib/towerops_web/live/org/settings_live.html.heex:419 #, elixir-autogen, elixir-format msgid "RouterOS API password" msgstr "RouterOS API password" -#: lib/towerops_web/live/device_live/show.html.heex:2261 +#: lib/towerops_web/live/device_live/show.html.heex:2392 #, elixir-autogen, elixir-format msgid "Run discovery to automatically detect sensors, interfaces, and other monitorable items, or add a service check manually." msgstr "Run discovery to automatically detect sensors, interfaces, and other monitorable items, or add a service check manually." +#: lib/towerops_web/live/onboarding_live.ex:201 #: lib/towerops_web/live/org/settings_live.html.heex:43 #, elixir-autogen, elixir-format msgid "SNMP" msgstr "SNMP" -#: lib/towerops_web/live/device_live/form.html.heex:331 +#: lib/towerops_web/live/device_live/form.html.heex:337 #, elixir-autogen, elixir-format msgid "SNMP & ICMP" msgstr "SNMP & ICMP" -#: lib/towerops_web/live/org/settings_live.html.heex:242 -#: lib/towerops_web/live/site_live/form.html.heex:266 +#: lib/towerops_web/live/org/settings_live.html.heex:258 +#: lib/towerops_web/live/site_live/form.html.heex:278 #, elixir-autogen, elixir-format msgid "SNMP Community String" msgstr "SNMP Community String" -#: lib/towerops_web/live/device_live/form.html.heex:306 -#: lib/towerops_web/live/org/settings_live.html.heex:217 -#: lib/towerops_web/live/site_live/form.html.heex:246 +#: lib/towerops_web/live/device_live/form.html.heex:310 +#: lib/towerops_web/live/onboarding_live.html.heex:62 +#: lib/towerops_web/live/org/settings_live.html.heex:231 +#: lib/towerops_web/live/site_live/form.html.heex:256 #, elixir-autogen, elixir-format msgid "SNMP Configuration" msgstr "SNMP Configuration" -#: lib/towerops_web/live/device_live/form.html.heex:532 -#: lib/towerops_web/live/org/settings_live.html.heex:323 -#: lib/towerops_web/live/site_live/form.html.heex:347 +#: lib/towerops_web/live/device_live/form.html.heex:541 +#: lib/towerops_web/live/org/settings_live.html.heex:339 +#: lib/towerops_web/live/site_live/form.html.heex:359 #, elixir-autogen, elixir-format msgid "SNMP Port" msgstr "SNMP Port" -#: lib/towerops_web/live/device_live/form.html.heex:370 -#: lib/towerops_web/live/org/settings_live.html.heex:232 -#: lib/towerops_web/live/site_live/form.html.heex:256 +#: lib/towerops_web/live/device_live/form.html.heex:377 +#: lib/towerops_web/live/onboarding_live.html.heex:73 +#: lib/towerops_web/live/org/settings_live.html.heex:248 +#: lib/towerops_web/live/site_live/form.html.heex:268 #, elixir-autogen, elixir-format msgid "SNMP Version" msgstr "SNMP Version" -#: lib/towerops_web/live/org/integrations_live.html.heex:254 -#: lib/towerops_web/live/user_settings_live.html.heex:373 +#: lib/towerops_web/live/maintenance_live/form.html.heex:161 +#: lib/towerops_web/live/org/integrations_live.html.heex:312 +#: lib/towerops_web/live/org/integrations_live.html.heex:632 +#: lib/towerops_web/live/user_settings_live.html.heex:391 #, elixir-autogen, elixir-format msgid "Save" msgstr "Save" -#: lib/towerops_web/live/agent_live/edit.html.heex:82 +#: lib/towerops_web/live/agent_live/edit.html.heex:83 #, elixir-autogen, elixir-format msgid "Save Changes" msgstr "Save Changes" -#: lib/towerops_web/live/device_live/form.html.heex:720 +#: lib/towerops_web/live/device_live/form.html.heex:739 #, elixir-autogen, elixir-format msgid "Save Device" msgstr "Save Device" -#: lib/towerops_web/live/org/settings_live.html.heex:1446 -#: lib/towerops_web/live/org/settings_live.html.heex:1637 +#: lib/towerops_web/live/org/settings_live.html.heex:1543 +#: lib/towerops_web/live/org/settings_live.html.heex:1648 +#: lib/towerops_web/live/org/settings_live.html.heex:1770 +#: lib/towerops_web/live/org/settings_live.html.heex:1972 #, elixir-autogen, elixir-format msgid "Save Integration" msgstr "Save Integration" -#: lib/towerops_web/live/user_settings_live.html.heex:514 +#: lib/towerops_web/live/user_settings_live.html.heex:538 #, elixir-autogen, elixir-format msgid "Save Password" msgstr "Save Password" -#: lib/towerops_web/live/org/settings_live.html.heex:560 +#: lib/towerops_web/live/org/settings_live.html.heex:596 #, elixir-autogen, elixir-format msgid "Save Settings" msgstr "Save Settings" -#: lib/towerops_web/live/user_settings_live.html.heex:1638 +#: lib/towerops_web/live/user_settings_live.html.heex:1716 #, elixir-autogen, elixir-format msgid "Save these codes in a secure location. Each code can only be used once." msgstr "Save these codes in a secure location. Each code can only be used once." -#: lib/towerops_web/live/agent_live/edit.html.heex:81 -#: lib/towerops_web/live/device_live/form.html.heex:716 -#: lib/towerops_web/live/org/integrations_live.html.heex:251 -#: lib/towerops_web/live/org/settings_live.html.heex:557 -#: lib/towerops_web/live/org/settings_live.html.heex:1443 -#: lib/towerops_web/live/org/settings_live.html.heex:1634 -#: lib/towerops_web/live/site_live/form.html.heex:444 -#: lib/towerops_web/live/user_settings_live.html.heex:370 +#: lib/towerops_web/live/agent_live/edit.html.heex:82 +#: lib/towerops_web/live/device_live/form.html.heex:735 +#: lib/towerops_web/live/org/integrations_live.html.heex:309 +#: lib/towerops_web/live/org/integrations_live.html.heex:629 +#: lib/towerops_web/live/org/settings_live.html.heex:593 +#: lib/towerops_web/live/org/settings_live.html.heex:1540 +#: lib/towerops_web/live/org/settings_live.html.heex:1645 +#: lib/towerops_web/live/org/settings_live.html.heex:1767 +#: lib/towerops_web/live/org/settings_live.html.heex:1969 +#: lib/towerops_web/live/site_live/form.html.heex:464 +#: lib/towerops_web/live/user_settings_live.html.heex:388 #, elixir-autogen, elixir-format msgid "Saving..." msgstr "Saving..." -#: lib/towerops_web/live/user_settings_live.html.heex:1544 +#: lib/towerops_web/live/user_settings_live.html.heex:1597 #, elixir-autogen, elixir-format msgid "Scan QR Code" msgstr "Scan QR Code" -#: lib/towerops_web/live/user_settings_live.html.heex:1548 -#, elixir-autogen, elixir-format -msgid "Scan this QR code with your authenticator app (Google Authenticator, Authy, 1Password, etc.)." -msgstr "Scan this QR code with your authenticator app (Google Authenticator, Authy, 1Password, etc.)." - -#: lib/towerops_web/live/trace_live/index.html.heex:21 +#: lib/towerops_web/live/trace_live/index.html.heex:22 #, elixir-autogen, elixir-format msgid "Search by customer name, IP address, account ID, serial number, or device name..." msgstr "Search by customer name, IP address, account ID, serial number, or device name..." -#: lib/towerops_web/live/org/preseem_devices_live.html.heex:232 +#: lib/towerops_web/live/org/preseem_devices_live.html.heex:243 #, elixir-autogen, elixir-format msgid "Search by device name or IP..." msgstr "Search by device name or IP..." @@ -3586,12 +3579,12 @@ msgstr "Search by device name or IP..." msgid "Search by device name, IP, site, or keyword..." msgstr "Search by device name, IP, site, or keyword..." -#: lib/towerops_web/live/trace_live/index.html.heex:539 +#: lib/towerops_web/live/trace_live/index.html.heex:556 #, elixir-autogen, elixir-format msgid "Search for a customer by name, IP address, account ID, or device name to see their full network status at a glance." msgstr "Search for a customer by name, IP address, account ID, or device name to see their full network status at a glance." -#: lib/towerops_web/live/user_settings_live.html.heex:89 +#: lib/towerops_web/live/user_settings_live.html.heex:103 #, elixir-autogen, elixir-format msgid "Security" msgstr "Security" @@ -3601,18 +3594,18 @@ msgstr "Security" msgid "Security - IP Access Control" msgstr "Security - IP Access Control" -#: lib/towerops_web/live/user_settings_live.html.heex:719 +#: lib/towerops_web/live/user_settings_live.html.heex:751 #, elixir-autogen, elixir-format msgid "Security Alert" msgstr "Security Alert" -#: lib/towerops_web/live/org/settings_live.html.heex:252 -#: lib/towerops_web/live/site_live/form.html.heex:276 +#: lib/towerops_web/live/org/settings_live.html.heex:268 +#: lib/towerops_web/live/site_live/form.html.heex:288 #, elixir-autogen, elixir-format msgid "Security Level" msgstr "Security Level" -#: lib/towerops_web/live/org/settings_live.html.heex:432 +#: lib/towerops_web/live/org/settings_live.html.heex:458 #, elixir-autogen, elixir-format msgid "Security Warning:" msgstr "Security Warning:" @@ -3623,62 +3616,62 @@ msgstr "Security Warning:" msgid "Select All" msgstr "Select All" -#: lib/towerops_web/live/agent_live/index.html.heex:296 +#: lib/towerops_web/live/agent_live/index.html.heex:308 #, elixir-autogen, elixir-format msgid "Select Global Default" msgstr "Select Global Default" -#: lib/towerops_web/live/org/settings_live.html.heex:450 +#: lib/towerops_web/live/org/settings_live.html.heex:478 #, elixir-autogen, elixir-format msgid "Select a default agent for SNMP polling. This will be used for all devices in this organization unless overridden at the site or device level." msgstr "Select a default agent for SNMP polling. This will be used for all devices in this organization unless overridden at the site or device level." -#: lib/towerops_web/live/device_live/form.html.heex:205 +#: lib/towerops_web/live/device_live/form.html.heex:207 #, elixir-autogen, elixir-format msgid "Select a role manually or leave as auto-detect to infer from SNMP data." msgstr "Select a role manually or leave as auto-detect to infer from SNMP data." -#: lib/towerops_web/live/device_live/show.html.heex:1810 +#: lib/towerops_web/live/device_live/show.html.heex:1933 #, elixir-autogen, elixir-format msgid "Select any 2 backups using the checkboxes to compare their differences" msgstr "Select any 2 backups using the checkboxes to compare their differences" -#: lib/towerops_web/live/device_live/show.html.heex:1948 +#: lib/towerops_web/live/device_live/show.html.heex:2075 #, elixir-autogen, elixir-format msgid "Select one more backup to compare" msgstr "Select one more backup to compare" -#: lib/towerops_web/live/org/settings_live.html.heex:601 +#: lib/towerops_web/live/org/settings_live.html.heex:642 #, elixir-autogen, elixir-format msgid "Send Invite" msgstr "Send Invite" -#: lib/towerops_web/live/org/settings_live.html.heex:576 +#: lib/towerops_web/live/org/settings_live.html.heex:612 #, elixir-autogen, elixir-format msgid "Send an invitation email to add someone to this organization." msgstr "Send an invitation email to add someone to this organization." -#: lib/towerops_web/live/org/settings_live.html.heex:598 +#: lib/towerops_web/live/org/settings_live.html.heex:639 #, elixir-autogen, elixir-format msgid "Sending..." msgstr "Sending..." -#: lib/towerops_web/live/org/settings_live.html.heex:633 +#: lib/towerops_web/live/org/settings_live.html.heex:674 #, elixir-autogen, elixir-format msgid "Sent" msgstr "Sent" -#: lib/towerops_web/live/device_live/show.html.heex:2446 +#: lib/towerops_web/live/device_live/show.html.heex:2583 #, elixir-autogen, elixir-format msgid "Serial Number" msgstr "Serial Number" -#: lib/towerops_web/live/org/settings_live.html.heex:1498 +#: lib/towerops_web/live/org/settings_live.html.heex:1822 #, elixir-autogen, elixir-format msgid "Services" msgstr "Services" -#: lib/towerops_web/live/user_settings_live.html.heex:53 +#: lib/towerops_web/live/user_settings_live.html.heex:58 #, elixir-autogen, elixir-format msgid "Sessions" msgstr "Sessions" @@ -3689,112 +3682,114 @@ msgstr "Sessions" msgid "Set Up Two-Factor Authentication" msgstr "Set Up Two-Factor Authentication" -#: lib/towerops_web/live/site_live/form.html.heex:195 +#: lib/towerops_web/live/site_live/form.html.heex:197 #, elixir-autogen, elixir-format msgid "Set a default agent for SNMP polling at this site. This will override the organization default for all devices at this site. Leave blank to inherit from organization." msgstr "Set a default agent for SNMP polling at this site. This will override the organization default for all devices at this site. Leave blank to inherit from organization." -#: lib/towerops_web/live/site_live/form.html.heex:237 +#: lib/towerops_web/live/site_live/form.html.heex:245 #, elixir-autogen, elixir-format msgid "Set a default agent for all devices at this site. Device can override this setting individually." msgstr "Set a default agent for all devices at this site. Device can override this setting individually." -#: lib/towerops_web/live/org/settings_live.html.heex:358 +#: lib/towerops_web/live/org/settings_live.html.heex:380 #, elixir-autogen, elixir-format msgid "Set default MikroTik RouterOS API credentials for all devices in this organization. Only applies to devices detected as MikroTik." msgstr "Set default MikroTik RouterOS API credentials for all devices in this organization. Only applies to devices detected as MikroTik." -#: lib/towerops_web/live/org/settings_live.html.heex:220 +#: lib/towerops_web/live/org/settings_live.html.heex:234 #, elixir-autogen, elixir-format msgid "Set default SNMP settings for all devices in this organization. These can be overridden at the site or device level." msgstr "Set default SNMP settings for all devices in this organization. These can be overridden at the site or device level." -#: lib/towerops_web/live/org/settings_live.html.heex:134 +#: lib/towerops_web/live/org/settings_live.html.heex:138 #, elixir-autogen, elixir-format msgid "Set this organization as your default. When you log in, you'll be directed to your default organization." msgstr "Set this organization as your default. When you log in, you'll be directed to your default organization." -#: lib/towerops_web/live/dashboard_live.html.heex:45 +#: lib/towerops_web/live/dashboard_live.html.heex:48 #, elixir-autogen, elixir-format msgid "Set up your network monitoring in a few steps." msgstr "Set up your network monitoring in a few steps." -#: lib/towerops_web/live/org/settings_live.ex:129 +#: lib/towerops_web/live/org/settings_live.ex:162 #, elixir-autogen, elixir-format msgid "Settings saved successfully" msgstr "Settings saved successfully" -#: lib/towerops_web/live/org/integrations_live.html.heex:334 +#: lib/towerops_web/live/org/integrations_live.html.heex:398 #, elixir-autogen, elixir-format msgid "Setup Instructions" msgstr "Setup Instructions" -#: lib/towerops_web/live/alert_live/index.html.heex:48 +#: lib/towerops_web/live/alert_live/index.html.heex:108 #, elixir-autogen, elixir-format msgid "Severity" msgstr "Severity" -#: lib/towerops_web/live/user_settings_live.html.heex:230 +#: lib/towerops_web/live/user_settings_live.html.heex:243 #, elixir-autogen, elixir-format msgid "Shanghai" msgstr "Shanghai" -#: lib/towerops_web/live/device_live/index.html.heex:638 -#: lib/towerops_web/live/user_settings_live.html.heex:949 +#: lib/towerops_web/live/user_settings_live.html.heex:993 #, elixir-autogen, elixir-format msgid "Showing" msgstr "Showing" -#: lib/towerops_web/live/device_live/show.html.heex:2018 +#: lib/towerops_web/live/device_live/show.html.heex:2145 #, elixir-autogen, elixir-format msgid "Showing the most recent 100 events" msgstr "Showing the most recent 100 events" -#: lib/towerops_web/live/org/settings_live.html.heex:1562 +#: lib/towerops_web/live/org/settings_live.html.heex:1895 #, elixir-autogen, elixir-format msgid "Signing Secret" msgstr "Signing Secret" -#: lib/towerops_web/live/user_settings_live.html.heex:1130 +#: lib/towerops_web/live/user_settings_live.html.heex:1176 #, elixir-autogen, elixir-format msgid "Single-use backup codes for account access if you lose your authenticator app." msgstr "Single-use backup codes for account access if you lose your authenticator app." -#: lib/towerops_web/live/dashboard_live.html.heex:600 -#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:138 -#: lib/towerops_web/live/org/settings_live.html.heex:1359 +#: lib/towerops_web/live/alert_live/index.html.heex:214 +#: lib/towerops_web/live/dashboard_live.html.heex:496 +#: lib/towerops_web/live/maintenance_live/form.html.heex:72 +#: lib/towerops_web/live/onboarding_live.ex:202 +#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:140 +#: lib/towerops_web/live/org/settings_live.html.heex:1451 #: lib/towerops_web/live/site_live/index.html.heex:45 #, elixir-autogen, elixir-format msgid "Site" msgstr "Site" -#: lib/towerops_web/live/device_live/form.html.heex:172 +#: lib/towerops_web/live/device_live/form.html.heex:174 #, elixir-autogen, elixir-format msgid "Site (Optional)" msgstr "Site (Optional)" -#: lib/towerops_web/live/site_live/show.html.heex:121 +#: lib/towerops_web/live/site_live/show.html.heex:221 #, elixir-autogen, elixir-format msgid "Site Details" msgstr "Site Details" -#: lib/towerops_web/live/dashboard_live.html.heex:586 +#: lib/towerops_web/live/dashboard_live.html.heex:482 #, elixir-autogen, elixir-format msgid "Site Health" msgstr "Site Health" -#: lib/towerops_web/live/device_live/show.html.heex:2495 +#: lib/towerops_web/live/device_live/show.html.heex:2632 #: lib/towerops_web/live/site_live/form.html.heex:30 #, elixir-autogen, elixir-format msgid "Site Name" msgstr "Site Name" -#: lib/towerops_web/live/org/settings_live.html.heex:171 +#: lib/towerops_web/live/org/settings_live.html.heex:177 #, elixir-autogen, elixir-format msgid "Site Organization" msgstr "Site Organization" -#: lib/towerops_web/live/org/settings_live.html.heex:201 +#: lib/towerops_web/live/org/settings_live.html.heex:213 #, elixir-autogen, elixir-format msgid "Site assignments will be lost, but devices will remain in the organization." msgstr "Site assignments will be lost, but devices will remain in the organization." @@ -3804,7 +3799,7 @@ msgstr "Site assignments will be lost, but devices will remain in the organizati msgid "Site linked successfully" msgstr "Site linked successfully" -#: lib/towerops_web/live/org/settings_live.html.heex:1279 +#: lib/towerops_web/live/org/settings_live.html.heex:1369 #, elixir-autogen, elixir-format msgid "Site names, locations, addresses, and coordinates" msgstr "Site names, locations, addresses, and coordinates" @@ -3814,8 +3809,9 @@ msgstr "Site names, locations, addresses, and coordinates" msgid "Site unlinked" msgstr "Site unlinked" -#: lib/towerops_web/live/dashboard_live.html.heex:267 -#: lib/towerops_web/live/org/settings_live.html.heex:1276 +#: lib/towerops_web/components/layouts.ex:275 +#: lib/towerops_web/components/layouts.ex:563 +#: lib/towerops_web/live/org/settings_live.html.heex:1366 #: lib/towerops_web/live/site_live/index.ex:21 #: lib/towerops_web/live/site_live/index.ex:51 #, elixir-autogen, elixir-format @@ -3828,17 +3824,12 @@ msgstr "Sites" msgid "Sites Map" msgstr "Sites Map" -#: lib/towerops_web/live/device_live/index.html.heex:159 -#, elixir-autogen, elixir-format -msgid "Sites help you organize devices by physical location. Create a site to assign your devices and keep things organized." -msgstr "Sites help you organize devices by physical location. Create a site to assign your devices and keep things organized." - #: lib/towerops_web/live/map_live/index.ex:36 #, elixir-autogen, elixir-format msgid "Sites map refreshed" msgstr "Sites map refreshed" -#: lib/towerops_web/live/dashboard_live.html.heex:57 +#: lib/towerops_web/live/dashboard_live.html.heex:60 #, elixir-autogen, elixir-format msgid "Sites represent your physical locations" msgstr "Sites represent your physical locations" @@ -3868,12 +3859,12 @@ msgstr "Something went wrong!" msgid "Squirrel eating wires" msgstr "Squirrel eating wires" -#: lib/towerops_web/live/site_live/show.html.heex:264 +#: lib/towerops_web/live/site_live/show.html.heex:369 #, elixir-autogen, elixir-format msgid "Start monitoring by adding network devices to this site." msgstr "Start monitoring by adding network devices to this site." -#: lib/towerops_web/live/device_live/show.html.heex:2187 +#: lib/towerops_web/live/device_live/show.html.heex:2316 #, elixir-autogen, elixir-format msgid "State" msgstr "State" @@ -3887,49 +3878,49 @@ msgstr "Statistics" #: lib/towerops_web/live/admin/agent_live/index.html.heex:106 #: lib/towerops_web/live/admin/security_live/index.html.heex:172 #: lib/towerops_web/live/agent_live/index.html.heex:91 -#: lib/towerops_web/live/agent_live/index.html.heex:201 -#: lib/towerops_web/live/device_live/index.html.heex:245 -#: lib/towerops_web/live/device_live/show.html.heex:2310 -#: lib/towerops_web/live/device_live/show.html.heex:2607 -#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:241 -#: lib/towerops_web/live/org/preseem_devices_live.html.heex:141 -#: lib/towerops_web/live/user_settings_live.html.heex:860 +#: lib/towerops_web/live/agent_live/index.html.heex:207 +#: lib/towerops_web/live/device_live/index.html.heex:278 +#: lib/towerops_web/live/device_live/show.html.heex:2443 +#: lib/towerops_web/live/device_live/show.html.heex:2744 +#: lib/towerops_web/live/maintenance_live/index.html.heex:95 +#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:243 +#: lib/towerops_web/live/org/preseem_devices_live.html.heex:143 +#: lib/towerops_web/live/user_settings_live.html.heex:904 #, elixir-autogen, elixir-format msgid "Status" msgstr "Status" -#: lib/towerops_web/live/device_live/show.html.heex:739 +#: lib/towerops_web/live/device_live/show.html.heex:800 #, elixir-autogen, elixir-format msgid "Storage Usage" msgstr "Storage Usage" -#: lib/towerops_web/live/device_live/show.html.heex:778 +#: lib/towerops_web/live/device_live/show.html.heex:839 #, elixir-autogen, elixir-format msgid "Storage Volumes" msgstr "Storage Volumes" -#: lib/towerops_web/live/alert_live/index.html.heex:60 +#: lib/towerops_web/live/site_live/show.html.heex:169 #, elixir-autogen, elixir-format msgid "Subscriber Impact" msgstr "Subscriber Impact" -#: lib/towerops_web/live/trace_live/index.html.heex:537 +#: lib/towerops_web/live/trace_live/index.html.heex:553 #, elixir-autogen, elixir-format msgid "Subscriber Trace" msgstr "Subscriber Trace" -#: lib/towerops_web/live/dashboard_live.html.heex:223 -#: lib/towerops_web/live/dashboard_live.html.heex:612 -#: lib/towerops_web/live/device_live/index.html.heex:263 -#: lib/towerops_web/live/device_live/show.html.heex:2504 -#: lib/towerops_web/live/device_live/show.html.heex:2780 -#: lib/towerops_web/live/device_live/show.html.heex:2853 +#: lib/towerops_web/live/device_live/show.html.heex:2641 +#: lib/towerops_web/live/device_live/show.html.heex:2917 +#: lib/towerops_web/live/device_live/show.html.heex:2990 #: lib/towerops_web/live/site_live/index.html.heex:57 +#: lib/towerops_web/live/site_live/show.html.heex:76 +#: lib/towerops_web/live/site_live/show.html.heex:185 #, elixir-autogen, elixir-format msgid "Subscribers" msgstr "Subscribers" -#: lib/towerops_web/live/trace_live/index.html.heex:313 +#: lib/towerops_web/live/trace_live/index.html.heex:326 #, elixir-autogen, elixir-format msgid "Subscribers on this AP" msgstr "Subscribers on this AP" @@ -3939,12 +3930,12 @@ msgstr "Subscribers on this AP" msgid "Success Rates" msgstr "Success Rates" -#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:272 +#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:303 #, elixir-autogen, elixir-format msgid "Suggested matches:" msgstr "Suggested matches:" -#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:72 +#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:74 #, elixir-autogen, elixir-format msgid "Summary" msgstr "Summary" @@ -3954,79 +3945,83 @@ msgstr "Summary" msgid "Superuser" msgstr "Superuser" -#: lib/towerops_web/live/user_settings_live.html.heex:236 +#: lib/towerops_web/live/user_settings_live.html.heex:249 #, elixir-autogen, elixir-format msgid "Sydney" msgstr "Sydney" -#: lib/towerops_web/live/org/settings_live.html.heex:1138 +#: lib/towerops_web/live/org/settings_live.html.heex:1218 #, elixir-autogen, elixir-format msgid "Sync Direction" msgstr "Sync Direction" -#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:287 +#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:289 #, elixir-autogen, elixir-format msgid "Sync Gaiia data and map inventory items to see reconciliation results." msgstr "Sync Gaiia data and map inventory items to see reconciliation results." -#: lib/towerops_web/live/org/settings_live.html.heex:1574 +#: lib/towerops_web/live/org/settings_live.html.heex:1908 #, elixir-autogen, elixir-format msgid "Sync Settings" msgstr "Sync Settings" -#: lib/towerops_web/live/org/integrations_live.html.heex:201 -#: lib/towerops_web/live/org/settings_live.html.heex:1390 -#: lib/towerops_web/live/org/settings_live.html.heex:1581 +#: lib/towerops_web/live/org/integrations_live.html.heex:260 +#: lib/towerops_web/live/org/integrations_live.html.heex:580 +#: lib/towerops_web/live/org/settings_live.html.heex:1482 +#: lib/towerops_web/live/org/settings_live.html.heex:1602 +#: lib/towerops_web/live/org/settings_live.html.heex:1724 +#: lib/towerops_web/live/org/settings_live.html.heex:1915 #, elixir-autogen, elixir-format msgid "Sync interval (minutes)" msgstr "Sync interval (minutes)" -#: lib/towerops_web/live/org/settings_live.html.heex:978 +#: lib/towerops_web/live/org/settings_live.html.heex:1054 #, elixir-autogen, elixir-format msgid "Synced" msgstr "Synced" -#: lib/towerops_web/live/device_live/show.html.heex:2099 +#: lib/towerops_web/live/device_live/show.html.heex:2228 #, elixir-autogen, elixir-format msgid "System OIDs" msgstr "System OIDs" -#: lib/towerops_web/live/admin/dashboard_live.html.heex:51 +#: lib/towerops_web/live/admin/dashboard_live.html.heex:53 #, elixir-autogen, elixir-format msgid "System metrics and performance" msgstr "System metrics and performance" -#: lib/towerops_web/live/org/settings_live.html.heex:1371 +#: lib/towerops_web/live/org/settings_live.html.heex:1463 #, elixir-autogen, elixir-format msgid "Tag" msgstr "Tag" -#: lib/towerops_web/live/admin/dashboard_live.html.heex:105 +#: lib/towerops_web/live/admin/dashboard_live.html.heex:124 #, elixir-autogen, elixir-format msgid "Target" msgstr "Target" -#: lib/towerops_web/live/device_live/show.html.heex:851 +#: lib/towerops_web/live/device_live/show.html.heex:912 #, elixir-autogen, elixir-format msgid "Temperature" msgstr "Temperature" -#: lib/towerops_web/live/org/integrations_live.html.heex:238 +#: lib/towerops_web/live/org/integrations_live.html.heex:297 +#: lib/towerops_web/live/org/integrations_live.html.heex:617 #, elixir-autogen, elixir-format msgid "Test Connection" msgstr "Test Connection" -#: lib/towerops_web/live/device_live/form.html.heex:542 +#: lib/towerops_web/live/device_live/form.html.heex:555 #, elixir-autogen, elixir-format msgid "Test SNMP Connection" msgstr "Test SNMP Connection" -#: lib/towerops_web/live/device_live/form.html.heex:569 +#: lib/towerops_web/live/device_live/form.html.heex:582 #, elixir-autogen, elixir-format msgid "Testing SNMP credentials..." msgstr "Testing SNMP credentials..." -#: lib/towerops_web/live/device_live/form.html.heex:541 +#: lib/towerops_web/live/device_live/form.html.heex:553 #, elixir-autogen, elixir-format msgid "Testing..." msgstr "Testing..." @@ -4051,7 +4046,7 @@ msgstr "The topology is automatically discovered via LLDP and CDP protocols." msgid "These backups are identical. No differences found." msgstr "These backups are identical. No differences found." -#: lib/towerops_web/live/user_settings_live.html.heex:1687 +#: lib/towerops_web/live/user_settings_live.html.heex:1765 #, elixir-autogen, elixir-format msgid "These codes won't be shown again. Store them securely (password manager, encrypted file, etc.)." msgstr "These codes won't be shown again. Store them securely (password manager, encrypted file, etc.)." @@ -4061,37 +4056,37 @@ msgstr "These codes won't be shown again. Store them securely (password manager, msgid "This IP address (private network or CGNAT range) cannot be reached from the cloud." msgstr "This IP address (private network or CGNAT range) cannot be reached from the cloud." -#: lib/towerops_web/live/agent_live/show.html.heex:312 +#: lib/towerops_web/live/agent_live/show.html.heex:322 #, elixir-autogen, elixir-format msgid "This agent is not currently polling any device." msgstr "This agent is not currently polling any device." -#: lib/towerops_web/live/agent_live/index.html.heex:443 +#: lib/towerops_web/live/agent_live/index.html.heex:457 #, elixir-autogen, elixir-format msgid "This configuration includes Watchtower for automatic agent updates. The agent will automatically update to the latest version every 12 hours." msgstr "This configuration includes Watchtower for automatic agent updates. The agent will automatically update to the latest version every 12 hours." -#: lib/towerops_web/live/device_live/show.html.heex:1489 +#: lib/towerops_web/live/device_live/show.html.heex:1604 #, elixir-autogen, elixir-format msgid "This device doesn't have any ARP entries, or ARP discovery hasn't run yet." msgstr "This device doesn't have any ARP entries, or ARP discovery hasn't run yet." -#: lib/towerops_web/live/device_live/show.html.heex:1760 +#: lib/towerops_web/live/device_live/show.html.heex:1881 #, elixir-autogen, elixir-format msgid "This device doesn't have any IP addresses discovered, or IP discovery hasn't run yet." msgstr "This device doesn't have any IP addresses discovered, or IP discovery hasn't run yet." -#: lib/towerops_web/live/device_live/show.html.heex:1409 +#: lib/towerops_web/live/device_live/show.html.heex:1522 #, elixir-autogen, elixir-format msgid "This device doesn't have any LLDP or CDP neighbors, or neighbor discovery hasn't run yet." msgstr "This device doesn't have any LLDP or CDP neighbors, or neighbor discovery hasn't run yet." -#: lib/towerops_web/live/device_live/show.html.heex:1575 +#: lib/towerops_web/live/device_live/show.html.heex:1690 #, elixir-autogen, elixir-format msgid "This device doesn't have any MAC forwarding entries, or MAC discovery hasn't run yet." msgstr "This device doesn't have any MAC forwarding entries, or MAC discovery hasn't run yet." -#: lib/towerops_web/live/device_live/show.html.heex:1644 +#: lib/towerops_web/live/device_live/show.html.heex:1761 #, elixir-autogen, elixir-format msgid "This device doesn't have any VLANs configured, or VLAN discovery hasn't run yet." msgstr "This device doesn't have any VLANs configured, or VLAN discovery hasn't run yet." @@ -4111,123 +4106,123 @@ msgstr "This generates significant log volume and should only be enabled tempora msgid "This invitation is invalid or has expired." msgstr "This invitation is invalid or has expired." -#: lib/towerops_web/live/org/settings_live.ex:245 +#: lib/towerops_web/live/org/settings_live.ex:281 #, elixir-autogen, elixir-format msgid "This is already your default organization" msgstr "This is already your default organization" -#: lib/towerops_web/live/org/settings_live.html.heex:147 +#: lib/towerops_web/live/org/settings_live.html.heex:153 #, elixir-autogen, elixir-format msgid "This is your default organization" msgstr "This is your default organization" -#: lib/towerops_web/live/device_live/form.html.heex:698 +#: lib/towerops_web/live/device_live/form.html.heex:716 #, elixir-autogen, elixir-format msgid "This setting is blocked when using cloud pollers" msgstr "This setting is blocked when using cloud pollers" -#: lib/towerops_web/live/org/settings_live.html.heex:506 +#: lib/towerops_web/live/org/settings_live.html.heex:536 #, elixir-autogen, elixir-format msgid "This will assign the default agent to ALL devices across all sites in this organization." msgstr "This will assign the default agent to ALL devices across all sites in this organization." -#: lib/towerops_web/live/site_live/form.html.heex:218 +#: lib/towerops_web/live/site_live/form.html.heex:222 #, elixir-autogen, elixir-format msgid "This will assign this agent to ALL devices at this site." msgstr "This will assign this agent to ALL devices at this site." -#: lib/towerops_web/live/user_settings_live.html.heex:1160 +#: lib/towerops_web/live/user_settings_live.html.heex:1207 #, elixir-autogen, elixir-format msgid "This will invalidate all existing unused recovery codes. Continue?" msgstr "This will invalidate all existing unused recovery codes. Continue?" -#: lib/towerops_web/live/user_settings_live.html.heex:1233 +#: lib/towerops_web/live/user_settings_live.html.heex:1282 #, elixir-autogen, elixir-format msgid "This will log you out from all other browsers and devices. Your current session will remain active." msgstr "This will log you out from all other browsers and devices. Your current session will remain active." -#: lib/towerops_web/live/org/settings_live.html.heex:333 +#: lib/towerops_web/live/org/settings_live.html.heex:349 #, elixir-autogen, elixir-format msgid "This will override SNMP settings for ALL devices across all sites in this organization." msgstr "This will override SNMP settings for ALL devices across all sites in this organization." -#: lib/towerops_web/live/site_live/form.html.heex:357 +#: lib/towerops_web/live/site_live/form.html.heex:369 #, elixir-autogen, elixir-format msgid "This will override SNMP settings for ALL devices at this site." msgstr "This will override SNMP settings for ALL devices at this site." -#: lib/towerops_web/live/site_live/form.html.heex:362 +#: lib/towerops_web/live/site_live/form.html.heex:375 #, elixir-autogen, elixir-format msgid "This will replace SNMP settings for ALL devices at this site. Are you sure?" msgstr "This will replace SNMP settings for ALL devices at this site. Are you sure?" -#: lib/towerops_web/live/org/settings_live.html.heex:338 +#: lib/towerops_web/live/org/settings_live.html.heex:357 #, elixir-autogen, elixir-format msgid "This will replace SNMP settings for ALL devices in this organization. Are you sure?" msgstr "This will replace SNMP settings for ALL devices in this organization. Are you sure?" -#: lib/towerops_web/live/site_live/form.html.heex:223 +#: lib/towerops_web/live/site_live/form.html.heex:228 #, elixir-autogen, elixir-format msgid "This will replace agent assignments for ALL devices at this site. Are you sure?" msgstr "This will replace agent assignments for ALL devices at this site. Are you sure?" -#: lib/towerops_web/live/org/settings_live.html.heex:511 +#: lib/towerops_web/live/org/settings_live.html.heex:544 #, elixir-autogen, elixir-format msgid "This will replace agent assignments for ALL devices in this organization. Are you sure?" msgstr "This will replace agent assignments for ALL devices in this organization. Are you sure?" -#: lib/towerops_web/live/device_live/index.html.heex:100 +#: lib/towerops_web/live/device_live/index.html.heex:119 #, elixir-autogen, elixir-format msgid "This will trigger SNMP discovery for all SNMP-enabled devices. Continue?" msgstr "This will trigger SNMP discovery for all SNMP-enabled devices. Continue?" -#: lib/towerops_web/live/site_live/show.html.heex:19 +#: lib/towerops_web/live/site_live/show.html.heex:45 #, elixir-autogen, elixir-format msgid "This will trigger SNMP discovery for all devices at this site. Continue?" msgstr "This will trigger SNMP discovery for all devices at this site. Continue?" -#: lib/towerops_web/live/device_live/show.html.heex:2850 +#: lib/towerops_web/live/device_live/show.html.heex:2987 #, elixir-autogen, elixir-format msgid "Throughput" msgstr "Throughput" -#: lib/towerops_web/live/admin/dashboard_live.html.heex:106 -#: lib/towerops_web/live/device_live/show.html.heex:2835 +#: lib/towerops_web/live/admin/dashboard_live.html.heex:125 +#: lib/towerops_web/live/device_live/show.html.heex:2972 #, elixir-autogen, elixir-format msgid "Time" msgstr "Time" -#: lib/towerops_web/live/user_settings_live.html.heex:260 +#: lib/towerops_web/live/user_settings_live.html.heex:273 #, elixir-autogen, elixir-format msgid "Time Format" msgstr "Time Format" -#: lib/towerops_web/live/agent_live/show.html.heex:257 +#: lib/towerops_web/live/agent_live/show.html.heex:267 #, elixir-autogen, elixir-format msgid "Timestamps" msgstr "Timestamps" -#: lib/towerops_web/live/user_settings_live.html.heex:167 +#: lib/towerops_web/live/user_settings_live.html.heex:180 #, elixir-autogen, elixir-format msgid "Timezone" msgstr "Timezone" -#: lib/towerops_web/live/org_live/new.html.heex:22 +#: lib/towerops_web/live/org_live/new.html.heex:21 #, elixir-autogen, elixir-format msgid "To create additional organizations, you'll need to upgrade your existing organization to a paid plan." msgstr "To create additional organizations, you'll need to upgrade your existing organization to a paid plan." -#: lib/towerops_web/live/device_live/form.html.heex:157 +#: lib/towerops_web/live/device_live/form.html.heex:159 #, elixir-autogen, elixir-format msgid "To monitor this device, assign it to a" msgstr "To monitor this device, assign it to a" -#: lib/towerops_web/live/user_settings_live.html.heex:678 +#: lib/towerops_web/live/user_settings_live.html.heex:710 #, elixir-autogen, elixir-format msgid "Toggle" msgstr "Toggle" -#: lib/towerops_web/live/user_settings_live.html.heex:224 +#: lib/towerops_web/live/user_settings_live.html.heex:237 #, elixir-autogen, elixir-format msgid "Tokyo" msgstr "Tokyo" @@ -4242,37 +4237,39 @@ msgstr "Topology Visualization" msgid "Total Devices" msgstr "Total Devices" -#: lib/towerops_web/live/dashboard_live.html.heex:94 +#: lib/towerops_web/live/dashboard_live.html.heex:97 #, elixir-autogen, elixir-format msgid "TowerOps automatically monitors your devices and alerts you of issues" msgstr "TowerOps automatically monitors your devices and alerts you of issues" -#: lib/towerops_web/live/org/settings_live.html.heex:1194 +#: lib/towerops_web/live/org/settings_live.html.heex:1278 #, elixir-autogen, elixir-format msgid "TowerOps is the source of truth. Push discovered devices and monitoring data to NetBox." msgstr "TowerOps is the source of truth. Push discovered devices and monitoring data to NetBox." -#: lib/towerops_web/live/org/settings_live.html.heex:1522 +#: lib/towerops_web/live/org/settings_live.html.heex:1853 #, elixir-autogen, elixir-format msgid "TowerOps will automatically update the corresponding alert." msgstr "TowerOps will automatically update the corresponding alert." -#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:186 +#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:188 #, elixir-autogen, elixir-format msgid "Towerops" msgstr "Towerops" +#: lib/towerops_web/components/layouts.ex:366 +#: lib/towerops_web/components/layouts.ex:585 #: lib/towerops_web/live/trace_live/index.ex:73 #, elixir-autogen, elixir-format msgid "Trace" msgstr "Trace" -#: lib/towerops_web/live/device_live/show.html.heex:927 +#: lib/towerops_web/live/device_live/show.html.heex:990 #, elixir-autogen, elixir-format msgid "Transceivers" msgstr "Transceivers" -#: lib/towerops_web/live/alert_live/index.html.heex:10 +#: lib/towerops_web/live/alert_live/index.html.heex:15 #, elixir-autogen, elixir-format msgid "Triage alerts by site impact — fix the biggest problems first" msgstr "Triage alerts by site impact — fix the biggest problems first" @@ -4282,12 +4279,12 @@ msgstr "Triage alerts by site impact — fix the biggest problems first" msgid "Try adjusting your search terms or clearing the filters." msgstr "Try adjusting your search terms or clearing the filters." -#: lib/towerops_web/live/trace_live/index.html.heex:75 +#: lib/towerops_web/live/trace_live/index.html.heex:79 #, elixir-autogen, elixir-format msgid "Try searching by customer name, IP address, account ID, or device name" msgstr "Try searching by customer name, IP address, account ID, or device name" -#: lib/towerops_web/live/org/settings_live.html.heex:1517 +#: lib/towerops_web/live/org/settings_live.html.heex:1846 #, elixir-autogen, elixir-format msgid "Two-Way Sync (Webhooks)" msgstr "Two-Way Sync (Webhooks)" @@ -4302,56 +4299,57 @@ msgstr "Two-factor authentication enabled successfully!" msgid "Two-factor authentication is required for this action." msgstr "Two-factor authentication is required for this action." -#: lib/towerops_web/live/device_live/index.html.heex:560 -#: lib/towerops_web/live/device_live/show.html.heex:2175 +#: lib/towerops_web/live/device_live/index.html.heex:284 +#: lib/towerops_web/live/device_live/index.html.heex:613 +#: lib/towerops_web/live/device_live/show.html.heex:2304 #, elixir-autogen, elixir-format msgid "Type" msgstr "Type" -#: lib/towerops_web/live/user_settings_live.html.heex:176 +#: lib/towerops_web/live/user_settings_live.html.heex:189 #, elixir-autogen, elixir-format msgid "UTC (Coordinated Universal Time)" msgstr "UTC (Coordinated Universal Time)" -#: lib/towerops_web/live/admin/security_live/index.html.heex:198 +#: lib/towerops_web/live/admin/security_live/index.html.heex:200 #, elixir-autogen, elixir-format msgid "Unblock" msgstr "Unblock" -#: lib/towerops_web/live/admin/security_live/index.html.heex:195 +#: lib/towerops_web/live/admin/security_live/index.html.heex:196 #, elixir-autogen, elixir-format msgid "Unblock this IP address? This will remove all offense history." msgstr "Unblock this IP address? This will remove all offense history." -#: lib/towerops_web/live/agent_live/show.html.heex:218 -#: lib/towerops_web/live/device_live/show.html.heex:1364 +#: lib/towerops_web/live/agent_live/show.html.heex:228 +#: lib/towerops_web/live/device_live/show.html.heex:1477 #, elixir-autogen, elixir-format msgid "Unknown" msgstr "Unknown" -#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:216 -#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:239 -#: lib/towerops_web/live/org/preseem_devices_live.html.heex:202 +#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:247 +#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:270 +#: lib/towerops_web/live/org/preseem_devices_live.html.heex:213 #, elixir-autogen, elixir-format msgid "Unlink" msgstr "Unlink" -#: lib/towerops_web/live/org/preseem_devices_live.html.heex:199 +#: lib/towerops_web/live/org/preseem_devices_live.html.heex:210 #, elixir-autogen, elixir-format msgid "Unlink this device from the Preseem access point?" msgstr "Unlink this device from the Preseem access point?" -#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:236 +#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:267 #, elixir-autogen, elixir-format msgid "Unlink this device?" msgstr "Unlink this device?" -#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:213 +#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:244 #, elixir-autogen, elixir-format msgid "Unlink this site?" msgstr "Unlink this site?" -#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:310 +#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:312 #, elixir-autogen, elixir-format msgid "Unmapped Gaiia items (no Towerops link)" msgstr "Unmapped Gaiia items (no Towerops link)" @@ -4361,7 +4359,7 @@ msgstr "Unmapped Gaiia items (no Towerops link)" msgid "Unmatched" msgstr "Unmatched" -#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:318 +#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:320 #, elixir-autogen, elixir-format msgid "Untracked Towerops devices (not in Gaiia)" msgstr "Untracked Towerops devices (not in Gaiia)" @@ -4376,22 +4374,22 @@ msgstr "Update command sent to agent (v%{version})" msgid "Update the agent name. The authentication token cannot be changed." msgstr "Update the agent name. The authentication token cannot be changed." -#: lib/towerops_web/live/org/settings_live.html.heex:112 +#: lib/towerops_web/live/org/settings_live.html.heex:116 #, elixir-autogen, elixir-format msgid "Update the name of your organization." msgstr "Update the name of your organization." -#: lib/towerops_web/live/user_settings_live.html.heex:387 +#: lib/towerops_web/live/user_settings_live.html.heex:407 #, elixir-autogen, elixir-format msgid "Update your email address. You'll receive a confirmation link to verify the new address." msgstr "Update your email address. You'll receive a confirmation link to verify the new address." -#: lib/towerops_web/live/user_settings_live.html.heex:113 +#: lib/towerops_web/live/user_settings_live.html.heex:126 #, elixir-autogen, elixir-format msgid "Update your name and timezone preferences." msgstr "Update your name and timezone preferences." -#: lib/towerops_web/live/user_settings_live.html.heex:435 +#: lib/towerops_web/live/user_settings_live.html.heex:457 #, elixir-autogen, elixir-format msgid "Update your password. You'll be logged out and need to sign in again with your new password." msgstr "Update your password. You'll be logged out and need to sign in again with your new password." @@ -4401,30 +4399,25 @@ msgstr "Update your password. You'll be logged out and need to sign in again wit msgid "Updates every 10 seconds" msgstr "Updates every 10 seconds" -#: lib/towerops_web/live/dashboard_live.html.heex:159 -#, elixir-autogen, elixir-format -msgid "Uptime" -msgstr "Uptime" - -#: lib/towerops_web/live/device_live/form.html.heex:688 -#: lib/towerops_web/live/org/settings_live.html.heex:414 -#: lib/towerops_web/live/site_live/form.html.heex:419 +#: lib/towerops_web/live/device_live/form.html.heex:703 +#: lib/towerops_web/live/org/settings_live.html.heex:438 +#: lib/towerops_web/live/site_live/form.html.heex:435 #, elixir-autogen, elixir-format msgid "Use SSL (API-SSL)" msgstr "Use SSL (API-SSL)" -#: lib/towerops_web/live/org/settings_live.html.heex:182 +#: lib/towerops_web/live/org/settings_live.html.heex:190 #, elixir-autogen, elixir-format msgid "Use sites to organize devices" msgstr "Use sites to organize devices" -#: lib/towerops_web/live/agent_live/index.html.heex:387 +#: lib/towerops_web/live/agent_live/index.html.heex:401 #, elixir-autogen, elixir-format msgid "Use the token and Docker Compose configuration below to deploy this agent." msgstr "Use the token and Docker Compose configuration below to deploy this agent." -#: lib/towerops_web/live/admin/dashboard_live.html.heex:104 -#: lib/towerops_web/live/org/settings_live.html.heex:707 +#: lib/towerops_web/live/admin/dashboard_live.html.heex:123 +#: lib/towerops_web/live/org/settings_live.html.heex:748 #, elixir-autogen, elixir-format msgid "User" msgstr "User" @@ -4435,12 +4428,13 @@ msgstr "User" msgid "User confirmed successfully." msgstr "User confirmed successfully." -#: lib/towerops_web/live/device_live/form.html.heex:433 -#: lib/towerops_web/live/device_live/form.html.heex:661 -#: lib/towerops_web/live/org/settings_live.html.heex:264 -#: lib/towerops_web/live/org/settings_live.html.heex:384 -#: lib/towerops_web/live/site_live/form.html.heex:288 -#: lib/towerops_web/live/site_live/form.html.heex:398 +#: lib/towerops_web/live/device_live/form.html.heex:442 +#: lib/towerops_web/live/device_live/form.html.heex:676 +#: lib/towerops_web/live/onboarding_live.html.heex:90 +#: lib/towerops_web/live/org/settings_live.html.heex:280 +#: lib/towerops_web/live/org/settings_live.html.heex:408 +#: lib/towerops_web/live/site_live/form.html.heex:300 +#: lib/towerops_web/live/site_live/form.html.heex:414 #, elixir-autogen, elixir-format msgid "Username" msgstr "Username" @@ -4450,40 +4444,40 @@ msgstr "Username" msgid "Users" msgstr "Users" -#: lib/towerops_web/live/device_live/form.html.heex:421 +#: lib/towerops_web/live/device_live/form.html.heex:428 #, elixir-autogen, elixir-format msgid "Using default (v2c, no community set - configure at organization or site level)" msgstr "Using default (v2c, no community set - configure at organization or site level)" -#: lib/towerops_web/live/device_live/form.html.heex:282 +#: lib/towerops_web/live/device_live/form.html.heex:284 #, elixir-autogen, elixir-format msgid "Using global default cloud poller:" msgstr "Using global default cloud poller:" -#: lib/towerops_web/live/device_live/show.html.heex:184 +#: lib/towerops_web/live/device_live/show.html.heex:219 #, elixir-autogen, elixir-format msgid "VLANs" msgstr "VLANs" -#: lib/towerops_web/live/device_live/show.html.heex:2112 -#: lib/towerops_web/live/device_live/show.html.heex:2146 -#: lib/towerops_web/live/device_live/show.html.heex:2184 -#: lib/towerops_web/live/device_live/show.html.heex:2316 +#: lib/towerops_web/live/device_live/show.html.heex:2241 +#: lib/towerops_web/live/device_live/show.html.heex:2275 +#: lib/towerops_web/live/device_live/show.html.heex:2313 +#: lib/towerops_web/live/device_live/show.html.heex:2449 #, elixir-autogen, elixir-format msgid "Value" msgstr "Value" -#: lib/towerops_web/live/agent_live/show.html.heex:98 +#: lib/towerops_web/live/agent_live/show.html.heex:106 #, elixir-autogen, elixir-format msgid "Verbose logging is disabled. Enable it in the agent edit page to troubleshoot issues." msgstr "Verbose logging is disabled. Enable it in the agent edit page to troubleshoot issues." -#: lib/towerops_web/live/agent_live/show.html.heex:96 +#: lib/towerops_web/live/agent_live/show.html.heex:104 #, elixir-autogen, elixir-format msgid "Verbose logging is enabled. All SNMP data and agent messages are being logged." msgstr "Verbose logging is enabled. All SNMP data and agent messages are being logged." -#: lib/towerops_web/live/user_settings_live.html.heex:1582 +#: lib/towerops_web/live/user_settings_live.html.heex:1660 #, elixir-autogen, elixir-format msgid "Verify" msgstr "Verify" @@ -4491,23 +4485,23 @@ msgstr "Verify" #: lib/towerops_web/live/admin/agent_live/index.html.heex:68 #: lib/towerops_web/live/admin/agent_live/index.html.heex:142 #: lib/towerops_web/live/agent_live/index.html.heex:128 -#: lib/towerops_web/live/agent_live/index.html.heex:238 +#: lib/towerops_web/live/agent_live/index.html.heex:244 #, elixir-autogen, elixir-format msgid "Version" msgstr "Version" -#: lib/towerops_web/live/agent_live/show.html.heex:105 +#: lib/towerops_web/live/agent_live/show.html.heex:115 #, elixir-autogen, elixir-format msgid "View Debug Logs" msgstr "View Debug Logs" #: lib/towerops_web/live/agent_live/index.html.heex:151 -#: lib/towerops_web/live/agent_live/index.html.heex:261 +#: lib/towerops_web/live/agent_live/index.html.heex:267 #, elixir-autogen, elixir-format msgid "View Setup" msgstr "View Setup" -#: lib/towerops_web/live/org/settings_live.html.heex:774 +#: lib/towerops_web/live/org/settings_live.html.heex:824 #, elixir-autogen, elixir-format msgid "Viewer" msgstr "Viewer" @@ -4517,7 +4511,7 @@ msgstr "Viewer" msgid "Visual topology of your network infrastructure" msgstr "Visual topology of your network infrastructure" -#: lib/towerops_web/live/device_live/show.html.heex:889 +#: lib/towerops_web/live/device_live/show.html.heex:951 #, elixir-autogen, elixir-format msgid "Voltage" msgstr "Voltage" @@ -4527,12 +4521,12 @@ msgstr "Voltage" msgid "Warning" msgstr "Warning" -#: lib/towerops_web/live/org/settings_live.html.heex:196 +#: lib/towerops_web/live/org/settings_live.html.heex:206 #, elixir-autogen, elixir-format msgid "Warning: Disabling Sites" msgstr "Warning: Disabling Sites" -#: lib/towerops_web/live/agent_live/index.html.heex:326 +#: lib/towerops_web/live/agent_live/index.html.heex:338 #, elixir-autogen, elixir-format msgid "Warning: Selected agent no longer exists. Please choose a new agent." msgstr "Warning: Selected agent no longer exists. Please choose a new agent." @@ -4542,56 +4536,56 @@ msgstr "Warning: Selected agent no longer exists. Please choose a new agent." msgid "We're working on fixing the problem. Please try again later." msgstr "We're working on fixing the problem. Please try again later." -#: lib/towerops_web/live/org/integrations_live.html.heex:266 -#: lib/towerops_web/live/org/settings_live.html.heex:1651 +#: lib/towerops_web/live/org/integrations_live.html.heex:324 +#: lib/towerops_web/live/org/settings_live.html.heex:1988 #, elixir-autogen, elixir-format msgid "Webhook Configuration" msgstr "Webhook Configuration" -#: lib/towerops_web/live/org/integrations_live.html.heex:299 -#: lib/towerops_web/live/org/settings_live.html.heex:1685 +#: lib/towerops_web/live/org/integrations_live.html.heex:359 +#: lib/towerops_web/live/org/settings_live.html.heex:2024 #, elixir-autogen, elixir-format msgid "Webhook Secret" msgstr "Webhook Secret" -#: lib/towerops_web/live/org/settings_live.html.heex:1537 +#: lib/towerops_web/live/org/settings_live.html.heex:1868 #, elixir-autogen, elixir-format msgid "Webhook Signing Secret" msgstr "Webhook Signing Secret" -#: lib/towerops_web/live/org/integrations_live.html.heex:275 -#: lib/towerops_web/live/org/settings_live.html.heex:1526 -#: lib/towerops_web/live/org/settings_live.html.heex:1661 +#: lib/towerops_web/live/org/integrations_live.html.heex:335 +#: lib/towerops_web/live/org/settings_live.html.heex:1857 +#: lib/towerops_web/live/org/settings_live.html.heex:2000 #, elixir-autogen, elixir-format msgid "Webhook URL" msgstr "Webhook URL" -#: lib/towerops_web/live/org/integrations_live.ex:164 +#: lib/towerops_web/live/org/integrations_live.ex:245 #, elixir-autogen, elixir-format msgid "Webhook secret regenerated" msgstr "Webhook secret regenerated" -#: lib/towerops_web/live/org/settings_live.ex:429 +#: lib/towerops_web/live/org/settings_live.ex:441 #, elixir-autogen, elixir-format msgid "Webhook secret saved" msgstr "Webhook secret saved" -#: lib/towerops_web/live/agent_live/show.html.heex:128 +#: lib/towerops_web/live/agent_live/show.html.heex:138 #, elixir-autogen, elixir-format msgid "What Gets Logged:" msgstr "What Gets Logged:" -#: lib/towerops_web/live/org/settings_live.html.heex:1232 +#: lib/towerops_web/live/org/settings_live.html.heex:1320 #, elixir-autogen, elixir-format msgid "What to Sync" msgstr "What to Sync" -#: lib/towerops_web/live/dashboard_live.html.heex:389 +#: lib/towerops_web/live/dashboard_live.html.heex:374 #, elixir-autogen, elixir-format msgid "When" msgstr "When" -#: lib/towerops_web/live/org/settings_live.html.heex:1509 +#: lib/towerops_web/live/org/settings_live.html.heex:1836 #, elixir-autogen, elixir-format msgid "When connected, TowerOps will automatically trigger, acknowledge, and resolve PagerDuty incidents in sync with your alerts." msgstr "When connected, TowerOps will automatically trigger, acknowledge, and resolve PagerDuty incidents in sync with your alerts." @@ -4601,27 +4595,27 @@ msgstr "When connected, TowerOps will automatically trigger, acknowledge, and re msgid "When enabled, the server logs all SNMP data and messages for this agent." msgstr "When enabled, the server logs all SNMP data and messages for this agent." -#: lib/towerops_web/live/org/settings_live.html.heex:185 +#: lib/towerops_web/live/org/settings_live.html.heex:193 #, elixir-autogen, elixir-format msgid "When enabled, you can organize devices into sites. When disabled, all devices belong directly to the organization." msgstr "When enabled, you can organize devices into sites. When disabled, all devices belong directly to the organization." -#: lib/towerops_web/live/org/settings_live.html.heex:1521 +#: lib/towerops_web/live/org/settings_live.html.heex:1850 #, elixir-autogen, elixir-format msgid "When someone resolves or acknowledges an incident directly in PagerDuty," msgstr "When someone resolves or acknowledges an incident directly in PagerDuty," -#: lib/towerops_web/live/org/settings_live.html.heex:1494 +#: lib/towerops_web/live/org/settings_live.html.heex:1818 #, elixir-autogen, elixir-format msgid "Where to find your Integration Key" msgstr "Where to find your Integration Key" -#: lib/towerops_web/live/device_live/show.html.heex:1040 +#: lib/towerops_web/live/device_live/show.html.heex:1106 #, elixir-autogen, elixir-format msgid "Wireless" msgstr "Wireless" -#: lib/towerops_web/live/org/settings_live.html.heex:1101 +#: lib/towerops_web/live/org/settings_live.html.heex:1181 #, elixir-autogen, elixir-format msgid "Write permission is required if you want to push data to NetBox." msgstr "Write permission is required if you want to push data to NetBox." @@ -4633,12 +4627,12 @@ msgstr "Write permission is required if you want to push data to NetBox." msgid "You don't have access to this device" msgstr "You don't have access to this device" -#: lib/towerops_web/live/user_settings_live.html.heex:1148 +#: lib/towerops_web/live/user_settings_live.html.heex:1194 #, elixir-autogen, elixir-format msgid "You have" msgstr "You have" -#: lib/towerops_web/live/user_settings_live.html.heex:1181 +#: lib/towerops_web/live/user_settings_live.html.heex:1229 #, elixir-autogen, elixir-format msgid "You have no recovery codes available. If you lose access to your authenticator app," msgstr "You have no recovery codes available. If you lose access to your authenticator app," @@ -4648,22 +4642,22 @@ msgstr "You have no recovery codes available. If you lose access to your authent msgid "You've joined %{org}!" msgstr "You've joined %{org}!" -#: lib/towerops_web/live/org/settings_live.html.heex:1100 +#: lib/towerops_web/live/org/settings_live.html.heex:1178 #, elixir-autogen, elixir-format msgid "Your NetBox instance URL and API token. The token needs read permission at minimum." msgstr "Your NetBox instance URL and API token. The token needs read permission at minimum." -#: lib/towerops_web/live/org_live/index.ex:15 +#: lib/towerops_web/live/org_live/index.ex:14 #, elixir-autogen, elixir-format msgid "Your Organizations" msgstr "Your Organizations" -#: lib/towerops_web/live/user_settings_live.html.heex:752 +#: lib/towerops_web/live/user_settings_live.html.heex:785 #, elixir-autogen, elixir-format msgid "Your current session will appear here after your next login." msgstr "Your current session will appear here after your next login." -#: lib/towerops_web/live/user_settings_live.html.heex:842 +#: lib/towerops_web/live/user_settings_live.html.heex:886 #, elixir-autogen, elixir-format msgid "Your login attempts will appear here." msgstr "Your login attempts will appear here." @@ -4673,50 +4667,791 @@ msgstr "Your login attempts will appear here." msgid "Your network operations log is empty. Events will appear here in real time as config changes, alerts, device events, and syncs happen across your organization." msgstr "Your network operations log is empty. Events will appear here in real time as config changes, alerts, device events, and syncs happen across your organization." -#: lib/towerops_web/plugs/update_session_activity.ex:98 +#: lib/towerops_web/plugs/update_session_activity.ex:99 #, elixir-autogen, elixir-format msgid "Your session expired due to inactivity. Please log in again." msgstr "Your session expired due to inactivity. Please log in again." -#: lib/towerops/workers/gaiia_insight_worker.ex:45 -#: lib/towerops/workers/gaiia_insight_worker.ex:47 +#: lib/towerops/workers/gaiia_insight_worker.ex:80 +#: lib/towerops/workers/gaiia_insight_worker.ex:82 #, elixir-autogen, elixir-format msgid "device" msgid_plural "devices" msgstr[0] "" msgstr[1] "" -#: lib/towerops/workers/gaiia_insight_worker.ex:95 +#: lib/towerops/workers/gaiia_insight_worker.ex:130 #, elixir-autogen, elixir-format msgid "device has" msgid_plural "devices have" msgstr[0] "" msgstr[1] "" -#: lib/towerops/workers/gaiia_insight_worker.ex:47 +#: lib/towerops/workers/gaiia_insight_worker.ex:82 #, elixir-autogen, elixir-format msgid "has" msgid_plural "have" msgstr[0] "" msgstr[1] "" -#: lib/towerops/workers/gaiia_insight_worker.ex:72 +#: lib/towerops/workers/gaiia_insight_worker.ex:107 #, elixir-autogen, elixir-format msgid "item is" msgid_plural "items are" msgstr[0] "" msgstr[1] "" -#: lib/towerops/workers/gaiia_insight_worker.ex:70 +#: lib/towerops/workers/gaiia_insight_worker.ex:105 #, elixir-autogen, elixir-format msgid "item references" msgid_plural "items reference" msgstr[0] "" msgstr[1] "" -#: lib/towerops/workers/gaiia_insight_worker.ex:93 +#: lib/towerops/workers/gaiia_insight_worker.ex:128 #, elixir-autogen, elixir-format msgid "mismatch" msgid_plural "mismatches" msgstr[0] "" msgstr[1] "" + +#: lib/towerops_web/controllers/user_session_html/new.html.heex:18 +#, elixir-autogen, elixir-format +msgid "\"TowerOps cut our response time to network issues by 80%. We can see problems before customers even notice.\"" +msgstr "" + +#: lib/towerops_web/live/onboarding_live.html.heex:263 +#: lib/towerops_web/live/org/integrations_live.html.heex:250 +#: lib/towerops_web/live/org/settings_live.html.heex:1704 +#, elixir-autogen, elixir-format +msgid "API Secret" +msgstr "" + +#: lib/towerops_web/live/alert_live/index.html.heex:145 +#, elixir-autogen, elixir-format +msgid "Ack Selected" +msgstr "" + +#: lib/towerops_web/live/alert_live/index.html.heex:418 +#, elixir-autogen, elixir-format, fuzzy +msgid "Ack'd" +msgstr "Ack" + +#: lib/towerops_web/live/dashboard_live.html.heex:272 +#, elixir-autogen, elixir-format, fuzzy +msgid "Active Issues" +msgstr "Active Sessions" + +#: lib/towerops_web/components/layouts.ex:379 +#: lib/towerops_web/components/layouts.ex:588 +#, elixir-autogen, elixir-format, fuzzy +msgid "Activity" +msgstr "Activity Log" + +#: lib/towerops_web/live/site_live/index.html.heex:138 +#: lib/towerops_web/live/site_live/show.html.heex:56 +#, elixir-autogen, elixir-format, fuzzy +msgid "Add Device" +msgstr "Add Devices" + +#: lib/towerops_web/live/onboarding_live.html.heex:137 +#, elixir-autogen, elixir-format, fuzzy +msgid "Add Your First Site" +msgstr "Add your first device" + +#: lib/towerops_web/components/layouts.ex:459 +#, elixir-autogen, elixir-format, fuzzy +msgid "Admin Panel" +msgstr "Admin" + +#: lib/towerops_web/live/dashboard_live.html.heex:511 +#, elixir-autogen, elixir-format, fuzzy +msgid "Affected" +msgstr "Affected devices:" + +#: lib/towerops_web/live/onboarding_live.ex:204 +#, elixir-autogen, elixir-format, fuzzy +msgid "Agent" +msgstr "Agents" + +#: lib/towerops_web/live/onboarding_live.html.heex:330 +#, elixir-autogen, elixir-format, fuzzy +msgid "Agent:" +msgstr "Agents" + +#: lib/towerops_web/live/dashboard_live.html.heex:368 +#, elixir-autogen, elixir-format, fuzzy +msgid "Alert" +msgstr "Alerts" + +#: lib/towerops_web/live/maintenance_live/show.html.heex:59 +#, elixir-autogen, elixir-format, fuzzy +msgid "Are you sure you want to delete this maintenance window?" +msgstr "Are you sure you want to delete this user?" + +#: lib/towerops_web/live/maintenance_live/form.html.heex:12 +#: lib/towerops_web/live/maintenance_live/show.html.heex:12 +#, elixir-autogen, elixir-format +msgid "Back to Maintenance Windows" +msgstr "" + +#: lib/towerops_web/live/onboarding_live.html.heex:226 +#, elixir-autogen, elixir-format +msgid "Back to providers" +msgstr "" + +#: lib/towerops_web/live/onboarding_live.ex:203 +#, elixir-autogen, elixir-format +msgid "Billing" +msgstr "" + +#: lib/towerops_web/live/device_live/index.html.heex:240 +#, elixir-autogen, elixir-format, fuzzy +msgid "Clear filter" +msgstr "Clear" + +#: lib/towerops_web/live/alert_live/index.html.heex:155 +#, elixir-autogen, elixir-format +msgid "Clear selection" +msgstr "" + +#: lib/towerops_web/live/device_live/show.html.heex:58 +#: lib/towerops_web/live/device_live/show.html.heex:385 +#: lib/towerops_web/live/device_live/show.html.heex:1361 +#: lib/towerops_web/live/device_live/show.html.heex:1385 +#, elixir-autogen, elixir-format +msgid "Click to copy" +msgstr "" + +#: lib/towerops_web/live/onboarding_live.html.heex:194 +#, elixir-autogen, elixir-format +msgid "Connect a Billing Platform" +msgstr "" + +#: lib/towerops_web/live/site_live/index.html.heex:63 +#, elixir-autogen, elixir-format +msgid "Coordinates" +msgstr "" + +#: lib/towerops_web/live/onboarding_live.html.heex:187 +#, elixir-autogen, elixir-format +msgid "Create Site & Continue" +msgstr "" + +#: lib/towerops_web/live/device_live/index.html.heex:136 +#, elixir-autogen, elixir-format, fuzzy +msgid "Create a site" +msgstr "Create a Site" + +#: lib/towerops_web/live/maintenance_live/index.html.heex:98 +#: lib/towerops_web/live/maintenance_live/show.html.heex:137 +#, elixir-autogen, elixir-format, fuzzy +msgid "Created By" +msgstr "Created" + +#: lib/towerops_web/live/maintenance_live/show.html.heex:25 +#, elixir-autogen, elixir-format, fuzzy +msgid "Currently Active" +msgstr "Current Activity" + +#: lib/towerops_web/components/layouts.ex:262 +#: lib/towerops_web/components/layouts.ex:553 +#, elixir-autogen, elixir-format, fuzzy +msgid "Dashboard" +msgstr "Admin Dashboard" + +#: lib/towerops_web/live/onboarding_live.html.heex:307 +#, elixir-autogen, elixir-format +msgid "Deploy Agent" +msgstr "" + +#: lib/towerops_web/live/alert_live/index.html.heex:484 +#, elixir-autogen, elixir-format +msgid "Details" +msgstr "" + +#: lib/towerops_web/live/onboarding_live.html.heex:340 +#, elixir-autogen, elixir-format +msgid "Docker" +msgstr "" + +#: lib/towerops_web/live/onboarding_live.html.heex:373 +#, elixir-autogen, elixir-format +msgid "Done — Go to Dashboard" +msgstr "" + +#: lib/towerops_web/live/alert_live/index.html.heex:226 +#, elixir-autogen, elixir-format, fuzzy +msgid "Duration" +msgstr "Avg Duration" + +#: lib/towerops_web/live/maintenance_live/show.html.heex:54 +#, elixir-autogen, elixir-format, fuzzy +msgid "Edit" +msgstr "Edit Site" + +#: lib/towerops_web/live/maintenance_live/form.ex:49 +#, elixir-autogen, elixir-format +msgid "Edit Maintenance Window" +msgstr "" + +#: lib/towerops_web/live/maintenance_live/form.html.heex:119 +#, elixir-autogen, elixir-format +msgid "Ends At" +msgstr "" + +#: lib/towerops_web/live/user_settings_live.html.heex:1624 +#, elixir-autogen, elixir-format, fuzzy +msgid "Enter the 6-digit code from your app to verify setup" +msgstr "Enter the 6-digit code from your app to verify" + +#: lib/towerops_web/live/org/settings_live.html.heex:1589 +#, elixir-autogen, elixir-format, fuzzy +msgid "Enter your Sonar API token" +msgstr "Enter your NetBox API token" + +#: lib/towerops_web/live/org/settings_live.html.heex:1697 +#, elixir-autogen, elixir-format, fuzzy +msgid "Enter your Splynx API key" +msgstr "Enter your NetBox API token" + +#: lib/towerops_web/live/org/settings_live.html.heex:1710 +#, elixir-autogen, elixir-format, fuzzy +msgid "Enter your Splynx API secret" +msgstr "Enter your NetBox API token" + +#: lib/towerops_web/live/org/settings_live.html.heex:815 +#, elixir-autogen, elixir-format +msgid "Executive" +msgstr "" + +#: lib/towerops_web/live/device_live/index.html.heex:56 +#, elixir-autogen, elixir-format, fuzzy +msgid "Existing" +msgstr "Existing Devices" + +#: lib/towerops_web/live/onboarding_live.html.heex:363 +#, elixir-autogen, elixir-format +msgid "Failed to create agent token. You can create one later in Settings → Agents." +msgstr "" + +#: lib/towerops_web/live/device_live/index.html.heex:175 +#, elixir-autogen, elixir-format +msgid "Filter by name or IP..." +msgstr "" + +#: lib/towerops_web/live/site_live/show.html.heex:48 +#, elixir-autogen, elixir-format +msgid "Force Rediscover All" +msgstr "" + +#: lib/towerops_web/controllers/user_registration_html/new.html.heex:17 +#, elixir-autogen, elixir-format +msgid "Free tier includes:" +msgstr "" + +#: lib/towerops_web/live/user_settings_live.html.heex:1606 +#, elixir-autogen, elixir-format +msgid "Install an authenticator app (Google Authenticator, Authy, 1Password, etc.)" +msgstr "" + +#: lib/towerops_web/live/onboarding_live.html.heex:241 +#: lib/towerops_web/live/onboarding_live.html.heex:255 +#: lib/towerops_web/live/org/integrations_live.html.heex:219 +#: lib/towerops_web/live/org/settings_live.html.heex:1570 +#: lib/towerops_web/live/org/settings_live.html.heex:1677 +#, elixir-autogen, elixir-format +msgid "Instance URL" +msgstr "" + +#: lib/towerops_web/live/onboarding_live.ex:144 +#, elixir-autogen, elixir-format, fuzzy +msgid "Integration saved" +msgstr "Integrations" + +#: lib/towerops_web/live/site_live/index.html.heex:66 +#, elixir-autogen, elixir-format, fuzzy +msgid "Last Check" +msgstr "Last Checked" + +#: lib/towerops_web/live/site_live/show.html.heex:388 +#, elixir-autogen, elixir-format, fuzzy +msgid "Latency" +msgstr "P95 Latency" + +#: lib/towerops_web/live/device_live/show.html.heex:608 +#: lib/towerops_web/live/device_live/show.html.heex:644 +#: lib/towerops_web/live/site_live/show.html.heex:501 +#, elixir-autogen, elixir-format +msgid "Loading chart..." +msgstr "" + +#: lib/towerops_web/components/layouts.ex:493 +#, elixir-autogen, elixir-format +msgid "Log out" +msgstr "" + +#: lib/towerops_web/components/layouts.ex:287 +#: lib/towerops_web/components/layouts.ex:569 +#, elixir-autogen, elixir-format +msgid "Maintenance" +msgstr "" + +#: lib/towerops_web/live/maintenance_live/index.ex:13 +#: lib/towerops_web/live/maintenance_live/index.html.heex:7 +#, elixir-autogen, elixir-format +msgid "Maintenance Windows" +msgstr "" + +#: lib/towerops_web/live/maintenance_live/form.ex:98 +#, elixir-autogen, elixir-format +msgid "Maintenance window created" +msgstr "" + +#: lib/towerops_web/live/maintenance_live/show.ex:25 +#, elixir-autogen, elixir-format +msgid "Maintenance window deleted" +msgstr "" + +#: lib/towerops_web/live/maintenance_live/form.ex:111 +#, elixir-autogen, elixir-format +msgid "Maintenance window updated" +msgstr "" + +#: lib/towerops_web/controllers/user_registration_html/new.html.heex:21 +#, elixir-autogen, elixir-format +msgid "Monitor up to 10 devices" +msgstr "" + +#: lib/towerops_web/controllers/user_session_html/new.html.heex:12 +#, elixir-autogen, elixir-format +msgid "Monitor your entire network from a single dashboard." +msgstr "" + +#: lib/towerops_web/components/layouts.ex:316 +#, elixir-autogen, elixir-format, fuzzy +msgid "More" +msgstr "or" + +#: lib/towerops_web/components/layouts.ex:608 +#, elixir-autogen, elixir-format, fuzzy +msgid "My Settings" +msgstr "Sync Settings" + +#: lib/towerops_web/components/layouts.ex:550 +#, elixir-autogen, elixir-format, fuzzy +msgid "Navigation" +msgstr "Pagination" + +#: lib/towerops_web/live/dashboard_live.html.heex:706 +#, elixir-autogen, elixir-format, fuzzy +msgid "Network Pulse" +msgstr "Network Sites" + +#: lib/towerops_web/live/maintenance_live/form.ex:30 +#, elixir-autogen, elixir-format +msgid "New Maintenance Window" +msgstr "" + +#: lib/towerops_web/live/maintenance_live/index.html.heex:13 +#, elixir-autogen, elixir-format +msgid "New Window" +msgstr "" + +#: lib/towerops_web/live/maintenance_live/show.html.heex:111 +#: lib/towerops_web/live/maintenance_live/show.html.heex:128 +#, elixir-autogen, elixir-format +msgid "No" +msgstr "" + +#: lib/towerops_web/controllers/user_registration_html/new.html.heex:33 +#, elixir-autogen, elixir-format +msgid "No credit card required" +msgstr "" + +#: lib/towerops_web/live/maintenance_live/index.html.heex:73 +#, elixir-autogen, elixir-format +msgid "No maintenance windows" +msgstr "" + +#: lib/towerops_web/live/maintenance_live/show.html.heex:109 +#, elixir-autogen, elixir-format +msgid "No rule specified" +msgstr "" + +#: lib/towerops_web/live/alert_live/index.html.heex:120 +#, elixir-autogen, elixir-format, fuzzy +msgid "Oldest" +msgstr "Oldest First" + +#: lib/towerops_web/live/org/integrations_live.ex:269 +#, elixir-autogen, elixir-format +msgid "Only one %{category} integration can be active. Disable %{provider} first." +msgstr "" + +#: lib/towerops_web/live/org/integrations_live.ex:201 +#, elixir-autogen, elixir-format +msgid "Only one %{category} integration can be active. You already have %{provider} configured. Disable it first to switch." +msgstr "" + +#: lib/towerops_web/live/maintenance_live/form.html.heex:41 +#, elixir-autogen, elixir-format +msgid "Optional description of the maintenance work" +msgstr "" + +#: lib/towerops_web/live/onboarding_live.html.heex:197 +#, elixir-autogen, elixir-format +msgid "Optional. Sync subscriber data for outage impact analysis and inventory reconciliation." +msgstr "" + +#: lib/towerops_web/live/maintenance_live/form.html.heex:60 +#, elixir-autogen, elixir-format +msgid "Org-wide" +msgstr "" + +#: lib/towerops_web/components/layouts.ex:540 +#, elixir-autogen, elixir-format, fuzzy +msgid "Organization" +msgstr "Organizations" + +#: lib/towerops_web/live/maintenance_live/index.html.heex:61 +#, elixir-autogen, elixir-format +msgid "Past" +msgstr "" + +#: lib/towerops_web/controllers/user_registration_html/new.html.heex:29 +#, elixir-autogen, elixir-format +msgid "Performance charts & history" +msgstr "" + +#: lib/towerops_web/live/org/settings_live.ex:475 +#, elixir-autogen, elixir-format, fuzzy +msgid "Please enter your NetBox API token first" +msgstr "Please enter your NetBox URL first" + +#: lib/towerops_web/live/org/settings_live.ex:484 +#, elixir-autogen, elixir-format, fuzzy +msgid "Please enter your Sonar API token first" +msgstr "Please enter an API key first" + +#: lib/towerops_web/live/org/settings_live.ex:483 +#, elixir-autogen, elixir-format, fuzzy +msgid "Please enter your Sonar instance URL first" +msgstr "Please enter your NetBox URL first" + +#: lib/towerops_web/live/org/settings_live.ex:493 +#, elixir-autogen, elixir-format, fuzzy +msgid "Please enter your Splynx API key first" +msgstr "Please enter an API key first" + +#: lib/towerops_web/live/org/settings_live.ex:494 +#, elixir-autogen, elixir-format +msgid "Please enter your Splynx API secret first" +msgstr "" + +#: lib/towerops_web/live/org/settings_live.ex:492 +#, elixir-autogen, elixir-format, fuzzy +msgid "Please enter your Splynx instance URL first" +msgstr "Please enter your NetBox URL first" + +#: lib/towerops_web/live/org/integrations_live.ex:219 +#, elixir-autogen, elixir-format +msgid "Please fill in all required fields first" +msgstr "" + +#: lib/towerops_web/controllers/user_registration_html/new.html.heex:25 +#, elixir-autogen, elixir-format +msgid "Real-time alerts" +msgstr "" + +#: lib/towerops_web/live/maintenance_live/form.html.heex:144 +#, elixir-autogen, elixir-format +msgid "Recurrence Rule" +msgstr "" + +#: lib/towerops_web/live/maintenance_live/form.html.heex:136 +#: lib/towerops_web/live/maintenance_live/show.html.heex:105 +#, elixir-autogen, elixir-format +msgid "Recurring" +msgstr "" + +#: lib/towerops_web/live/alert_live/index.html.heex:148 +#, elixir-autogen, elixir-format +msgid "Resolve Selected" +msgstr "" + +#: lib/towerops_web/live/alert_live/index.html.heex:147 +#, elixir-autogen, elixir-format, fuzzy +msgid "Resolve selected alerts?" +msgstr "Resolve this alert?" + +#: lib/towerops_web/live/alert_live/index.html.heex:84 +#: lib/towerops_web/live/alert_live/index.html.heex:361 +#: lib/towerops_web/live/alert_live/index.html.heex:438 +#, elixir-autogen, elixir-format, fuzzy +msgid "Resolved" +msgstr "Remove" + +#: lib/towerops_web/live/device_live/show.html.heex:381 +#, elixir-autogen, elixir-format +msgid "Resolved IP" +msgstr "" + +#: lib/towerops_web/live/onboarding_live.ex:67 +#, elixir-autogen, elixir-format, fuzzy +msgid "SNMP configuration saved" +msgstr "SNMP Configuration" + +#: lib/towerops_web/live/onboarding_live.html.heex:130 +#: lib/towerops_web/live/onboarding_live.html.heex:287 +#, elixir-autogen, elixir-format +msgid "Save & Continue" +msgstr "" + +#: lib/towerops_web/live/onboarding_live.html.heex:321 +#, elixir-autogen, elixir-format +msgid "Save this token — it won't be shown again." +msgstr "" + +#: lib/towerops_web/live/user_settings_live.html.heex:1616 +#, elixir-autogen, elixir-format +msgid "Scan the QR code below with your authenticator app" +msgstr "" + +#: lib/towerops_web/live/maintenance_live/index.html.heex:76 +#, elixir-autogen, elixir-format +msgid "Schedule maintenance to suppress alerts during planned work." +msgstr "" + +#: lib/towerops_web/live/maintenance_live/form.html.heex:47 +#: lib/towerops_web/live/maintenance_live/index.html.heex:89 +#: lib/towerops_web/live/maintenance_live/show.html.heex:84 +#, elixir-autogen, elixir-format +msgid "Scope" +msgstr "" + +#: lib/towerops_web/components/layouts.ex:398 +#, elixir-autogen, elixir-format +msgid "Search" +msgstr "" + +#: lib/towerops_web/live/maintenance_live/form.html.heex:101 +#, elixir-autogen, elixir-format +msgid "Select a device..." +msgstr "" + +#: lib/towerops_web/live/maintenance_live/form.html.heex:92 +#, elixir-autogen, elixir-format +msgid "Select a site..." +msgstr "" + +#: lib/towerops_web/live/alert_live/index.html.heex:198 +#, elixir-autogen, elixir-format, fuzzy +msgid "Select all" +msgstr "Select All" + +#: lib/towerops_web/live/onboarding_live.html.heex:65 +#, elixir-autogen, elixir-format +msgid "Set organization-wide SNMP defaults. Can be overridden per-site or per-device." +msgstr "" + +#: lib/towerops_web/live/onboarding_live.ex:30 +#, elixir-autogen, elixir-format +msgid "Setup" +msgstr "" + +#: lib/towerops_web/live/onboarding_live.ex:211 +#, elixir-autogen, elixir-format +msgid "Setup complete" +msgstr "" + +#: lib/towerops_web/live/site_live/show.html.heex:484 +#, elixir-autogen, elixir-format +msgid "Site Latency — Last 24 Hours" +msgstr "" + +#: lib/towerops_web/live/onboarding_live.ex:101 +#, elixir-autogen, elixir-format +msgid "Site created" +msgstr "" + +#: lib/towerops_web/live/onboarding_live.html.heex:140 +#, elixir-autogen, elixir-format +msgid "Sites represent physical locations — tower sites, POPs, data centers, etc." +msgstr "" + +#: lib/towerops_web/live/onboarding_live.html.heex:124 +#: lib/towerops_web/live/onboarding_live.html.heex:181 +#: lib/towerops_web/live/onboarding_live.html.heex:281 +#, elixir-autogen, elixir-format +msgid "Skip" +msgstr "" + +#: lib/towerops_web/live/onboarding_live.html.heex:301 +#, elixir-autogen, elixir-format +msgid "Skip — I'll set this up later" +msgstr "" + +#: lib/towerops_web/live/alert_live/index.html.heex:97 +#, elixir-autogen, elixir-format, fuzzy +msgid "Sort" +msgstr "or" + +#: lib/towerops_web/controllers/user_registration_html/new.html.heex:12 +#, elixir-autogen, elixir-format +msgid "Start monitoring your network in minutes." +msgstr "" + +#: lib/towerops_web/live/maintenance_live/form.html.heex:112 +#, elixir-autogen, elixir-format +msgid "Starts At" +msgstr "" + +#: lib/towerops_web/live/dashboard_live.html.heex:508 +#: lib/towerops_web/live/device_live/index.html.heex:302 +#: lib/towerops_web/live/site_live/show.html.heex:384 +#, elixir-autogen, elixir-format +msgid "Subs" +msgstr "" + +#: lib/towerops_web/live/maintenance_live/show.html.heex:119 +#, elixir-autogen, elixir-format +msgid "Suppress Alerts" +msgstr "" + +#: lib/towerops_web/live/maintenance_live/form.html.heex:129 +#, elixir-autogen, elixir-format +msgid "Suppress alerts during this window" +msgstr "" + +#: lib/towerops_web/components/layouts.ex:239 +#, elixir-autogen, elixir-format, fuzzy +msgid "Switch Organization" +msgstr "Site Organization" + +#: lib/towerops_web/live/onboarding_live.html.heex:353 +#, elixir-autogen, elixir-format, fuzzy +msgid "Systemd" +msgstr "System OIDs" + +#: lib/towerops_web/live/org/settings_live.html.heex:821 +#, elixir-autogen, elixir-format +msgid "Technician" +msgstr "" + +#: lib/towerops_web/live/onboarding_live.html.heex:310 +#, elixir-autogen, elixir-format +msgid "The TowerOps agent polls your network devices via SNMP. Deploy it on a host with network access to your infrastructure." +msgstr "" + +#: lib/towerops_web/live/maintenance_live/show.html.heex:28 +#, elixir-autogen, elixir-format +msgid "This maintenance window is currently in effect. Alerts are being suppressed." +msgstr "" + +#: lib/towerops_web/live/maintenance_live/index.html.heex:92 +#: lib/towerops_web/live/maintenance_live/show.html.heex:92 +#, elixir-autogen, elixir-format +msgid "Time Range" +msgstr "" + +#: lib/towerops_web/live/alert_live/index.html.heex:397 +#, elixir-autogen, elixir-format, fuzzy +msgid "Timeline" +msgstr "Timezone" + +#: lib/towerops_web/components/layouts.ex:576 +#, elixir-autogen, elixir-format +msgid "Tools" +msgstr "" + +#: lib/towerops_web/live/admin/dashboard_live.html.heex:68 +#, elixir-autogen, elixir-format +msgid "Tracked errors and exceptions" +msgstr "" + +#: lib/towerops_web/live/alert_live/index.html.heex:404 +#, elixir-autogen, elixir-format +msgid "Triggered" +msgstr "" + +#: lib/towerops_web/live/maintenance_live/show.ex:29 +#, elixir-autogen, elixir-format +msgid "Unable to delete maintenance window" +msgstr "" + +#: lib/towerops_web/live/alert_live/index.html.heex:30 +#, elixir-autogen, elixir-format +msgid "Unresolved" +msgstr "" + +#: lib/towerops_web/live/maintenance_live/index.html.heex:50 +#, elixir-autogen, elixir-format +msgid "Upcoming" +msgstr "" + +#: lib/towerops_web/components/layouts.ex:468 +#, elixir-autogen, elixir-format +msgid "User Settings" +msgstr "" + +#: lib/towerops_web/live/site_live/show.html.heex:63 +#, elixir-autogen, elixir-format +msgid "View on Map" +msgstr "" + +#: lib/towerops_web/components/layouts.ex:484 +#, elixir-autogen, elixir-format +msgid "What's New" +msgstr "" + +#: lib/towerops_web/live/org/integrations_live.html.heex:166 +#, elixir-autogen, elixir-format +msgid "Which billing platform does your organization use?" +msgstr "" + +#: lib/towerops_web/live/maintenance_live/show.html.heex:109 +#: lib/towerops_web/live/maintenance_live/show.html.heex:124 +#, elixir-autogen, elixir-format +msgid "Yes" +msgstr "" + +#: lib/towerops_web/controllers/user_session_controller.ex:129 +#, elixir-autogen, elixir-format, fuzzy +msgid "You don't have access to this organization." +msgstr "You don't have access to this device" + +#: lib/towerops_web/live/org/settings_live.html.heex:1565 +#, elixir-autogen, elixir-format +msgid "Your Sonar instance URL and API token from the Sonar admin panel." +msgstr "" + +#: lib/towerops_web/live/org/settings_live.html.heex:1670 +#, elixir-autogen, elixir-format +msgid "Your Splynx instance URL, API key, and API secret. Find these in Splynx under Administration → API Keys." +msgstr "" + +#: lib/towerops_web/live/site_live/show.html.heex:103 +#, elixir-autogen, elixir-format, fuzzy +msgid "down" +msgstr "Down" + +#: lib/towerops_web/live/maintenance_live/form.html.heex:145 +#, elixir-autogen, elixir-format +msgid "e.g., FREQ=WEEKLY;BYDAY=SU" +msgstr "" + +#: lib/towerops_web/live/maintenance_live/form.html.heex:32 +#, elixir-autogen, elixir-format +msgid "e.g., Tower firmware upgrade" +msgstr "" + +#: lib/towerops_web/live/alert_live/index.html.heex:142 +#, elixir-autogen, elixir-format, fuzzy +msgid "selected" +msgstr "Delete" + +#: lib/towerops_web/controllers/user_session_html/new.html.heex:22 +#, elixir-autogen, elixir-format +msgid "— WISP Network Operator" +msgstr "" diff --git a/priv/gettext/en/LC_MESSAGES/equipment.po b/priv/gettext/en/LC_MESSAGES/equipment.po index 317a2ec7..e0fbeb6f 100644 --- a/priv/gettext/en/LC_MESSAGES/equipment.po +++ b/priv/gettext/en/LC_MESSAGES/equipment.po @@ -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" diff --git a/priv/gettext/equipment.pot b/priv/gettext/equipment.pot index eacce903..9f127df7 100644 --- a/priv/gettext/equipment.pot +++ b/priv/gettext/equipment.pot @@ -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 "" diff --git a/priv/gettext/es/LC_MESSAGES/admin.po b/priv/gettext/es/LC_MESSAGES/admin.po index f8f4e95e..e782e009 100644 --- a/priv/gettext/es/LC_MESSAGES/admin.po +++ b/priv/gettext/es/LC_MESSAGES/admin.po @@ -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." diff --git a/priv/gettext/es/LC_MESSAGES/auth.po b/priv/gettext/es/LC_MESSAGES/auth.po index 83d38e3c..1d2dddea 100644 --- a/priv/gettext/es/LC_MESSAGES/auth.po +++ b/priv/gettext/es/LC_MESSAGES/auth.po @@ -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 "" diff --git a/priv/gettext/es/LC_MESSAGES/default.po b/priv/gettext/es/LC_MESSAGES/default.po index a4e1695e..28b5e3dc 100644 --- a/priv/gettext/es/LC_MESSAGES/default.po +++ b/priv/gettext/es/LC_MESSAGES/default.po @@ -53,18 +53,19 @@ msgid_plural "%{count}y ago" msgstr[0] "hace %{count} año" msgstr[1] "hace %{count} años" -#: lib/towerops_web/components/core_components.ex:491 -#: lib/towerops_web/live/device_live/index.html.heex:606 -#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:162 -#: lib/towerops_web/live/org/preseem_devices_live.html.heex:153 -#: lib/towerops_web/live/org/settings_live.html.heex:640 -#: lib/towerops_web/live/org/settings_live.html.heex:717 +#: lib/towerops_web/components/core_components.ex:540 +#: lib/towerops_web/live/alert_live/index.html.heex:238 +#: lib/towerops_web/live/device_live/index.html.heex:653 +#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:166 +#: lib/towerops_web/live/org/preseem_devices_live.html.heex:155 +#: lib/towerops_web/live/org/settings_live.html.heex:681 +#: lib/towerops_web/live/org/settings_live.html.heex:758 #, elixir-autogen, elixir-format msgid "Actions" msgstr "Acciones" -#: lib/towerops_web/components/layouts.ex:603 -#: lib/towerops_web/components/layouts.ex:615 +#: lib/towerops_web/components/layouts.ex:773 +#: lib/towerops_web/components/layouts.ex:785 #, elixir-autogen, elixir-format msgid "Attempting to reconnect" msgstr "Intentando reconectar" @@ -77,12 +78,12 @@ msgstr "Intentando reconectar" msgid "Never" msgstr "Nunca" -#: lib/towerops_web/components/layouts.ex:610 +#: lib/towerops_web/components/layouts.ex:780 #, elixir-autogen, elixir-format msgid "Something went wrong!" msgstr "¡Algo salió mal!" -#: lib/towerops_web/components/layouts.ex:598 +#: lib/towerops_web/components/layouts.ex:768 #, elixir-autogen, elixir-format msgid "We can't find the internet" msgstr "No encontramos conexión a internet" @@ -92,47 +93,47 @@ msgstr "No encontramos conexión a internet" msgid "close" msgstr "cerrar" -#: lib/towerops_web/controllers/user_session_html/new.html.heex:88 +#: lib/towerops_web/controllers/user_session_html/new.html.heex:131 #, elixir-autogen, elixir-format msgid "or" msgstr "o" -#: lib/towerops_web/components/consent_prompt.ex:105 +#: lib/towerops_web/components/consent_prompt.ex:106 #, elixir-autogen, elixir-format msgid "Accept and Continue" msgstr "Aceptar y continuar" -#: lib/towerops_web/components/consent_prompt.ex:89 +#: lib/towerops_web/components/consent_prompt.ex:90 #, elixir-autogen, elixir-format msgid "By accepting, you acknowledge that you have read and agree to the updated policies. You can review your consent history at any time from your account settings." msgstr "Al aceptar, reconoces que has leído y aceptas las políticas actualizadas. Puedes revisar tu historial de consentimiento en cualquier momento desde la configuración de tu cuenta." -#: lib/towerops_web/components/consent_prompt.ex:72 +#: lib/towerops_web/components/consent_prompt.ex:73 #, elixir-autogen, elixir-format msgid "I agree to the updated" msgstr "Acepto las actualizaciones de" -#: lib/towerops_web/components/consent_prompt.ex:117 +#: lib/towerops_web/components/consent_prompt.ex:118 #, elixir-autogen, elixir-format msgid "Policy" msgstr "Política" -#: lib/towerops_web/components/consent_prompt.ex:115 +#: lib/towerops_web/components/consent_prompt.ex:116 #, elixir-autogen, elixir-format msgid "Privacy Policy" msgstr "Política de privacidad" -#: lib/towerops_web/components/consent_prompt.ex:116 +#: lib/towerops_web/components/consent_prompt.ex:117 #, elixir-autogen, elixir-format msgid "Terms of Service" msgstr "Términos de servicio" -#: lib/towerops_web/components/consent_prompt.ex:44 +#: lib/towerops_web/components/consent_prompt.ex:45 #, elixir-autogen, elixir-format msgid "Updated Policies - Action Required" msgstr "Políticas actualizadas - Acción requerida" -#: lib/towerops_web/components/consent_prompt.ex:48 +#: lib/towerops_web/components/consent_prompt.ex:49 #, elixir-autogen, elixir-format msgid "We've updated our policies. Please review and accept the changes to continue using Towerops." msgstr "Hemos actualizado nuestras políticas. Revisa y acepta los cambios para seguir usando Towerops." @@ -162,60 +163,68 @@ msgstr "Ya existe un dispositivo con esta dirección IP:" msgid "A link to confirm your email change has been sent to the new address." msgstr "Se ha enviado un enlace para confirmar el cambio de correo a la nueva dirección." -#: lib/towerops_web/live/user_settings_live.html.heex:65 +#: lib/towerops_web/live/user_settings_live.html.heex:73 #, elixir-autogen, elixir-format msgid "API" msgstr "API" -#: lib/towerops_web/live/org/integrations_live.html.heex:192 +#: lib/towerops_web/live/onboarding_live.html.heex:259 +#: lib/towerops_web/live/onboarding_live.html.heex:270 +#: lib/towerops_web/live/org/integrations_live.html.heex:239 +#: lib/towerops_web/live/org/integrations_live.html.heex:571 +#: lib/towerops_web/live/org/settings_live.html.heex:1691 #, elixir-autogen, elixir-format msgid "API Key" msgstr "Clave de API" -#: lib/towerops_web/live/device_live/form.html.heex:679 -#: lib/towerops_web/live/org/settings_live.html.heex:404 -#: lib/towerops_web/live/site_live/form.html.heex:412 +#: lib/towerops_web/live/device_live/form.html.heex:694 +#: lib/towerops_web/live/org/settings_live.html.heex:428 +#: lib/towerops_web/live/site_live/form.html.heex:428 #, elixir-autogen, elixir-format msgid "API Port" msgstr "Puerto de API" -#: lib/towerops_web/live/org/settings_live.html.heex:1119 +#: lib/towerops_web/live/onboarding_live.html.heex:248 +#: lib/towerops_web/live/org/integrations_live.html.heex:230 +#: lib/towerops_web/live/org/settings_live.html.heex:1199 +#: lib/towerops_web/live/org/settings_live.html.heex:1583 #, elixir-autogen, elixir-format msgid "API Token" msgstr "Token de API" -#: lib/towerops_web/live/user_settings_live.html.heex:1388 +#: lib/towerops_web/live/user_settings_live.html.heex:1441 #, elixir-autogen, elixir-format msgid "API Token Created" msgstr "Token de API creado" -#: lib/towerops_web/live/user_settings_live.html.heex:526 +#: lib/towerops_web/live/user_settings_live.html.heex:551 #, elixir-autogen, elixir-format msgid "API Tokens" msgstr "Tokens de API" -#: lib/towerops_web/live/device_live/show.html.heex:152 -#: lib/towerops_web/live/device_live/show.html.heex:1419 +#: lib/towerops_web/live/device_live/show.html.heex:187 +#: lib/towerops_web/live/device_live/show.html.heex:1534 #, elixir-autogen, elixir-format msgid "ARP Table" msgstr "Tabla ARP" -#: lib/towerops_web/live/device_live/show.html.heex:2759 +#: lib/towerops_web/live/device_live/show.html.heex:2896 #, elixir-autogen, elixir-format msgid "Access Point Details" msgstr "Detalles del punto de acceso" -#: lib/towerops_web/live/graph_live/show.ex:811 +#: lib/towerops_web/live/graph_live/show.ex:815 #, elixir-autogen, elixir-format msgid "Access to device revoked" msgstr "Acceso al dispositivo revocado" -#: lib/towerops_web/live/user_settings_live.html.heex:41 +#: lib/towerops_web/components/layouts.ex:595 +#: lib/towerops_web/live/user_settings_live.html.heex:43 #, elixir-autogen, elixir-format msgid "Account" msgstr "Cuenta" -#: lib/towerops_web/live/device_live/show.html.heex:2545 +#: lib/towerops_web/live/device_live/show.html.heex:2682 #, elixir-autogen, elixir-format msgid "Account ID" msgstr "ID de cuenta" @@ -242,48 +251,39 @@ msgstr "¡Cuenta creada correctamente. Bienvenido a %{org}!" msgid "Account created! Please check your email to verify your account." msgstr "¡Cuenta creada! Revisa tu correo para verificar tu cuenta." -#: lib/towerops_web/live/dashboard_live.html.heex:432 -#, elixir-autogen, elixir-format -msgid "Ack" -msgstr "Reconocer" - -#: lib/towerops_web/live/admin/dashboard_live.html.heex:103 +#: lib/towerops_web/live/admin/dashboard_live.html.heex:122 #, elixir-autogen, elixir-format msgid "Action" msgstr "Acción" #: lib/towerops_web/live/insights_live/index.html.heex:33 +#: lib/towerops_web/live/maintenance_live/index.html.heex:39 #: lib/towerops_web/live/org/preseem_insights_live.html.heex:44 #, elixir-autogen, elixir-format msgid "Active" msgstr "Activo" -#: lib/towerops_web/live/dashboard_live.html.heex:366 +#: lib/towerops_web/live/site_live/show.html.heex:117 #, elixir-autogen, elixir-format msgid "Active Alerts" msgstr "Alertas activas" -#: lib/towerops_web/live/dashboard_live.html.heex:310 -#, elixir-autogen, elixir-format -msgid "Active Incidents" -msgstr "Incidentes activos" - #: lib/towerops_web/live/admin/monitoring_live.html.heex:43 #, elixir-autogen, elixir-format msgid "Active Jobs" msgstr "Trabajos activos" -#: lib/towerops_web/live/user_settings_live.html.heex:737 +#: lib/towerops_web/live/user_settings_live.html.heex:770 #, elixir-autogen, elixir-format msgid "Active Sessions" msgstr "Sesiones activas" -#: lib/towerops_web/live/trace_live/index.html.heex:329 +#: lib/towerops_web/live/trace_live/index.html.heex:342 #, elixir-autogen, elixir-format msgid "Active alerts on device" msgstr "Alertas activas en el dispositivo" -#: lib/towerops_web/live/activity_feed_live.ex:33 +#: lib/towerops_web/live/activity_feed_live.ex:35 #: lib/towerops_web/live/activity_feed_live.html.heex:13 #, elixir-autogen, elixir-format msgid "Activity Feed" @@ -294,28 +294,28 @@ msgstr "Feed de actividad" msgid "Activity Log" msgstr "Registro de actividad" -#: lib/towerops_web/live/user_settings_live.html.heex:1472 +#: lib/towerops_web/live/user_settings_live.html.heex:1525 #, elixir-autogen, elixir-format msgid "Add Authenticator Device" msgstr "Agregar dispositivo autenticador" -#: lib/towerops_web/live/dashboard_live.html.heex:66 -#: lib/towerops_web/live/dashboard_live.html.heex:78 +#: lib/towerops_web/live/dashboard_live.html.heex:69 +#: lib/towerops_web/live/dashboard_live.html.heex:81 #, elixir-autogen, elixir-format msgid "Add Devices" msgstr "Agregar dispositivos" -#: lib/towerops_web/live/org/settings_live.html.heex:1503 +#: lib/towerops_web/live/org/settings_live.html.heex:1827 #, elixir-autogen, elixir-format msgid "Add Integration" msgstr "Agregar integración" -#: lib/towerops_web/live/user_settings_live.html.heex:627 +#: lib/towerops_web/live/user_settings_live.html.heex:659 #, 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/live/org/settings_live.html.heex:1555 +#: lib/towerops_web/live/org/settings_live.html.heex:1888 #, elixir-autogen, elixir-format msgid "Add a subscription with the Webhook URL above" msgstr "Agrega una suscripción con la URL de Webhook de arriba" @@ -335,12 +335,12 @@ msgstr "Agrega dispositivos con SNMP habilitado para empezar a construir tu mapa msgid "Add geographic coordinates to enable network mapping and spatial analysis." msgstr "Agrega coordenadas geográficas para habilitar el mapeo de red y análisis espacial." -#: lib/towerops_web/live/dashboard_live.html.heex:80 +#: lib/towerops_web/live/dashboard_live.html.heex:83 #, elixir-autogen, elixir-format msgid "Add network devices to monitor" msgstr "Agrega dispositivos de red para monitorear" -#: lib/towerops_web/live/dashboard_live.html.heex:68 +#: lib/towerops_web/live/dashboard_live.html.heex:71 #, elixir-autogen, elixir-format msgid "Add routers, switches, and servers to your sites" msgstr "Agrega routers, switches y servidores a tus sitios" @@ -350,12 +350,12 @@ msgstr "Agrega routers, switches y servidores a tus sitios" msgid "Add to Allowlist" msgstr "Agregar a lista de permitidos" -#: lib/towerops_web/live/user_settings_live.html.heex:1047 +#: lib/towerops_web/live/user_settings_live.html.heex:1093 #, elixir-autogen, elixir-format msgid "Add your first authenticator app to enable two-factor authentication." msgstr "Agrega tu primera app de autenticación para habilitar la autenticación de dos factores." -#: lib/towerops_web/live/site_live/show.html.heex:261 +#: lib/towerops_web/live/site_live/show.html.heex:366 #, elixir-autogen, elixir-format msgid "Add your first device" msgstr "Agrega tu primer dispositivo" @@ -376,6 +376,7 @@ msgstr "Agregado por" msgid "Added Devices" msgstr "Dispositivos agregados" +#: lib/towerops_web/live/onboarding_live.html.heex:155 #: lib/towerops_web/live/site_live/form.html.heex:81 #, elixir-autogen, elixir-format msgid "Address" @@ -386,13 +387,13 @@ msgstr "Dirección" msgid "Address geocoded successfully!" msgstr "¡Dirección geocodificada correctamente!" -#: lib/towerops_web/live/device_live/show.html.heex:1659 -#: lib/towerops_web/live/device_live/show.html.heex:1716 +#: lib/towerops_web/live/device_live/show.html.heex:1778 +#: lib/towerops_web/live/device_live/show.html.heex:1837 #, elixir-autogen, elixir-format msgid "Addresses" msgstr "Direcciones" -#: lib/towerops_web/live/org/settings_live.html.heex:768 +#: lib/towerops_web/live/org/settings_live.html.heex:812 #, elixir-autogen, elixir-format msgid "Admin" msgstr "Administración" @@ -408,12 +409,12 @@ msgstr "Panel de administración" msgid "Affected devices:" msgstr "Dispositivos afectados:" -#: lib/towerops_web/live/site_live/form.html.heex:191 +#: lib/towerops_web/live/site_live/form.html.heex:193 #, elixir-autogen, elixir-format msgid "Agent Configuration" msgstr "Configuración de agente" -#: lib/towerops_web/live/agent_live/show.html.heex:231 +#: lib/towerops_web/live/agent_live/show.html.heex:241 #, elixir-autogen, elixir-format msgid "Agent Details" msgstr "Detalles del agente" @@ -425,33 +426,33 @@ msgstr "Detalles y salud del agente" #: lib/towerops_web/live/agent_live/edit.html.heex:34 #: lib/towerops_web/live/agent_live/index.html.heex:27 -#: lib/towerops_web/live/agent_live/index.html.heex:402 +#: lib/towerops_web/live/agent_live/index.html.heex:416 #, elixir-autogen, elixir-format msgid "Agent Name" msgstr "Nombre del agente" -#: lib/towerops_web/live/agent_live/index.html.heex:384 +#: lib/towerops_web/live/agent_live/index.html.heex:398 #, elixir-autogen, elixir-format msgid "Agent Setup Instructions" msgstr "Instrucciones de configuración del agente" -#: lib/towerops_web/live/org/settings_live.html.heex:65 +#: lib/towerops_web/live/org/settings_live.html.heex:69 #, elixir-autogen, elixir-format msgid "Agents" msgstr "Agentes" #: lib/towerops_web/live/admin/agent_live/index.html.heex:6 -#: lib/towerops_web/live/admin/dashboard_live.html.heex:81 +#: lib/towerops_web/live/admin/dashboard_live.html.heex:98 #, elixir-autogen, elixir-format msgid "Agents across all organizations and cloud pollers" msgstr "Agentes de todas las organizaciones y cloud pollers" -#: lib/towerops_web/live/trace_live/index.html.heex:248 +#: lib/towerops_web/live/trace_live/index.html.heex:261 #, elixir-autogen, elixir-format msgid "Airtime" msgstr "Tiempo de aire" -#: lib/towerops_web/live/device_live/show.html.heex:2800 +#: lib/towerops_web/live/device_live/show.html.heex:2937 #, elixir-autogen, elixir-format msgid "Airtime Utilization" msgstr "Utilización del tiempo de aire" @@ -466,28 +467,32 @@ msgstr "Alerta reconocida" msgid "Alert not found" msgstr "Alerta no encontrada" +#: lib/towerops_web/components/layouts.ex:281 +#: lib/towerops_web/components/layouts.ex:409 +#: lib/towerops_web/components/layouts.ex:566 #: lib/towerops_web/live/alert_live/index.ex:26 -#: lib/towerops_web/live/dashboard_live.html.heex:200 +#: lib/towerops_web/live/alert_live/index.html.heex:9 #, elixir-autogen, elixir-format msgid "Alerts" msgstr "Alertas" -#: lib/towerops_web/live/dashboard_live.html.heex:465 +#: lib/towerops_web/live/alert_live/index.html.heex:66 #: lib/towerops_web/live/insights_live/index.html.heex:69 #: lib/towerops_web/live/insights_live/index.html.heex:105 +#: lib/towerops_web/live/maintenance_live/index.html.heex:28 #: lib/towerops_web/live/org/preseem_devices_live.html.heex:55 #: lib/towerops_web/live/org/preseem_insights_live.html.heex:80 #, elixir-autogen, elixir-format msgid "All" msgstr "Todos" -#: lib/towerops_web/live/admin/agent_live/index.ex:23 +#: lib/towerops_web/live/admin/agent_live/index.ex:25 #: lib/towerops_web/live/admin/agent_live/index.html.heex:4 #, elixir-autogen, elixir-format msgid "All Agents" msgstr "Todos los agentes" -#: lib/towerops_web/live/alert_live/index.html.heex:74 +#: lib/towerops_web/live/alert_live/index.html.heex:169 #, elixir-autogen, elixir-format msgid "All Clear!" msgstr "¡Todo en orden!" @@ -497,7 +502,7 @@ msgstr "¡Todo en orden!" msgid "All Devices" msgstr "Todos los dispositivos" -#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:224 +#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:226 #, elixir-autogen, elixir-format msgid "All Gaiia inventory items are mapped to Towerops devices." msgstr "Todos los elementos de inventario de Gaiia están vinculados a dispositivos de Towerops." @@ -508,7 +513,7 @@ msgstr "Todos los elementos de inventario de Gaiia están vinculados a dispositi msgid "All Organizations" msgstr "Todas las organizaciones" -#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:124 +#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:126 #, elixir-autogen, elixir-format msgid "All Towerops devices have matching Gaiia inventory items." msgstr "Todos los dispositivos de Towerops tienen elementos de inventario de Gaiia correspondientes." @@ -524,12 +529,12 @@ msgstr "Todos los usuarios" msgid "All access points are matched. Nice!" msgstr "¡Todos los puntos de acceso están vinculados!" -#: lib/towerops_web/live/org/settings_live.html.heex:200 +#: lib/towerops_web/live/org/settings_live.html.heex:210 #, elixir-autogen, elixir-format msgid "All devices will be removed from their current sites and assigned directly to the organization." msgstr "Todos los dispositivos serán removidos de sus sitios actuales y asignados directamente a la organización." -#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:121 +#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:123 #, elixir-autogen, elixir-format msgid "All entities are mapped." msgstr "Todas las entidades están vinculadas." @@ -549,27 +554,27 @@ msgstr "IPs y rangos CIDR permitidos" msgid "Allowlist" msgstr "Lista de permitidos" -#: lib/towerops_web/live/agent_live/index.html.heex:178 +#: lib/towerops_web/live/agent_live/index.html.heex:182 #, elixir-autogen, elixir-format msgid "Application-wide agents that can poll devices for any organization. Only visible and manageable by superadmins." msgstr "Agentes globales que pueden sondear dispositivos de cualquier organización. Solo visibles y gestionables por superadministradores." -#: lib/towerops_web/live/org/settings_live.ex:142 +#: lib/towerops_web/live/org/settings_live.ex:176 #, elixir-autogen, elixir-format msgid "Applied SNMP configuration to %{count} device records across all sites" msgstr "Configuración SNMP aplicada a %{count} registros de dispositivos en todos los sitios" -#: lib/towerops_web/live/org/settings_live.ex:149 +#: lib/towerops_web/live/org/settings_live.ex:184 #, elixir-autogen, elixir-format msgid "Applied default agent to %{count} device records across all sites" msgstr "Agente predeterminado aplicado a %{count} registros de dispositivos en todos los sitios" -#: lib/towerops_web/live/org/settings_live.html.heex:515 +#: lib/towerops_web/live/org/settings_live.html.heex:551 #, elixir-autogen, elixir-format msgid "Apply Default Agent to All Devices" msgstr "Aplicar agente predeterminado a todos los dispositivos" -#: lib/towerops_web/live/org/settings_live.html.heex:342 +#: lib/towerops_web/live/org/settings_live.html.heex:364 #, elixir-autogen, elixir-format msgid "Apply SNMP Config to All Devices" msgstr "Aplicar configuración SNMP a todos los dispositivos" @@ -579,77 +584,77 @@ msgstr "Aplicar configuración SNMP a todos los dispositivos" msgid "Approaching device limit" msgstr "Acercándose al límite de dispositivos" -#: lib/towerops_web/live/user_settings_live.html.heex:583 +#: lib/towerops_web/live/user_settings_live.html.heex:612 #, elixir-autogen, elixir-format msgid "Are you sure you want to delete this API token? This action cannot be undone." msgstr "¿Seguro que quieres eliminar este token de API? Esta acción no se puede deshacer." -#: lib/towerops_web/live/agent_live/index.html.heex:157 +#: lib/towerops_web/live/agent_live/index.html.heex:158 #, elixir-autogen, elixir-format msgid "Are you sure you want to delete this agent? All device assignments will be removed, and devices will fall back to site/organization defaults or cloud polling." msgstr "¿Seguro que quieres eliminar este agente? Todas las asignaciones de dispositivos serán removidas y los dispositivos usarán los valores predeterminados del sitio/organización o sondeo en la nube." -#: lib/towerops_web/live/device_live/show.html.heex:1906 +#: lib/towerops_web/live/device_live/show.html.heex:2030 #, elixir-autogen, elixir-format msgid "Are you sure you want to delete this backup? This action cannot be undone." msgstr "¿Seguro que quieres eliminar este respaldo? Esta acción no se puede deshacer." -#: lib/towerops_web/live/agent_live/index.html.heex:267 +#: lib/towerops_web/live/agent_live/index.html.heex:274 #, elixir-autogen, elixir-format msgid "Are you sure you want to delete this cloud poller? This will affect all organizations using it." msgstr "¿Seguro que quieres eliminar este cloud poller? Esto afectará a todas las organizaciones que lo usen." -#: lib/towerops_web/live/device_live/form.html.heex:742 +#: lib/towerops_web/live/device_live/form.html.heex:766 #, elixir-autogen, elixir-format msgid "Are you sure you want to delete this device? All monitoring history and alerts will be permanently deleted." msgstr "¿Seguro que quieres eliminar este dispositivo? Todo el historial de monitoreo y alertas se eliminará permanentemente." -#: lib/towerops_web/live/site_live/form.html.heex:457 +#: lib/towerops_web/live/site_live/form.html.heex:482 #, elixir-autogen, elixir-format msgid "Are you sure you want to delete this site? This will also delete all devices at this site." msgstr "¿Seguro que quieres eliminar este sitio? También se eliminarán todos los dispositivos en este sitio." -#: lib/towerops_web/live/admin/user_live/index.html.heex:32 +#: lib/towerops_web/live/admin/user_live/index.html.heex:34 #, elixir-autogen, elixir-format msgid "Are you sure you want to delete this user?" msgstr "¿Seguro que quieres eliminar este usuario?" -#: lib/towerops_web/live/user_settings_live.html.heex:684 +#: lib/towerops_web/live/user_settings_live.html.heex:716 #, elixir-autogen, elixir-format msgid "Are you sure you want to remove this device?" msgstr "¿Seguro que quieres eliminar este dispositivo?" -#: lib/towerops_web/live/agent_live/show.html.heex:21 +#: lib/towerops_web/live/agent_live/show.html.heex:26 #, elixir-autogen, elixir-format msgid "Are you sure you want to restart this agent? It will disconnect and restart its container." msgstr "¿Seguro que quieres reiniciar este agente? Se desconectará y reiniciará su contenedor." -#: lib/towerops_web/live/agent_live/show.html.heex:13 +#: lib/towerops_web/live/agent_live/show.html.heex:14 #, elixir-autogen, elixir-format msgid "Are you sure you want to update this agent? It will download and replace the binary." msgstr "¿Seguro que quieres actualizar este agente? Descargará y reemplazará el binario." -#: lib/towerops_web/live/org/integrations_live.html.heex:324 +#: lib/towerops_web/live/org/integrations_live.html.heex:385 #, elixir-autogen, elixir-format msgid "Are you sure? Any existing Gaiia webhook using the current secret will stop working." msgstr "¿Estás seguro? Cualquier webhook de Gaiia que use el secreto actual dejará de funcionar." -#: lib/towerops_web/live/admin/org_live/index.html.heex:20 +#: lib/towerops_web/live/admin/org_live/index.html.heex:21 #, elixir-autogen, elixir-format msgid "Are you sure? This will delete all sites, device, and data for this organization." msgstr "¿Estás seguro? Esto eliminará todos los sitios, dispositivos y datos de esta organización." -#: lib/towerops_web/live/device_live/show.html.heex:1989 +#: lib/towerops_web/live/device_live/show.html.heex:2116 #, elixir-autogen, elixir-format msgid "Assign an agent to enable automatic backups." msgstr "Asigna un agente para habilitar respaldos automáticos." -#: lib/towerops_web/live/device_live/show.html.heex:1794 +#: lib/towerops_web/live/device_live/show.html.heex:1917 #, elixir-autogen, elixir-format msgid "Assign an agent to enable backups" msgstr "Asigna un agente para habilitar respaldos" -#: lib/towerops_web/live/device_live/form.html.heex:293 +#: lib/towerops_web/live/device_live/form.html.heex:295 #, elixir-autogen, elixir-format msgid "Assign this device to a remote agent for local SNMP polling. Leave empty to inherit from site or organization defaults." msgstr "Asigna este dispositivo a un agente remoto para sondeo SNMP local. Deja vacío para heredar del sitio o la organización." @@ -659,41 +664,43 @@ msgstr "Asigna este dispositivo a un agente remoto para sondeo SNMP local. Deja msgid "Audit Logs" msgstr "Registros de auditoría" -#: lib/towerops_web/live/device_live/form.html.heex:461 +#: lib/towerops_web/live/device_live/form.html.heex:470 #, elixir-autogen, elixir-format msgid "Auth Level" msgstr "Nivel de autenticación" -#: lib/towerops_web/live/device_live/form.html.heex:492 -#: lib/towerops_web/live/org/settings_live.html.heex:288 -#: lib/towerops_web/live/site_live/form.html.heex:312 +#: lib/towerops_web/live/device_live/form.html.heex:501 +#: lib/towerops_web/live/onboarding_live.html.heex:102 +#: lib/towerops_web/live/org/settings_live.html.heex:304 +#: lib/towerops_web/live/site_live/form.html.heex:324 #, elixir-autogen, elixir-format msgid "Auth Password" msgstr "Contraseña de autenticación" -#: lib/towerops_web/live/device_live/form.html.heex:476 -#: lib/towerops_web/live/org/settings_live.html.heex:273 -#: lib/towerops_web/live/site_live/form.html.heex:297 +#: lib/towerops_web/live/device_live/form.html.heex:485 +#: lib/towerops_web/live/onboarding_live.html.heex:95 +#: lib/towerops_web/live/org/settings_live.html.heex:289 +#: lib/towerops_web/live/site_live/form.html.heex:309 #, elixir-autogen, elixir-format msgid "Auth Protocol" msgstr "Protocolo de autenticación" -#: lib/towerops_web/live/agent_live/index.html.heex:411 +#: lib/towerops_web/live/agent_live/index.html.heex:425 #, elixir-autogen, elixir-format msgid "Authentication Token" msgstr "Token de autenticación" -#: lib/towerops_web/live/user_settings_live.html.heex:1032 +#: lib/towerops_web/live/user_settings_live.html.heex:1076 #, elixir-autogen, elixir-format msgid "Authenticator Apps" msgstr "Apps de autenticación" -#: lib/towerops_web/live/user_settings_live.html.heex:1139 +#: lib/towerops_web/live/user_settings_live.html.heex:1185 #, elixir-autogen, elixir-format msgid "Available Recovery Codes" msgstr "Códigos de recuperación disponibles" -#: lib/towerops_web/live/device_live/show.html.heex:684 +#: lib/towerops_web/live/device_live/show.html.heex:745 #, elixir-autogen, elixir-format msgid "Average Load" msgstr "Carga promedio" @@ -703,7 +710,7 @@ msgstr "Carga promedio" msgid "Avg Duration" msgstr "Duración promedio" -#: lib/towerops_web/live/device_live/show.html.heex:218 +#: lib/towerops_web/live/device_live/show.html.heex:253 #: lib/towerops_web/live/mikrotik_backup_live/compare.html.heex:21 #, elixir-autogen, elixir-format msgid "Backups" @@ -719,95 +726,97 @@ msgstr "Los respaldos no pertenecen a este dispositivo" msgid "Basic Information" msgstr "Información básica" -#: lib/towerops_web/live/user_settings_live.html.heex:218 +#: lib/towerops_web/live/user_settings_live.html.heex:231 #, elixir-autogen, elixir-format msgid "Berlin" msgstr "Berlín" -#: lib/towerops_web/live/device_live/show.html.heex:2590 +#: lib/towerops_web/live/device_live/show.html.heex:2727 #, elixir-autogen, elixir-format msgid "Billing Subscriptions" msgstr "Suscripciones de facturación" -#: lib/towerops_web/live/device_live/show.html.heex:2788 +#: lib/towerops_web/live/device_live/show.html.heex:2925 #, elixir-autogen, elixir-format msgid "Busy Hours" msgstr "Horas pico" #: lib/towerops_web/live/admin/security_live/index.html.heex:84 -#: lib/towerops_web/live/agent_live/edit.html.heex:79 +#: lib/towerops_web/live/agent_live/edit.html.heex:80 #: lib/towerops_web/live/agent_live/index.html.heex:47 -#: lib/towerops_web/live/agent_live/index.html.heex:355 -#: lib/towerops_web/live/device_live/form.html.heex:714 -#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:363 -#: lib/towerops_web/live/org/integrations_live.html.heex:247 -#: lib/towerops_web/live/org/preseem_devices_live.html.heex:280 -#: lib/towerops_web/live/org/settings_live.html.heex:553 -#: lib/towerops_web/live/org/settings_live.html.heex:678 -#: lib/towerops_web/live/org/settings_live.html.heex:1630 -#: lib/towerops_web/live/org_live/new.html.heex:35 -#: lib/towerops_web/live/site_live/form.html.heex:445 -#: lib/towerops_web/live/user_settings_live.html.heex:1251 -#: lib/towerops_web/live/user_settings_live.html.heex:1346 -#: lib/towerops_web/live/user_settings_live.html.heex:1503 -#: lib/towerops_web/live/user_settings_live.html.heex:1595 +#: lib/towerops_web/live/agent_live/index.html.heex:369 +#: lib/towerops_web/live/device_live/form.html.heex:733 +#: lib/towerops_web/live/maintenance_live/form.html.heex:155 +#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:394 +#: lib/towerops_web/live/org/integrations_live.html.heex:305 +#: lib/towerops_web/live/org/integrations_live.html.heex:625 +#: lib/towerops_web/live/org/preseem_devices_live.html.heex:291 +#: lib/towerops_web/live/org/settings_live.html.heex:589 +#: lib/towerops_web/live/org/settings_live.html.heex:719 +#: lib/towerops_web/live/org/settings_live.html.heex:1965 +#: lib/towerops_web/live/org_live/new.html.heex:38 +#: lib/towerops_web/live/site_live/form.html.heex:465 +#: lib/towerops_web/live/user_settings_live.html.heex:1302 +#: lib/towerops_web/live/user_settings_live.html.heex:1399 +#: lib/towerops_web/live/user_settings_live.html.heex:1556 +#: lib/towerops_web/live/user_settings_live.html.heex:1673 #, elixir-autogen, elixir-format msgid "Cancel" msgstr "Cancelar" -#: lib/towerops_web/live/org/settings_live.html.heex:675 +#: lib/towerops_web/live/org/settings_live.html.heex:716 #, elixir-autogen, elixir-format msgid "Cancel this invitation?" msgstr "¿Cancelar esta invitación?" -#: lib/towerops_web/live/org/settings_live.ex:231 +#: lib/towerops_web/live/org/settings_live.ex:267 #, elixir-autogen, elixir-format msgid "Cannot change the owner's role" msgstr "No se puede cambiar el rol del propietario" -#: lib/towerops_web/live/org/settings_live.ex:212 +#: lib/towerops_web/live/org/settings_live.ex:248 #, elixir-autogen, elixir-format msgid "Cannot remove the organization owner" msgstr "No se puede eliminar al propietario de la organización" -#: lib/towerops_web/live/trace_live/index.html.heex:238 +#: lib/towerops_web/live/trace_live/index.html.heex:251 #, elixir-autogen, elixir-format msgid "Capacity" msgstr "Capacidad" -#: lib/towerops_web/live/device_live/show.html.heex:2737 +#: lib/towerops_web/live/device_live/show.html.heex:2874 #, elixir-autogen, elixir-format msgid "Capacity Score" msgstr "Puntuación de capacidad" -#: lib/towerops_web/live/device_live/show.html.heex:2436 -#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:238 +#: lib/towerops_web/live/device_live/show.html.heex:2573 +#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:240 #, elixir-autogen, elixir-format msgid "Category" msgstr "Categoría" -#: lib/towerops_web/live/user_settings_live.html.heex:188 +#: lib/towerops_web/live/user_settings_live.html.heex:201 #, elixir-autogen, elixir-format msgid "Central Time (US & Canada)" msgstr "Hora central (EE. UU. y Canadá)" -#: lib/towerops_web/live/user_settings_live.html.heex:422 +#: lib/towerops_web/live/user_settings_live.html.heex:444 #, elixir-autogen, elixir-format msgid "Change Email" msgstr "Cambiar correo" -#: lib/towerops_web/live/user_settings_live.html.heex:432 +#: lib/towerops_web/live/user_settings_live.html.heex:454 #, elixir-autogen, elixir-format msgid "Change Password" msgstr "Cambiar contraseña" -#: lib/towerops_web/live/user_settings_live.html.heex:419 -#: lib/towerops_web/live/user_settings_live.html.heex:511 +#: lib/towerops_web/live/user_settings_live.html.heex:441 +#: lib/towerops_web/live/user_settings_live.html.heex:535 #, elixir-autogen, elixir-format msgid "Changing..." msgstr "Cambiando..." -#: lib/towerops_web/live/device_live/form.html.heex:229 +#: lib/towerops_web/live/device_live/form.html.heex:231 #, elixir-autogen, elixir-format msgid "Check Interval (seconds)" msgstr "Intervalo de verificación (segundos)" @@ -827,37 +836,37 @@ msgstr "La verificación no pertenece a este dispositivo" msgid "Check not found" msgstr "Verificación no encontrada" -#: lib/towerops_web/live/device_live/show.html.heex:286 +#: lib/towerops_web/live/device_live/show.html.heex:321 #, elixir-autogen, elixir-format msgid "Checks" msgstr "Verificaciones" -#: lib/towerops_web/live/site_live/show.html.heex:151 +#: lib/towerops_web/live/site_live/show.html.heex:253 #, elixir-autogen, elixir-format msgid "Child Sites" msgstr "Sitios secundarios" -#: lib/towerops_web/live/org/settings_live.html.heex:1142 +#: lib/towerops_web/live/org/settings_live.html.heex:1222 #, elixir-autogen, elixir-format msgid "Choose how data flows between TowerOps and NetBox. You can change this later." msgstr "Elige cómo fluyen los datos entre TowerOps y NetBox. Puedes cambiar esto después." -#: lib/towerops_web/live/device_live/form.html.heex:309 +#: lib/towerops_web/live/device_live/form.html.heex:313 #, elixir-autogen, elixir-format msgid "Choose monitoring mode and configure SNMP settings for detailed device information." msgstr "Elige el modo de monitoreo y configura SNMP para obtener información detallada del dispositivo." -#: lib/towerops_web/live/org/settings_live.html.heex:1236 +#: lib/towerops_web/live/org/settings_live.html.heex:1324 #, elixir-autogen, elixir-format msgid "Choose which NetBox objects participate in sync. Devices and sites are recommended at minimum." msgstr "Elige qué objetos de NetBox participan en la sincronización. Se recomiendan dispositivos y sitios como mínimo." -#: lib/towerops_web/live/user_settings_live.html.heex:332 +#: lib/towerops_web/live/user_settings_live.html.heex:348 #, elixir-autogen, elixir-format msgid "Choose which organization you see by default when logging in or navigating to pages without an organization context." msgstr "Elige qué organización ves por defecto al iniciar sesión o al navegar a páginas sin contexto de organización." -#: lib/towerops_web/live/device_live/show.html.heex:1957 +#: lib/towerops_web/live/device_live/show.html.heex:2084 #, elixir-autogen, elixir-format msgid "Clear" msgstr "Limpiar" @@ -872,23 +881,23 @@ msgstr "Arrastra para desplazar, desplázate para hacer zoom, haz clic en los no msgid "Click markers to view site details" msgstr "Haz clic en los marcadores para ver detalles del sitio" -#: lib/towerops_web/live/agent_live/index.html.heex:434 -#: lib/towerops_web/live/user_settings_live.html.heex:1417 +#: lib/towerops_web/live/agent_live/index.html.heex:448 +#: lib/towerops_web/live/user_settings_live.html.heex:1470 #, elixir-autogen, elixir-format msgid "Click the token to select all, or use the Copy button" msgstr "Haz clic en el token para seleccionar todo, o usa el botón Copiar" -#: lib/towerops_web/live/org/settings_live.html.heex:160 +#: lib/towerops_web/live/org/settings_live.html.heex:166 #, elixir-autogen, elixir-format msgid "Click to make this your default organization" msgstr "Haz clic para establecer como tu organización predeterminada" -#: lib/towerops_web/live/agent_live/index.html.heex:512 +#: lib/towerops_web/live/agent_live/index.html.heex:528 #, elixir-autogen, elixir-format msgid "Close" msgstr "Cerrar" -#: lib/towerops_web/live/device_live/show.html.heex:68 +#: lib/towerops_web/live/device_live/show.html.heex:76 #, elixir-autogen, elixir-format msgid "Cloud" msgstr "Nube" @@ -898,12 +907,13 @@ msgstr "Nube" msgid "Cloud Poller (Application-wide agent, not tied to this organization)" msgstr "Cloud Poller (agente global, no vinculado a esta organización)" -#: lib/towerops_web/live/agent_live/index.html.heex:175 +#: lib/towerops_web/live/agent_live/index.html.heex:179 #, elixir-autogen, elixir-format msgid "Cloud Pollers" msgstr "Cloud Pollers" -#: lib/towerops_web/live/device_live/form.html.heex:384 +#: lib/towerops_web/live/device_live/form.html.heex:391 +#: lib/towerops_web/live/onboarding_live.html.heex:81 #, elixir-autogen, elixir-format msgid "Community String" msgstr "Community String" @@ -918,12 +928,12 @@ msgstr "Comparar respaldos de configuración" msgid "Compare Gaiia inventory against Towerops device discovery. Reconciliation runs nightly." msgstr "Compara el inventario de Gaiia con el descubrimiento de dispositivos de Towerops. La reconciliación se ejecuta cada noche." -#: lib/towerops_web/live/device_live/show.html.heex:230 +#: lib/towerops_web/live/device_live/show.html.heex:265 #, elixir-autogen, elixir-format msgid "Config Timeline" msgstr "Línea de tiempo de configuración" -#: lib/towerops_web/live/device_live/show.html.heex:1773 +#: lib/towerops_web/live/device_live/show.html.heex:1896 #, elixir-autogen, elixir-format msgid "Configuration Backups" msgstr "Respaldos de configuración" @@ -933,27 +943,28 @@ msgstr "Respaldos de configuración" msgid "Configuration Differences" msgstr "Diferencias de configuración" -#: lib/towerops_web/live/org/integrations_live.html.heex:175 +#: lib/towerops_web/live/org/integrations_live.html.heex:152 +#: lib/towerops_web/live/org/integrations_live.html.heex:553 #, elixir-autogen, elixir-format msgid "Configure" msgstr "Configurar" -#: lib/towerops_web/live/device_live/form.html.heex:626 +#: lib/towerops_web/live/device_live/form.html.heex:639 #, elixir-autogen, elixir-format msgid "Configure MikroTik RouterOS API access. Works alongside SNMP for enhanced device management. SSH is used for device backups." msgstr "Configura el acceso a la API de MikroTik RouterOS. Funciona junto con SNMP para una gestión mejorada. SSH se usa para respaldos de dispositivos." -#: lib/towerops_web/live/device_live/form.html.heex:219 +#: lib/towerops_web/live/device_live/form.html.heex:221 #, elixir-autogen, elixir-format msgid "Configure how and how often this device should be monitored." msgstr "Configura cómo y con qué frecuencia se debe monitorear este dispositivo." -#: lib/towerops_web/live/device_live/show.html.heex:1585 +#: lib/towerops_web/live/device_live/show.html.heex:1702 #, elixir-autogen, elixir-format msgid "Configured VLANs" msgstr "VLANs configuradas" -#: lib/towerops_web/live/user_settings_live.html.heex:493 +#: lib/towerops_web/live/user_settings_live.html.heex:517 #, elixir-autogen, elixir-format msgid "Confirm password" msgstr "Confirmar contraseña" @@ -968,27 +979,29 @@ msgstr "Conecta Preseem o habilita el monitoreo SNMP para empezar." msgid "Connect third-party services to enhance your monitoring capabilities." msgstr "Conecta servicios de terceros para mejorar tus capacidades de monitoreo." -#: lib/towerops_web/live/device_live/show.html.heex:1083 +#: lib/towerops_web/live/device_live/show.html.heex:1150 #, elixir-autogen, elixir-format msgid "Connected Devices" msgstr "Dispositivos conectados" -#: lib/towerops_web/live/org/settings_live.html.heex:1096 +#: lib/towerops_web/live/org/settings_live.html.heex:1174 +#: lib/towerops_web/live/org/settings_live.html.heex:1561 +#: lib/towerops_web/live/org/settings_live.html.heex:1666 #, elixir-autogen, elixir-format msgid "Connection" msgstr "Conexión" -#: lib/towerops_web/live/org/settings_live.html.heex:1463 +#: lib/towerops_web/live/org/settings_live.html.heex:1787 #, elixir-autogen, elixir-format msgid "Connection Settings" msgstr "Configuración de conexión" -#: lib/towerops_web/live/device_live/form.html.heex:598 +#: lib/towerops_web/live/device_live/form.html.heex:611 #, elixir-autogen, elixir-format msgid "Connection failed" msgstr "Conexión fallida" -#: lib/towerops_web/live/device_live/form.html.heex:582 +#: lib/towerops_web/live/device_live/form.html.heex:595 #, elixir-autogen, elixir-format msgid "Connection successful!" msgstr "¡Conexión exitosa!" @@ -1003,23 +1016,23 @@ msgstr "Conexiones" msgid "Consent revoked successfully." msgstr "Consentimiento revocado correctamente." -#: lib/towerops_web/live/user_settings_live.html.heex:1496 +#: lib/towerops_web/live/user_settings_live.html.heex:1549 #, elixir-autogen, elixir-format msgid "Continue" msgstr "Continuar" -#: lib/towerops_web/live/agent_live/index.html.heex:430 -#: lib/towerops_web/live/user_settings_live.html.heex:1413 +#: lib/towerops_web/live/agent_live/index.html.heex:444 +#: lib/towerops_web/live/user_settings_live.html.heex:1466 #, elixir-autogen, elixir-format msgid "Copy" msgstr "Copiar" -#: lib/towerops_web/live/user_settings_live.html.heex:1392 +#: lib/towerops_web/live/user_settings_live.html.heex:1445 #, elixir-autogen, elixir-format msgid "Copy this token now. You won't be able to see it again." msgstr "Copia este token ahora. No podrás verlo de nuevo." -#: lib/towerops_web/live/device_live/show.html.heex:2228 +#: lib/towerops_web/live/device_live/show.html.heex:2357 #, elixir-autogen, elixir-format msgid "Copyable Raw Data" msgstr "Datos sin procesar (copiables)" @@ -1034,17 +1047,17 @@ msgstr "Identificación y ubicación del dispositivo." msgid "Could not accept invitation. You may already be a member." msgstr "No se pudo aceptar la invitación. Es posible que ya seas miembro." -#: lib/towerops_web/live/device_live/show.html.heex:967 +#: lib/towerops_web/live/device_live/show.html.heex:1031 #, elixir-autogen, elixir-format msgid "Counters" msgstr "Contadores" -#: lib/towerops_web/live/user_settings_live.html.heex:1292 +#: lib/towerops_web/live/user_settings_live.html.heex:1343 #, elixir-autogen, elixir-format msgid "Create API Token" msgstr "Crear token de API" -#: lib/towerops_web/live/user_settings_live.html.heex:528 +#: lib/towerops_web/live/user_settings_live.html.heex:554 #, elixir-autogen, elixir-format msgid "Create API tokens to access Towerops programmatically. Tokens are scoped to a specific organization." msgstr "Crea tokens de API para acceder a Towerops programáticamente. Los tokens están limitados a una organización específica." @@ -1059,12 +1072,12 @@ msgstr "Crear agente" msgid "Create New Agent" msgstr "Crear nuevo agente" -#: lib/towerops_web/live/user_settings_live.html.heex:1339 +#: lib/towerops_web/live/user_settings_live.html.heex:1392 #, elixir-autogen, elixir-format msgid "Create Token" msgstr "Crear token" -#: lib/towerops_web/live/dashboard_live.html.heex:55 +#: lib/towerops_web/live/dashboard_live.html.heex:58 #, elixir-autogen, elixir-format msgid "Create a Site" msgstr "Crear un sitio" @@ -1074,7 +1087,7 @@ msgstr "Crear un sitio" msgid "Create a new organization to manage your sites and devices" msgstr "Crea una nueva organización para gestionar tus sitios y dispositivos" -#: lib/towerops_web/live/org/settings_live.html.heex:533 +#: lib/towerops_web/live/org/settings_live.html.heex:569 #, elixir-autogen, elixir-format msgid "Create an agent" msgstr "Crear un agente" @@ -1086,22 +1099,23 @@ msgstr "Crea tu primer sitio para organizar dispositivos por ubicación de torre #: lib/towerops_web/live/admin/org_live/index.html.heex:13 #: lib/towerops_web/live/agent_live/index.html.heex:136 -#: lib/towerops_web/live/agent_live/index.html.heex:246 +#: lib/towerops_web/live/agent_live/index.html.heex:252 #, elixir-autogen, elixir-format msgid "Created" msgstr "Creado" -#: lib/towerops_web/live/org_live/new.html.heex:34 +#: lib/towerops_web/live/org_live/new.html.heex:35 #, elixir-autogen, elixir-format msgid "Creating..." msgstr "Creando..." +#: lib/towerops_web/live/alert_live/index.html.heex:48 #: lib/towerops_web/live/org/preseem_insights_live.html.heex:95 #, elixir-autogen, elixir-format msgid "Critical" msgstr "Crítico" -#: lib/towerops_web/live/org/settings_live.html.heex:421 +#: lib/towerops_web/live/org/settings_live.html.heex:445 #, elixir-autogen, elixir-format msgid "Critical Security Warning:" msgstr "Advertencia de seguridad crítica:" @@ -1111,64 +1125,65 @@ msgstr "Advertencia de seguridad crítica:" msgid "Current Activity" msgstr "Actividad actual" -#: lib/towerops_web/live/org/settings_live.html.heex:469 +#: lib/towerops_web/live/org/settings_live.html.heex:499 #, elixir-autogen, elixir-format msgid "Current Device Assignment:" msgstr "Asignación actual del dispositivo:" -#: lib/towerops_web/live/user_settings_live.html.heex:767 +#: lib/towerops_web/live/user_settings_live.html.heex:808 #, elixir-autogen, elixir-format msgid "Current Session" msgstr "Sesión actual" -#: lib/towerops_web/live/device_live/form.html.heex:729 -#: lib/towerops_web/live/site_live/form.html.heex:451 +#: lib/towerops_web/live/device_live/form.html.heex:749 +#: lib/towerops_web/live/site_live/form.html.heex:472 #, elixir-autogen, elixir-format msgid "Danger Zone" msgstr "Zona de peligro" -#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:326 +#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:328 #, elixir-autogen, elixir-format msgid "Data mismatches (IP, serial, etc.)" msgstr "Discrepancias de datos (IP, serie, etc.)" -#: lib/towerops_web/live/user_settings_live.html.heex:854 +#: lib/towerops_web/live/user_settings_live.html.heex:898 #, elixir-autogen, elixir-format msgid "Date & Time" msgstr "Fecha y hora" -#: lib/towerops_web/live/agent_live/show.html.heex:75 +#: lib/towerops_web/live/agent_live/show.html.heex:83 #, elixir-autogen, elixir-format msgid "Debug Logs" msgstr "Registros de depuración" -#: lib/towerops_web/live/org/settings_live.html.heex:447 -#: lib/towerops_web/live/org/settings_live.html.heex:525 +#: lib/towerops_web/live/org/settings_live.html.heex:475 +#: lib/towerops_web/live/org/settings_live.html.heex:561 #, elixir-autogen, elixir-format msgid "Default Agent" msgstr "Agente predeterminado" -#: lib/towerops_web/live/site_live/form.html.heex:201 +#: lib/towerops_web/live/site_live/form.html.heex:205 #, elixir-autogen, elixir-format msgid "Default Agent for Site" msgstr "Agente predeterminado para el sitio" -#: lib/towerops_web/live/org/settings_live.html.heex:131 -#: lib/towerops_web/live/user_settings_live.html.heex:329 +#: lib/towerops_web/live/org/settings_live.html.heex:135 +#: lib/towerops_web/live/user_settings_live.html.heex:345 #, elixir-autogen, elixir-format msgid "Default Organization" msgstr "Organización predeterminada" -#: lib/towerops_web/live/org/settings_live.html.heex:462 +#: lib/towerops_web/live/org/settings_live.html.heex:492 #, elixir-autogen, elixir-format msgid "Default Remote Agent" msgstr "Agente remoto predeterminado" -#: lib/towerops_web/live/admin/org_live/index.html.heex:23 -#: lib/towerops_web/live/admin/user_live/index.html.heex:36 -#: lib/towerops_web/live/agent_live/index.html.heex:160 -#: lib/towerops_web/live/agent_live/index.html.heex:270 -#: lib/towerops_web/live/user_settings_live.html.heex:586 +#: lib/towerops_web/live/admin/org_live/index.html.heex:27 +#: lib/towerops_web/live/admin/user_live/index.html.heex:38 +#: lib/towerops_web/live/agent_live/index.html.heex:164 +#: lib/towerops_web/live/agent_live/index.html.heex:280 +#: lib/towerops_web/live/maintenance_live/show.html.heex:63 +#: lib/towerops_web/live/user_settings_live.html.heex:618 #, elixir-autogen, elixir-format msgid "Delete" msgstr "Eliminar" @@ -1185,9 +1200,9 @@ msgstr "Lista de denegados" #: lib/towerops_web/live/admin/security_live/index.html.heex:76 #: lib/towerops_web/live/admin/security_live/index.html.heex:99 -#: lib/towerops_web/live/device_live/form.html.heex:182 -#: lib/towerops_web/live/device_live/show.html.heex:2178 -#: lib/towerops_web/live/site_live/form.html.heex:177 +#: lib/towerops_web/live/device_live/form.html.heex:184 +#: lib/towerops_web/live/device_live/show.html.heex:2307 +#: lib/towerops_web/live/site_live/form.html.heex:179 #, elixir-autogen, elixir-format msgid "Description" msgstr "Descripción" @@ -1198,21 +1213,26 @@ msgstr "Descripción" msgid "Deselect All" msgstr "Deseleccionar todo" -#: lib/towerops_web/live/agent_live/show.html.heex:119 +#: lib/towerops_web/live/agent_live/show.html.heex:129 #, elixir-autogen, elixir-format msgid "Development (tail):" msgstr "Desarrollo (tail):" #: lib/towerops_web/live/agent_live/index.html.heex:99 -#: lib/towerops_web/live/agent_live/index.html.heex:209 -#: lib/towerops_web/live/dashboard_live.html.heex:380 -#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:132 -#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:180 +#: lib/towerops_web/live/agent_live/index.html.heex:215 +#: lib/towerops_web/live/alert_live/index.html.heex:208 +#: lib/towerops_web/live/dashboard_live.html.heex:365 +#: lib/towerops_web/live/device_live/index.html.heex:266 +#: lib/towerops_web/live/maintenance_live/form.html.heex:84 +#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:134 +#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:182 +#: lib/towerops_web/live/site_live/show.html.heex:184 +#: lib/towerops_web/live/site_live/show.html.heex:382 #, elixir-autogen, elixir-format msgid "Device" msgstr "Dispositivo" -#: lib/towerops_web/live/device_live/show.html.heex:332 +#: lib/towerops_web/live/device_live/show.html.heex:367 #, elixir-autogen, elixir-format msgid "Device Information" msgstr "Información del dispositivo" @@ -1222,8 +1242,8 @@ msgstr "Información del dispositivo" msgid "Device Name" msgstr "Nombre del dispositivo" -#: lib/towerops_web/live/device_live/form.html.heex:189 -#: lib/towerops_web/live/org/settings_live.html.heex:1347 +#: lib/towerops_web/live/device_live/form.html.heex:191 +#: lib/towerops_web/live/org/settings_live.html.heex:1439 #, elixir-autogen, elixir-format msgid "Device Role" msgstr "Rol del dispositivo" @@ -1239,7 +1259,7 @@ msgstr "El dispositivo está CAÍDO" msgid "Device linked successfully" msgstr "Dispositivo vinculado correctamente" -#: lib/towerops_web/live/graph_live/show.ex:801 +#: lib/towerops_web/live/graph_live/show.ex:805 #, elixir-autogen, elixir-format msgid "Device no longer exists" msgstr "El dispositivo ya no existe" @@ -1251,7 +1271,7 @@ msgstr "El dispositivo ya no existe" msgid "Device not found" msgstr "Dispositivo no encontrado" -#: lib/towerops_web/live/agent_live/show.html.heex:301 +#: lib/towerops_web/live/agent_live/show.html.heex:311 #, elixir-autogen, elixir-format msgid "Device that this agent is responsible for polling" msgstr "Dispositivo que este agente se encarga de sondear" @@ -1262,56 +1282,54 @@ msgstr "Dispositivo que este agente se encarga de sondear" msgid "Device unlinked" msgstr "Dispositivo desvinculado" +#: lib/towerops_web/components/layouts.ex:268 +#: lib/towerops_web/components/layouts.ex:556 #: lib/towerops_web/live/admin/agent_live/index.html.heex:40 #: lib/towerops_web/live/admin/agent_live/index.html.heex:114 -#: lib/towerops_web/live/admin/user_live/index.html.heex:13 -#: lib/towerops_web/live/dashboard_live.html.heex:177 -#: lib/towerops_web/live/dashboard_live.html.heex:603 +#: lib/towerops_web/live/admin/user_live/index.html.heex:15 +#: lib/towerops_web/live/dashboard_live.html.heex:499 #: lib/towerops_web/live/mikrotik_backup_live/compare.html.heex:7 #: lib/towerops_web/live/org/preseem_devices_live.html.heex:29 -#: lib/towerops_web/live/org/settings_live.html.heex:1254 +#: lib/towerops_web/live/org/settings_live.html.heex:1344 #: lib/towerops_web/live/site_live/index.html.heex:48 +#: lib/towerops_web/live/site_live/show.html.heex:97 #, elixir-autogen, elixir-format msgid "Devices" msgstr "Dispositivos" -#: lib/towerops_web/live/device_live/index.html.heex:501 +#: lib/towerops_web/live/device_live/index.html.heex:559 #, elixir-autogen, elixir-format msgid "Devices will appear here as they are discovered via LLDP/CDP." msgstr "Los dispositivos aparecerán aquí a medida que se descubran vía LLDP/CDP." -#: lib/towerops_web/live/device_live/show.html.heex:1196 +#: lib/towerops_web/live/device_live/index.html.heex:69 +#: lib/towerops_web/live/device_live/show.html.heex:1263 #: lib/towerops_web/live/network_map_live.html.heex:116 #, elixir-autogen, elixir-format msgid "Discovered" msgstr "Descubierto" -#: lib/towerops_web/live/device_live/index.html.heex:582 +#: lib/towerops_web/live/device_live/index.html.heex:631 #, elixir-autogen, elixir-format msgid "Discovered By" msgstr "Descubierto por" -#: lib/towerops_web/live/device_live/index.html.heex:135 -#, elixir-autogen, elixir-format -msgid "Discovered Devices" -msgstr "Dispositivos descubiertos" - -#: lib/towerops_web/live/device_live/show.html.heex:1310 +#: lib/towerops_web/live/device_live/show.html.heex:1423 #, elixir-autogen, elixir-format msgid "Discovered Neighbors" msgstr "Vecinos descubiertos" -#: lib/towerops_web/live/device_live/show.html.heex:2168 +#: lib/towerops_web/live/device_live/show.html.heex:2297 #, elixir-autogen, elixir-format msgid "Discovered Sensors" msgstr "Sensores descubiertos" -#: lib/towerops_web/live/device_live/form.html.heex:549 +#: lib/towerops_web/live/device_live/form.html.heex:562 #, elixir-autogen, elixir-format msgid "Discovering..." msgstr "Descubriendo..." -#: lib/towerops_web/live/device_live/show.ex:1283 +#: lib/towerops_web/live/device_live/show.ex:1298 #, elixir-autogen, elixir-format msgid "Discovery started for %{name}" msgstr "Descubrimiento iniciado para %{name}" @@ -1334,28 +1352,28 @@ msgstr "Descartar seleccionados" msgid "Dismissed" msgstr "Descartados" -#: lib/towerops_web/live/agent_live/index.html.heex:440 +#: lib/towerops_web/live/agent_live/index.html.heex:454 #, elixir-autogen, elixir-format msgid "Docker Compose Setup with Auto-Updates" msgstr "Configuración de Docker Compose con actualizaciones automáticas" -#: lib/towerops_web/live/user_settings_live.html.heex:1428 +#: lib/towerops_web/live/user_settings_live.html.heex:1481 #, elixir-autogen, elixir-format msgid "Done" msgstr "Listo" -#: lib/towerops_web/live/dashboard_live.html.heex:606 +#: lib/towerops_web/live/dashboard_live.html.heex:502 #: lib/towerops_web/live/site_live/index.html.heex:51 #, elixir-autogen, elixir-format msgid "Down" msgstr "Caído" -#: lib/towerops_web/live/device_live/show.html.heex:422 +#: lib/towerops_web/live/device_live/show.html.heex:465 #, elixir-autogen, elixir-format msgid "Download" msgstr "Descargar" -#: lib/towerops_web/live/user_settings_live.html.heex:182 +#: lib/towerops_web/live/user_settings_live.html.heex:195 #, elixir-autogen, elixir-format msgid "Eastern Time (US & Canada)" msgstr "Hora del este (EE. UU. y Canadá)" @@ -1370,29 +1388,30 @@ msgstr "Editar agente" msgid "Edit Device" msgstr "Editar dispositivo" -#: lib/towerops_web/live/device_live/show.html.heex:2007 +#: lib/towerops_web/live/device_live/show.html.heex:2134 #, elixir-autogen, elixir-format msgid "Edit Device Settings" msgstr "Editar configuración del dispositivo" #: lib/towerops_web/live/site_live/form.ex:61 +#: lib/towerops_web/live/site_live/show.html.heex:67 #, elixir-autogen, elixir-format msgid "Edit Site" msgstr "Editar sitio" #: lib/towerops_web/live/admin/user_live/index.html.heex:10 -#: lib/towerops_web/live/org/settings_live.html.heex:627 +#: lib/towerops_web/live/org/settings_live.html.heex:668 #, elixir-autogen, elixir-format msgid "Email" msgstr "Correo electrónico" -#: lib/towerops_web/live/user_settings_live.html.heex:385 +#: lib/towerops_web/live/user_settings_live.html.heex:404 #, elixir-autogen, elixir-format msgid "Email Address" msgstr "Dirección de correo" -#: lib/towerops_web/live/org/settings_live.html.heex:586 -#: lib/towerops_web/live/user_settings_live.html.heex:400 +#: lib/towerops_web/live/org/settings_live.html.heex:622 +#: lib/towerops_web/live/user_settings_live.html.heex:422 #, elixir-autogen, elixir-format msgid "Email address" msgstr "Dirección de correo" @@ -1417,97 +1436,88 @@ msgstr "El enlace de confirmación de correo es inválido o ha expirado." msgid "Email confirmed successfully. You may now log in." msgstr "Correo confirmado correctamente. Ya puedes iniciar sesión." -#: lib/towerops_web/live/device_live/form.html.heex:653 -#: lib/towerops_web/live/org/settings_live.html.heex:377 -#: lib/towerops_web/live/site_live/form.html.heex:391 +#: lib/towerops_web/live/device_live/form.html.heex:668 +#: lib/towerops_web/live/org/settings_live.html.heex:401 +#: lib/towerops_web/live/site_live/form.html.heex:407 #, elixir-autogen, elixir-format msgid "Enable MikroTik API" msgstr "Habilitar API de MikroTik" -#: lib/towerops_web/live/device_live/show.html.heex:2003 +#: lib/towerops_web/live/device_live/show.html.heex:2130 #, elixir-autogen, elixir-format msgid "Enable MikroTik API in device settings to enable configuration backups." msgstr "Habilita la API de MikroTik en la configuración del dispositivo para habilitar respaldos de configuración." -#: lib/towerops_web/live/device_live/form.html.heex:239 +#: lib/towerops_web/live/device_live/form.html.heex:241 #, elixir-autogen, elixir-format msgid "Enable Monitoring" msgstr "Habilitar monitoreo" -#: lib/towerops_web/live/org/settings_live.html.heex:174 +#: lib/towerops_web/live/org/settings_live.html.heex:180 #, elixir-autogen, elixir-format msgid "Enable site organization to group devices into physical locations (offices, datacenters, etc.)." msgstr "Habilita la organización por sitios para agrupar dispositivos en ubicaciones físicas (oficinas, centros de datos, etc.)." -#: lib/towerops_web/live/agent_live/edit.html.heex:68 +#: lib/towerops_web/live/agent_live/edit.html.heex:69 #, elixir-autogen, elixir-format msgid "Enable verbose logging for troubleshooting SNMP discovery and polling issues." msgstr "Habilita el registro detallado para diagnosticar problemas de descubrimiento y sondeo SNMP." -#: lib/towerops_web/live/user_settings_live.html.heex:305 -#, elixir-autogen, elixir-format -msgid "English" -msgstr "Inglés" - #: lib/towerops_web/live/site_live/form.html.heex:101 #, elixir-autogen, elixir-format msgid "Enter a full address and click Geocode to automatically fill latitude/longitude" msgstr "Ingresa una dirección completa y haz clic en Geocodificar para llenar automáticamente latitud/longitud" -#: lib/towerops_web/live/user_settings_live.html.heex:1562 +#: lib/towerops_web/live/user_settings_live.html.heex:1640 #, elixir-autogen, elixir-format msgid "Enter the 6-digit code from your app to verify" msgstr "Ingresa el código de 6 dígitos de tu app para verificar" -#: lib/towerops_web/live/org/settings_live.html.heex:1125 +#: lib/towerops_web/live/org/settings_live.html.heex:1205 #, elixir-autogen, elixir-format msgid "Enter your NetBox API token" msgstr "Ingresa tu token de API de NetBox" -#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:29 -#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:20 +#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:31 +#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:22 #, elixir-autogen, elixir-format msgid "Entity Mapping" msgstr "Mapeo de entidades" -#: lib/towerops_web/live/device_live/show.html.heex:2016 +#: lib/towerops_web/live/device_live/show.html.heex:2143 #, elixir-autogen, elixir-format msgid "Event Logs" msgstr "Registros de eventos" -#: lib/towerops_web/live/device_live/show.html.heex:300 +#: lib/towerops_web/live/device_live/show.html.heex:335 #, elixir-autogen, elixir-format msgid "Events" msgstr "Eventos" -#: lib/towerops_web/live/org/settings_live.html.heex:1504 +#: lib/towerops_web/live/org/settings_live.html.heex:1828 #, elixir-autogen, elixir-format msgid "Events API v2" msgstr "Events API v2" -#: lib/towerops_web/live/device_live/show.html.heex:2072 +#: lib/towerops_web/live/device_live/show.html.heex:2199 #, elixir-autogen, elixir-format msgid "Events will appear here as interface states change, speeds change, or other monitored changes occur." msgstr "Los eventos aparecerán aquí cuando cambien los estados de las interfaces, velocidades u otros cambios monitoreados." -#: lib/towerops_web/live/device_live/index.html.heex:121 -#, elixir-autogen, elixir-format -msgid "Existing Devices" -msgstr "Dispositivos existentes" - +#: lib/towerops_web/live/alert_live/index.html.heex:11 #: lib/towerops_web/live/network_map_live.html.heex:10 #, elixir-autogen, elixir-format msgid "Experimental" msgstr "Experimental" -#: lib/towerops_web/live/device_live/form.html.heex:631 -#: lib/towerops_web/live/org/settings_live.html.heex:363 -#: lib/towerops_web/live/site_live/form.html.heex:383 +#: lib/towerops_web/live/device_live/form.html.heex:646 +#: lib/towerops_web/live/org/settings_live.html.heex:387 +#: lib/towerops_web/live/site_live/form.html.heex:399 #, elixir-autogen, elixir-format msgid "Experimental Feature:" msgstr "Función experimental:" -#: lib/towerops_web/live/org/settings_live.html.heex:636 +#: lib/towerops_web/live/org/settings_live.html.heex:677 #, elixir-autogen, elixir-format msgid "Expires" msgstr "Expira" @@ -1529,7 +1539,7 @@ msgid "Failed to dismiss" msgstr "No se pudo descartar" #: lib/towerops_web/live/dashboard_live.ex:62 -#: lib/towerops_web/live/device_live/show.ex:1356 +#: lib/towerops_web/live/device_live/show.ex:1371 #: lib/towerops_web/live/site_live/index.ex:46 #, elixir-autogen, elixir-format msgid "Failed to dismiss insight" @@ -1556,7 +1566,7 @@ msgstr "No se pudo obtener la última versión de GitHub" msgid "Failed to generate diff: %{reason}" msgstr "No se pudo generar la diferencia: %{reason}" -#: lib/towerops_web/live/help_live/index.ex:84 +#: lib/towerops_web/live/help_live/index.ex:83 #, elixir-autogen, elixir-format msgid "Failed to generate password: %{reason}" msgstr "No se pudo generar la contraseña: %{reason}" @@ -1577,7 +1587,7 @@ msgstr "No se pudo vincular el dispositivo" msgid "Failed to link site" msgstr "No se pudo vincular el sitio" -#: lib/towerops_web/live/org/integrations_live.ex:167 +#: lib/towerops_web/live/org/integrations_live.ex:248 #, elixir-autogen, elixir-format msgid "Failed to regenerate webhook secret" msgstr "No se pudo regenerar el secreto del webhook" @@ -1587,7 +1597,7 @@ msgstr "No se pudo regenerar el secreto del webhook" msgid "Failed to remove from allowlist" msgstr "No se pudo eliminar de la lista de permitidos" -#: lib/towerops_web/live/org/settings_live.ex:215 +#: lib/towerops_web/live/org/settings_live.ex:251 #, elixir-autogen, elixir-format msgid "Failed to remove member" msgstr "No se pudo eliminar al miembro" @@ -1597,22 +1607,22 @@ msgstr "No se pudo eliminar al miembro" msgid "Failed to revoke consent." msgstr "No se pudo revocar el consentimiento." -#: lib/towerops_web/live/org/settings_live.ex:432 +#: lib/towerops_web/live/org/settings_live.ex:444 #, elixir-autogen, elixir-format msgid "Failed to save webhook secret" msgstr "No se pudo guardar el secreto del webhook" -#: lib/towerops_web/live/org/settings_live.ex:179 +#: lib/towerops_web/live/org/settings_live.ex:215 #, elixir-autogen, elixir-format msgid "Failed to send invitation: %{errors}" msgstr "No se pudo enviar la invitación: %{errors}" -#: lib/towerops_web/live/org/settings_live.ex:257 +#: lib/towerops_web/live/org/settings_live.ex:293 #, elixir-autogen, elixir-format msgid "Failed to set default organization" msgstr "No se pudo establecer la organización predeterminada" -#: lib/towerops_web/live/device_live/show.ex:1286 +#: lib/towerops_web/live/device_live/show.ex:1301 #, elixir-autogen, elixir-format msgid "Failed to start discovery. Please try again." msgstr "No se pudo iniciar el descubrimiento. Inténtalo de nuevo." @@ -1633,56 +1643,56 @@ msgstr "No se pudo desvincular el dispositivo" msgid "Failed to unlink site" msgstr "No se pudo desvincular el sitio" -#: lib/towerops_web/live/org/integrations_live.ex:189 -#: lib/towerops_web/live/org/settings_live.ex:454 +#: lib/towerops_web/live/org/integrations_live.ex:291 +#: lib/towerops_web/live/org/settings_live.ex:466 #, elixir-autogen, elixir-format msgid "Failed to update integration" msgstr "No se pudo actualizar la integración" -#: lib/towerops_web/live/org/settings_live.ex:234 +#: lib/towerops_web/live/org/settings_live.ex:270 #, elixir-autogen, elixir-format msgid "Failed to update role" msgstr "No se pudo actualizar el rol" -#: lib/towerops_web/live/agent_live/index.html.heex:289 +#: lib/towerops_web/live/agent_live/index.html.heex:299 #, elixir-autogen, elixir-format msgid "Fallback agent for organizations without a default agent configured. Devices with no assignment at any level will use this agent." msgstr "Agente de respaldo para organizaciones sin agente predeterminado configurado. Los dispositivos sin asignación en ningún nivel usarán este agente." -#: lib/towerops_web/live/device_live/show.html.heex:2106 -#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:183 +#: lib/towerops_web/live/device_live/show.html.heex:2235 +#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:185 #, elixir-autogen, elixir-format msgid "Field" msgstr "Campo" -#: lib/towerops_web/live/org/settings_live.html.heex:1335 +#: lib/towerops_web/live/org/settings_live.html.heex:1425 #, elixir-autogen, elixir-format msgid "Filters" msgstr "Filtros" -#: lib/towerops_web/live/device_live/show.html.heex:1003 +#: lib/towerops_web/live/device_live/show.html.heex:1068 #, elixir-autogen, elixir-format msgid "Firewall" msgstr "Firewall" -#: lib/towerops_web/live/device_live/show.html.heex:392 +#: lib/towerops_web/live/device_live/show.html.heex:435 #, elixir-autogen, elixir-format msgid "Firmware Update Available" msgstr "Actualización de firmware disponible" -#: lib/towerops_web/live/user_settings_live.html.heex:129 +#: lib/towerops_web/live/user_settings_live.html.heex:142 #, elixir-autogen, elixir-format msgid "First name" msgstr "Nombre" -#: lib/towerops_web/live/org/settings_live.html.heex:330 -#: lib/towerops_web/live/org/settings_live.html.heex:503 +#: lib/towerops_web/live/org/settings_live.html.heex:346 +#: lib/towerops_web/live/org/settings_live.html.heex:533 #, elixir-autogen, elixir-format msgid "Force Apply to All Devices" msgstr "Forzar aplicación a todos los dispositivos" -#: lib/towerops_web/live/site_live/form.html.heex:215 -#: lib/towerops_web/live/site_live/form.html.heex:354 +#: lib/towerops_web/live/site_live/form.html.heex:219 +#: lib/towerops_web/live/site_live/form.html.heex:366 #, elixir-autogen, elixir-format msgid "Force Apply to Site Device" msgstr "Forzar aplicación al dispositivo del sitio" @@ -1692,7 +1702,7 @@ msgstr "Forzar aplicación al dispositivo del sitio" msgid "Free organization limit reached" msgstr "Límite de organizaciones gratuitas alcanzado" -#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:189 +#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:191 #, elixir-autogen, elixir-format msgid "Gaiia" msgstr "Gaiia" @@ -1702,12 +1712,12 @@ msgstr "Gaiia" msgid "Gaiia Entity Mapping" msgstr "Mapeo de entidades de Gaiia" -#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:142 +#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:146 #, elixir-autogen, elixir-format msgid "Gaiia ID" msgstr "ID de Gaiia" -#: lib/towerops_web/live/device_live/show.html.heex:2378 +#: lib/towerops_web/live/device_live/show.html.heex:2515 #, elixir-autogen, elixir-format msgid "Gaiia Inventory Item" msgstr "Elemento de inventario de Gaiia" @@ -1718,12 +1728,12 @@ msgstr "Elemento de inventario de Gaiia" msgid "Gaiia Inventory Reconciliation" msgstr "Reconciliación de inventario de Gaiia" -#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:232 +#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:234 #, elixir-autogen, elixir-format msgid "Gaiia Item" msgstr "Elemento de Gaiia" -#: lib/towerops_web/live/device_live/show.html.heex:2488 +#: lib/towerops_web/live/device_live/show.html.heex:2625 #, elixir-autogen, elixir-format msgid "Gaiia Network Site" msgstr "Sitio de red de Gaiia" @@ -1780,17 +1790,17 @@ msgstr "Ubicaciones geográficas de sitios" msgid "Geographic locations of your sites" msgstr "Ubicaciones geográficas de tus sitios" -#: lib/towerops_web/live/device_live/index.html.heex:177 +#: lib/towerops_web/live/device_live/index.html.heex:152 #, elixir-autogen, elixir-format msgid "Get started by adding your first device." msgstr "Comienza agregando tu primer dispositivo." -#: lib/towerops_web/live/user_settings_live.html.heex:540 +#: lib/towerops_web/live/user_settings_live.html.heex:568 #, elixir-autogen, elixir-format msgid "Get started by creating a new API token." msgstr "Comienza creando un nuevo token de API." -#: lib/towerops_web/live/org_live/index.html.heex:35 +#: lib/towerops_web/live/org_live/index.html.heex:42 #, elixir-autogen, elixir-format msgid "Get started by creating a new organization." msgstr "Comienza creando una nueva organización." @@ -1800,12 +1810,12 @@ msgstr "Comienza creando una nueva organización." msgid "Get started by creating your first remote agent." msgstr "Comienza creando tu primer agente remoto." -#: lib/towerops_web/live/user_settings_live.html.heex:1296 +#: lib/towerops_web/live/user_settings_live.html.heex:1347 #, elixir-autogen, elixir-format msgid "Give this token a name and select the organization it will have access to." msgstr "Dale un nombre a este token y selecciona la organización a la que tendrá acceso." -#: lib/towerops_web/live/agent_live/index.html.heex:286 +#: lib/towerops_web/live/agent_live/index.html.heex:296 #, elixir-autogen, elixir-format msgid "Global Default Cloud Poller" msgstr "Cloud Poller predeterminado global" @@ -1821,66 +1831,53 @@ msgstr "Volver al inicio" msgid "Go to your org settings to connect an integration." msgstr "Ve a la configuración de tu organización para conectar una integración." -#: lib/towerops_web/live/device_live/show.html.heex:2359 +#: lib/towerops_web/live/device_live/show.html.heex:2496 #, elixir-autogen, elixir-format msgid "Graph" msgstr "Gráfico" -#: lib/towerops_web/live/device_live/index.html.heex:539 -#, elixir-autogen, elixir-format -msgid "HOST" -msgstr "HOST" - -#: lib/towerops_web/live/dashboard_live.html.heex:126 -#, elixir-autogen, elixir-format -msgid "Health" -msgstr "Salud" - #: lib/towerops_web/live/admin/monitoring_live.html.heex:165 #, elixir-autogen, elixir-format msgid "Health Metrics" msgstr "Métricas de salud" -#: lib/towerops_web/live/device_live/show.html.heex:2136 +#: lib/towerops_web/live/device_live/show.html.heex:2265 #, elixir-autogen, elixir-format msgid "Health Sensor Table Walk" msgstr "Recorrido de tabla de sensores de salud" +#: lib/towerops_web/components/layouts.ex:418 +#: lib/towerops_web/components/layouts.ex:611 #: lib/towerops_web/live/help_live/index.ex:34 #, elixir-autogen, elixir-format msgid "Help" msgstr "Ayuda" -#: lib/towerops_web/live/device_live/index.html.heex:550 +#: lib/towerops_web/live/device_live/index.html.heex:604 #, elixir-autogen, elixir-format msgid "Hostname" msgstr "Nombre de host" -#: lib/towerops_web/live/org/settings_live.html.heex:1400 +#: lib/towerops_web/live/org/settings_live.html.heex:1492 #, elixir-autogen, elixir-format msgid "How often TowerOps checks NetBox for changes. 30 minutes is recommended for most setups." msgstr "Con qué frecuencia TowerOps revisa NetBox en busca de cambios. Se recomiendan 30 minutos para la mayoría de las configuraciones." -#: lib/towerops_web/live/user_settings_live.html.heex:1702 +#: lib/towerops_web/live/user_settings_live.html.heex:1784 #, elixir-autogen, elixir-format msgid "I've Saved These Codes" msgstr "He guardado estos códigos" -#: lib/towerops_web/live/device_live/show.html.heex:574 +#: lib/towerops_web/live/device_live/show.html.heex:625 #, elixir-autogen, elixir-format msgid "ICMP Latency" msgstr "Latencia ICMP" -#: lib/towerops_web/live/device_live/form.html.heex:345 +#: lib/towerops_web/live/device_live/form.html.heex:351 #, elixir-autogen, elixir-format msgid "ICMP Only" msgstr "Solo ICMP" -#: lib/towerops_web/live/device_live/index.html.heex:530 -#, elixir-autogen, elixir-format -msgid "IP" -msgstr "IP" - #: lib/towerops_web/live/admin/security_live/index.ex:97 #, elixir-autogen, elixir-format msgid "IP %{ip_address} unblocked" @@ -1893,17 +1890,18 @@ msgstr "Control de acceso por IP" #: lib/towerops_web/live/admin/security_live/index.html.heex:154 #: lib/towerops_web/live/device_live/form.html.heex:127 -#: lib/towerops_web/live/device_live/index.html.heex:239 -#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:149 -#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:135 -#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:235 -#: lib/towerops_web/live/org/preseem_devices_live.html.heex:135 -#: lib/towerops_web/live/user_settings_live.html.heex:878 +#: lib/towerops_web/live/device_live/index.html.heex:272 +#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:153 +#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:137 +#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:237 +#: lib/towerops_web/live/org/preseem_devices_live.html.heex:137 +#: lib/towerops_web/live/site_live/show.html.heex:383 +#: lib/towerops_web/live/user_settings_live.html.heex:922 #, elixir-autogen, elixir-format msgid "IP Address" msgstr "Dirección IP" -#: lib/towerops_web/live/device_live/show.html.heex:2466 +#: lib/towerops_web/live/device_live/show.html.heex:2603 #, elixir-autogen, elixir-format msgid "IP Address (Gaiia)" msgstr "Dirección IP (Gaiia)" @@ -1913,8 +1911,8 @@ msgstr "Dirección IP (Gaiia)" msgid "IP Address or CIDR" msgstr "Dirección IP o CIDR" -#: lib/towerops_web/live/device_live/show.html.heex:200 -#: lib/towerops_web/live/org/settings_live.html.heex:1298 +#: lib/towerops_web/live/device_live/show.html.heex:235 +#: lib/towerops_web/live/org/settings_live.html.heex:1388 #, elixir-autogen, elixir-format msgid "IP Addresses" msgstr "Direcciones IP" @@ -1929,22 +1927,22 @@ msgstr "IP/CIDR" msgid "IP/CIDR added to allowlist" msgstr "IP/CIDR agregada a la lista de permitidos" -#: lib/towerops_web/live/org/settings_live.html.heex:1301 +#: lib/towerops_web/live/org/settings_live.html.heex:1391 #, elixir-autogen, elixir-format msgid "IPAM data — assigned IPs, prefixes, VRFs" msgstr "Datos IPAM — IPs asignadas, prefijos, VRFs" -#: lib/towerops_web/live/device_live/show.html.heex:1657 +#: lib/towerops_web/live/device_live/show.html.heex:1776 #, elixir-autogen, elixir-format msgid "IPv4" msgstr "IPv4" -#: lib/towerops_web/live/device_live/show.html.heex:1714 +#: lib/towerops_web/live/device_live/show.html.heex:1835 #, elixir-autogen, elixir-format msgid "IPv6" msgstr "IPv6" -#: lib/towerops_web/live/device_live/index.html.heex:516 +#: lib/towerops_web/live/device_live/index.html.heex:571 #, elixir-autogen, elixir-format msgid "Identifier" msgstr "Identificador" @@ -1954,22 +1952,25 @@ msgstr "Identificador" msgid "Identity verified." msgstr "Identidad verificada." -#: lib/towerops_web/live/user_settings_live.html.heex:1688 +#: lib/towerops_web/live/user_settings_live.html.heex:1768 #, elixir-autogen, elixir-format msgid "If you lose your authenticator and these codes, you won't be able to access your account." msgstr "Si pierdes tu autenticador y estos códigos, no podrás acceder a tu cuenta." -#: lib/towerops_web/live/dashboard_live.html.heex:386 +#: lib/towerops_web/live/alert_live/index.html.heex:132 +#: lib/towerops_web/live/alert_live/index.html.heex:232 +#: lib/towerops_web/live/alert_live/index.html.heex:455 +#: lib/towerops_web/live/dashboard_live.html.heex:371 #, elixir-autogen, elixir-format msgid "Impact" msgstr "Impacto" -#: lib/towerops_web/live/admin/user_live/index.html.heex:26 +#: lib/towerops_web/live/admin/user_live/index.html.heex:28 #, elixir-autogen, elixir-format msgid "Impersonate" msgstr "Suplantar" -#: lib/towerops_web/live/user_settings_live.html.heex:1683 +#: lib/towerops_web/live/user_settings_live.html.heex:1761 #, elixir-autogen, elixir-format msgid "Important" msgstr "Importante" @@ -1987,46 +1988,47 @@ msgstr "Información" msgid "Insight dismissed" msgstr "Observación descartada" -#: lib/towerops_web/live/dashboard_live.html.heex:280 -#: lib/towerops_web/live/dashboard_live.html.heex:451 +#: lib/towerops_web/components/layouts.ex:353 +#: lib/towerops_web/components/layouts.ex:582 +#: lib/towerops_web/live/dashboard_live.html.heex:594 #: lib/towerops_web/live/insights_live/index.ex:17 #: lib/towerops_web/live/org/preseem_devices_live.html.heex:35 -#: lib/towerops_web/live/site_live/index.html.heex:123 +#: lib/towerops_web/live/site_live/index.html.heex:151 #, elixir-autogen, elixir-format msgid "Insights" msgstr "Observaciones" -#: lib/towerops_web/live/org/settings_live.html.heex:1506 +#: lib/towerops_web/live/org/settings_live.html.heex:1831 #, elixir-autogen, elixir-format msgid "Integration Key" msgstr "Clave de integración" -#: lib/towerops_web/live/org/integrations_live.ex:125 -#: lib/towerops_web/live/org/settings_live.ex:374 +#: lib/towerops_web/live/org/integrations_live.ex:194 +#: lib/towerops_web/live/org/settings_live.ex:411 #, elixir-autogen, elixir-format msgid "Integration saved successfully" msgstr "Integración guardada correctamente" -#: lib/towerops_web/live/org/integrations_live.ex:186 -#: lib/towerops_web/live/org/settings_live.ex:451 +#: lib/towerops_web/live/org/integrations_live.ex:288 +#: lib/towerops_web/live/org/settings_live.ex:463 #, elixir-autogen, elixir-format msgid "Integration updated" msgstr "Integración actualizada" #: lib/towerops_web/live/org/integrations_live.html.heex:15 -#: lib/towerops_web/live/org/settings_live.html.heex:87 -#: lib/towerops_web/live/org/settings_live.html.heex:1501 -#: lib/towerops_web/live/org/settings_live.html.heex:1551 +#: lib/towerops_web/live/org/settings_live.html.heex:91 +#: lib/towerops_web/live/org/settings_live.html.heex:1825 +#: lib/towerops_web/live/org/settings_live.html.heex:1884 #, elixir-autogen, elixir-format msgid "Integrations" msgstr "Integraciones" -#: lib/towerops_web/live/org/settings_live.html.heex:1320 +#: lib/towerops_web/live/org/settings_live.html.heex:1410 #, elixir-autogen, elixir-format msgid "Interfaces" msgstr "Interfaces" -#: lib/towerops_web/controllers/user_session_controller.ex:192 +#: lib/towerops_web/controllers/user_session_controller.ex:209 #: lib/towerops_web/controllers/user_sudo_controller.ex:91 #, elixir-autogen, elixir-format msgid "Invalid authentication code. Please try again." @@ -2048,37 +2050,37 @@ msgstr "Correo o contraseña inválidos" msgid "Invalid or expired invitation link." msgstr "Enlace de invitación inválido o expirado." -#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:73 +#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:75 #, elixir-autogen, elixir-format msgid "Inventory Items" msgstr "Elementos de inventario" -#: lib/towerops_web/live/org/settings_live.ex:193 +#: lib/towerops_web/live/org/settings_live.ex:229 #, elixir-autogen, elixir-format msgid "Invitation cancelled" msgstr "Invitación cancelada" -#: lib/towerops_web/live/org/settings_live.ex:196 +#: lib/towerops_web/live/org/settings_live.ex:232 #, elixir-autogen, elixir-format msgid "Invitation not found" msgstr "Invitación no encontrada" -#: lib/towerops_web/live/org/settings_live.ex:174 +#: lib/towerops_web/live/org/settings_live.ex:209 #, elixir-autogen, elixir-format msgid "Invitation sent to %{email}" msgstr "Invitación enviada a %{email}" -#: lib/towerops_web/live/org/settings_live.html.heex:617 +#: lib/towerops_web/live/org/settings_live.html.heex:658 #, elixir-autogen, elixir-format msgid "Invitations that haven't been accepted yet." msgstr "Invitaciones que aún no han sido aceptadas." -#: lib/towerops_web/live/org/settings_live.html.heex:573 +#: lib/towerops_web/live/org/settings_live.html.heex:609 #, elixir-autogen, elixir-format msgid "Invite a Team Member" msgstr "Invitar a un miembro del equipo" -#: lib/towerops_web/live/device_live/show.html.heex:2844 +#: lib/towerops_web/live/device_live/show.html.heex:2981 #, elixir-autogen, elixir-format msgid "Jitter (ms)" msgstr "Jitter (ms)" @@ -2093,18 +2095,18 @@ msgstr "Monitoreo de trabajos" msgid "Job Monitoring Dashboard" msgstr "Panel de monitoreo de trabajos" -#: lib/towerops_web/live/admin/user_live/index.html.heex:14 -#: lib/towerops_web/live/org/settings_live.html.heex:713 +#: lib/towerops_web/live/admin/user_live/index.html.heex:16 +#: lib/towerops_web/live/org/settings_live.html.heex:754 #, elixir-autogen, elixir-format msgid "Joined" msgstr "Unido" -#: lib/towerops_web/live/user_settings_live.html.heex:296 +#: lib/towerops_web/live/user_settings_live.html.heex:309 #, elixir-autogen, elixir-format msgid "Language" msgstr "Idioma" -#: lib/towerops_web/live/device_live/show.html.heex:2322 +#: lib/towerops_web/live/device_live/show.html.heex:2455 #, elixir-autogen, elixir-format msgid "Last Checked" msgstr "Última verificación" @@ -2112,14 +2114,14 @@ msgstr "Última verificación" #: lib/towerops_web/live/admin/agent_live/index.html.heex:53 #: lib/towerops_web/live/admin/agent_live/index.html.heex:127 #: lib/towerops_web/live/agent_live/index.html.heex:112 -#: lib/towerops_web/live/agent_live/index.html.heex:222 -#: lib/towerops_web/live/device_live/index.html.heex:251 -#: lib/towerops_web/live/device_live/index.html.heex:599 +#: lib/towerops_web/live/agent_live/index.html.heex:228 +#: lib/towerops_web/live/device_live/index.html.heex:290 +#: lib/towerops_web/live/device_live/index.html.heex:647 #, elixir-autogen, elixir-format msgid "Last Seen" msgstr "Visto por última vez" -#: lib/towerops_web/live/agent_live/show.html.heex:276 +#: lib/towerops_web/live/agent_live/show.html.heex:286 #, elixir-autogen, elixir-format msgid "Last Seen (Heartbeat)" msgstr "Visto por última vez (Heartbeat)" @@ -2129,65 +2131,67 @@ msgstr "Visto por última vez (Heartbeat)" msgid "Last Violation" msgstr "Última infracción" -#: lib/towerops_web/live/user_settings_live.html.heex:148 +#: lib/towerops_web/live/user_settings_live.html.heex:161 #, elixir-autogen, elixir-format msgid "Last name" msgstr "Apellido" -#: lib/towerops_web/live/org/settings_live.html.heex:939 +#: lib/towerops_web/live/org/settings_live.html.heex:1015 #, elixir-autogen, elixir-format msgid "Last sync failed" msgstr "Última sincronización fallida" -#: lib/towerops_web/live/org/integrations_live.html.heex:54 +#: lib/towerops_web/live/org/integrations_live.html.heex:75 +#: lib/towerops_web/live/org/integrations_live.html.heex:452 #, elixir-autogen, elixir-format msgid "Last synced:" msgstr "Última sincronización:" -#: lib/towerops_web/live/device_live/show.html.heex:2838 +#: lib/towerops_web/live/device_live/show.html.heex:2975 #, elixir-autogen, elixir-format msgid "Latency (ms)" msgstr "Latencia (ms)" -#: lib/towerops_web/live/trace_live/index.html.heex:256 +#: lib/towerops_web/live/trace_live/index.html.heex:269 #, elixir-autogen, elixir-format msgid "Latest Metrics" msgstr "Métricas recientes" -#: lib/towerops_web/live/site_live/form.html.heex:110 +#: lib/towerops_web/live/onboarding_live.html.heex:162 +#: lib/towerops_web/live/site_live/form.html.heex:112 #, elixir-autogen, elixir-format msgid "Latitude" msgstr "Latitud" -#: lib/towerops_web/live/site_live/form.html.heex:267 -#: lib/towerops_web/live/site_live/form.html.heex:289 -#: lib/towerops_web/live/site_live/form.html.heex:399 -#: lib/towerops_web/live/site_live/form.html.heex:406 +#: lib/towerops_web/live/site_live/form.html.heex:279 +#: lib/towerops_web/live/site_live/form.html.heex:301 +#: lib/towerops_web/live/site_live/form.html.heex:415 +#: lib/towerops_web/live/site_live/form.html.heex:422 #, elixir-autogen, elixir-format msgid "Leave blank to inherit from organization" msgstr "Deja vacío para heredar de la organización" -#: lib/towerops_web/live/site_live/form.html.heex:348 +#: lib/towerops_web/live/site_live/form.html.heex:360 #, elixir-autogen, elixir-format msgid "Leave blank to inherit from organization (default: 161)" msgstr "Deja vacío para heredar de la organización (predeterminado: 161)" -#: lib/towerops_web/live/device_live/form.html.heex:385 -#: lib/towerops_web/live/device_live/form.html.heex:434 -#: lib/towerops_web/live/device_live/form.html.heex:662 -#: lib/towerops_web/live/device_live/form.html.heex:671 +#: lib/towerops_web/live/device_live/form.html.heex:392 +#: lib/towerops_web/live/device_live/form.html.heex:443 +#: lib/towerops_web/live/device_live/form.html.heex:677 +#: lib/towerops_web/live/device_live/form.html.heex:686 #, elixir-autogen, elixir-format msgid "Leave blank to inherit from site/organization" msgstr "Deja vacío para heredar del sitio/organización" -#: lib/towerops_web/live/dashboard_live.html.heex:42 +#: lib/towerops_web/live/dashboard_live.html.heex:45 #, elixir-autogen, elixir-format msgid "Let's get started!" msgstr "¡Comencemos!" -#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:226 -#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:249 -#: lib/towerops_web/live/org/preseem_devices_live.html.heex:212 +#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:257 +#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:280 +#: lib/towerops_web/live/org/preseem_devices_live.html.heex:223 #, elixir-autogen, elixir-format msgid "Link" msgstr "Vincular" @@ -2197,82 +2201,75 @@ msgstr "Vincular" msgid "Link Gaiia entities to your Towerops sites and devices. Match suggestions are shown in amber." msgstr "Vincula las entidades de Gaiia con tus sitios y dispositivos de Towerops. Las sugerencias de coincidencia se muestran en ámbar." -#: lib/towerops_web/live/org/preseem_devices_live.html.heex:147 +#: lib/towerops_web/live/org/preseem_devices_live.html.heex:149 #, elixir-autogen, elixir-format msgid "Linked Device" msgstr "Dispositivo vinculado" -#: lib/towerops_web/live/device_live/show.html.heex:2531 +#: lib/towerops_web/live/device_live/show.html.heex:2668 #, elixir-autogen, elixir-format msgid "Linked Subscriber" msgstr "Suscriptor vinculado" -#: lib/towerops_web/live/activity_feed_live.html.heex:129 +#: lib/towerops_web/live/activity_feed_live.html.heex:131 #, elixir-autogen, elixir-format msgid "Live" msgstr "En vivo" #: lib/towerops_web/live/site_live/index.html.heex:60 -#: lib/towerops_web/live/user_settings_live.html.heex:872 +#: lib/towerops_web/live/user_settings_live.html.heex:916 #, elixir-autogen, elixir-format msgid "Location" msgstr "Ubicación" -#: lib/towerops_web/controllers/user_session_controller.ex:119 +#: lib/towerops_web/controllers/user_session_controller.ex:136 #, elixir-autogen, elixir-format msgid "Logged out successfully." msgstr "Sesión cerrada correctamente." -#: lib/towerops_web/live/user_settings_live.html.heex:827 +#: lib/towerops_web/live/user_settings_live.html.heex:871 #, elixir-autogen, elixir-format msgid "Login History" msgstr "Historial de inicio de sesión" -#: lib/towerops_web/live/user_settings_live.html.heex:206 +#: lib/towerops_web/live/user_settings_live.html.heex:219 #, elixir-autogen, elixir-format msgid "London" msgstr "Londres" -#: lib/towerops_web/live/site_live/form.html.heex:132 +#: lib/towerops_web/live/onboarding_live.html.heex:169 +#: lib/towerops_web/live/site_live/form.html.heex:134 #, elixir-autogen, elixir-format msgid "Longitude" msgstr "Longitud" -#: lib/towerops_web/live/device_live/show.html.heex:2847 +#: lib/towerops_web/live/device_live/show.html.heex:2984 #, elixir-autogen, elixir-format msgid "Loss (%)" msgstr "Pérdida (%)" -#: lib/towerops_web/live/device_live/index.html.heex:521 -#, elixir-autogen, elixir-format -msgid "MAC" -msgstr "MAC" - -#: lib/towerops_web/live/device_live/show.html.heex:2456 +#: lib/towerops_web/live/device_live/show.html.heex:2593 #, elixir-autogen, elixir-format msgid "MAC Address" msgstr "Dirección MAC" -#: lib/towerops_web/live/device_live/show.html.heex:1499 +#: lib/towerops_web/live/device_live/show.html.heex:1614 #, elixir-autogen, elixir-format msgid "MAC Address Table" msgstr "Tabla de direcciones MAC" -#: lib/towerops_web/live/device_live/show.html.heex:168 +#: lib/towerops_web/live/device_live/show.html.heex:203 #, elixir-autogen, elixir-format msgid "MAC Table" msgstr "Tabla MAC" -#: lib/towerops_web/live/device_live/show.html.heex:2613 +#: lib/towerops_web/live/device_live/show.html.heex:2750 +#: lib/towerops_web/live/site_live/show.html.heex:187 +#: lib/towerops_web/live/site_live/show.html.heex:386 #, elixir-autogen, elixir-format msgid "MRR" msgstr "MRR" -#: lib/towerops_web/live/dashboard_live.html.heex:241 -#, elixir-autogen, elixir-format -msgid "MRR at Risk" -msgstr "MRR en riesgo" - #: lib/towerops_web/controllers/user_session_controller.ex:112 #, elixir-autogen, elixir-format msgid "Magic link is invalid or it has expired." @@ -2288,12 +2285,12 @@ msgstr "Gestiona la lista de IPs permitidas y ve las IPs denegadas" msgid "Manage Sites" msgstr "Gestionar sitios" -#: lib/towerops_web/live/user_settings_live.html.heex:1035 +#: lib/towerops_web/live/user_settings_live.html.heex:1079 #, elixir-autogen, elixir-format msgid "Manage TOTP devices for two-factor authentication. You must have at least one device configured." msgstr "Gestiona los dispositivos TOTP para autenticación de dos factores. Debes tener al menos un dispositivo configurado." -#: lib/towerops_web/live/user_settings_live.html.heex:740 +#: lib/towerops_web/live/user_settings_live.html.heex:773 #, elixir-autogen, elixir-format msgid "Manage browser sessions where you're currently logged in." msgstr "Gestiona las sesiones de navegador donde tienes sesión iniciada." @@ -2303,7 +2300,7 @@ msgstr "Gestiona las sesiones de navegador donde tienes sesión iniciada." msgid "Manage device matching between Preseem access points and your monitored devices." msgstr "Gestiona la vinculación de dispositivos entre puntos de acceso de Preseem y tus dispositivos monitoreados." -#: lib/towerops_web/live/user_settings_live.html.heex:615 +#: lib/towerops_web/live/user_settings_live.html.heex:647 #, elixir-autogen, elixir-format msgid "Manage mobile devices that receive push notifications for alerts." msgstr "Gestiona los dispositivos móviles que reciben notificaciones push de alertas." @@ -2328,18 +2325,18 @@ msgstr "Gestiona tu correo electrónico, contraseña y configuración de segurid msgid "Manage your site locations and hierarchy" msgstr "Gestiona las ubicaciones y jerarquía de tus sitios" -#: lib/towerops_web/live/device_live/show.html.heex:1192 +#: lib/towerops_web/live/device_live/show.html.heex:1259 #, elixir-autogen, elixir-format msgid "Managed" msgstr "Gestionado" -#: lib/towerops_web/live/device_live/index.html.heex:572 -#: lib/towerops_web/live/device_live/show.html.heex:2426 +#: lib/towerops_web/live/device_live/index.html.heex:624 +#: lib/towerops_web/live/device_live/show.html.heex:2563 #, elixir-autogen, elixir-format msgid "Manufacturer" msgstr "Fabricante" -#: lib/towerops_web/live/site_live/form.html.heex:156 +#: lib/towerops_web/live/site_live/form.html.heex:158 #, elixir-autogen, elixir-format msgid "Map Preview" msgstr "Vista previa del mapa" @@ -2349,7 +2346,7 @@ msgstr "Vista previa del mapa" msgid "Map to Gaiia inventory" msgstr "Vincular al inventario de Gaiia" -#: lib/towerops_web/live/device_live/show.html.heex:2812 +#: lib/towerops_web/live/device_live/show.html.heex:2949 #, elixir-autogen, elixir-format msgid "Match Type" msgstr "Tipo de coincidencia" @@ -2359,84 +2356,78 @@ msgstr "Tipo de coincidencia" msgid "Matched" msgstr "Vinculado" -#: lib/towerops_web/live/org/settings_live.html.heex:771 -#, elixir-autogen, elixir-format -msgid "Member" -msgstr "Miembro" - -#: lib/towerops_web/live/org/settings_live.ex:208 +#: lib/towerops_web/live/org/settings_live.ex:244 #, elixir-autogen, elixir-format msgid "Member removed" msgstr "Miembro eliminado" #: lib/towerops_web/live/admin/org_live/index.html.heex:12 -#: lib/towerops_web/live/org/settings_live.html.heex:75 -#: lib/towerops_web/live/org/settings_live.html.heex:694 +#: lib/towerops_web/live/org/settings_live.html.heex:79 +#: lib/towerops_web/live/org/settings_live.html.heex:735 #, elixir-autogen, elixir-format msgid "Members" msgstr "Miembros" -#: lib/towerops_web/live/device_live/show.html.heex:717 +#: lib/towerops_web/live/device_live/show.html.heex:778 #, elixir-autogen, elixir-format msgid "Memory Usage" msgstr "Uso de memoria" -#: lib/towerops_web/components/layouts.ex:296 -#: lib/towerops_web/components/layouts.ex:301 +#: lib/towerops_web/components/layouts.ex:437 #, elixir-autogen, elixir-format msgid "Menu" msgstr "Menú" -#: lib/towerops_web/live/org/settings_live.html.heex:1220 +#: lib/towerops_web/live/org/settings_live.html.heex:1306 #, elixir-autogen, elixir-format msgid "Merge data from both systems. Conflicts resolved by most-recently-updated. Requires write token." msgstr "Combina datos de ambos sistemas. Los conflictos se resuelven por la actualización más reciente. Requiere token de escritura." -#: lib/towerops_web/live/dashboard_live.html.heex:383 +#: lib/towerops_web/live/alert_live/index.html.heex:220 #, elixir-autogen, elixir-format msgid "Message" msgstr "Mensaje" -#: lib/towerops_web/live/user_settings_live.html.heex:866 +#: lib/towerops_web/live/user_settings_live.html.heex:910 #, elixir-autogen, elixir-format msgid "Method" msgstr "Método" -#: lib/towerops_web/live/org/settings_live.html.heex:54 +#: lib/towerops_web/live/org/settings_live.html.heex:57 #, elixir-autogen, elixir-format msgid "MikroTik" msgstr "MikroTik" -#: lib/towerops_web/live/device_live/form.html.heex:623 -#: lib/towerops_web/live/org/settings_live.html.heex:355 -#: lib/towerops_web/live/site_live/form.html.heex:374 +#: lib/towerops_web/live/device_live/form.html.heex:636 +#: lib/towerops_web/live/org/settings_live.html.heex:377 +#: lib/towerops_web/live/site_live/form.html.heex:388 #, elixir-autogen, elixir-format msgid "MikroTik API Configuration" msgstr "Configuración de API de MikroTik" -#: lib/towerops_web/live/device_live/form.html.heex:632 -#: lib/towerops_web/live/org/settings_live.html.heex:364 -#: lib/towerops_web/live/site_live/form.html.heex:384 +#: lib/towerops_web/live/device_live/form.html.heex:647 +#: lib/towerops_web/live/org/settings_live.html.heex:388 +#: lib/towerops_web/live/site_live/form.html.heex:400 #, elixir-autogen, elixir-format msgid "MikroTik API integration is under active development." msgstr "La integración de API de MikroTik está en desarrollo activo." -#: lib/towerops_web/live/device_live/show.html.heex:2000 +#: lib/towerops_web/live/device_live/show.html.heex:2127 #, elixir-autogen, elixir-format msgid "MikroTik API not enabled" msgstr "API de MikroTik no habilitada" -#: lib/towerops_web/live/device_live/form.html.heex:493 -#: lib/towerops_web/live/device_live/form.html.heex:521 -#: lib/towerops_web/live/org/settings_live.html.heex:289 -#: lib/towerops_web/live/org/settings_live.html.heex:314 -#: lib/towerops_web/live/site_live/form.html.heex:313 -#: lib/towerops_web/live/site_live/form.html.heex:338 +#: lib/towerops_web/live/device_live/form.html.heex:502 +#: lib/towerops_web/live/device_live/form.html.heex:530 +#: lib/towerops_web/live/org/settings_live.html.heex:305 +#: lib/towerops_web/live/org/settings_live.html.heex:330 +#: lib/towerops_web/live/site_live/form.html.heex:325 +#: lib/towerops_web/live/site_live/form.html.heex:350 #, elixir-autogen, elixir-format msgid "Min 8 characters" msgstr "Mínimo 8 caracteres" -#: lib/towerops_web/live/device_live/show.html.heex:2473 +#: lib/towerops_web/live/device_live/show.html.heex:2610 #, elixir-autogen, elixir-format msgid "Mismatch" msgstr "Discrepancia" @@ -2446,71 +2437,68 @@ msgstr "Discrepancia" msgid "Missing required parameters" msgstr "Faltan parámetros requeridos" -#: lib/towerops_web/live/user_settings_live.html.heex:612 +#: lib/towerops_web/live/user_settings_live.html.heex:644 #, elixir-autogen, elixir-format msgid "Mobile Devices" msgstr "Dispositivos móviles" -#: lib/towerops_web/live/mobile_qr_live.ex:65 +#: lib/towerops_web/live/mobile_qr_live.ex:71 #, elixir-autogen, elixir-format msgid "Mobile device authenticated successfully!" msgstr "¡Dispositivo móvil autenticado correctamente!" -#: lib/towerops_web/live/dashboard_live.html.heex:91 +#: lib/towerops_web/live/dashboard_live.html.heex:94 #, elixir-autogen, elixir-format msgid "Monitor & Receive Alerts" msgstr "Monitorear y recibir alertas" -#: lib/towerops_web/live/device_live/index.html.heex:10 -#, elixir-autogen, elixir-format -msgid "Monitor and manage all your network devices" -msgstr "Monitorea y gestiona todos tus dispositivos de red" - -#: lib/towerops_web/live/admin/dashboard_live.html.heex:36 +#: lib/towerops_web/live/admin/dashboard_live.html.heex:38 #, elixir-autogen, elixir-format msgid "Monitor background jobs and queues" msgstr "Monitorea trabajos en segundo plano y colas" -#: lib/towerops_web/live/device_live/form.html.heex:352 +#: lib/towerops_web/live/device_live/form.html.heex:358 #, elixir-autogen, elixir-format msgid "Monitor device availability with ICMP pings and collect detailed information via SNMP" msgstr "Monitorea la disponibilidad de dispositivos con pings ICMP y recopila información detallada vía SNMP" -#: lib/towerops_web/live/device_live/form.html.heex:216 +#: lib/towerops_web/live/device_live/form.html.heex:218 #, elixir-autogen, elixir-format msgid "Monitoring Configuration" msgstr "Configuración de monitoreo" -#: lib/towerops_web/live/device_live/form.html.heex:318 +#: lib/towerops_web/live/device_live/form.html.heex:324 #, elixir-autogen, elixir-format msgid "Monitoring mode" msgstr "Modo de monitoreo" -#: lib/towerops_web/live/device_live/show.html.heex:2514 +#: lib/towerops_web/live/device_live/show.html.heex:2651 +#: lib/towerops_web/live/site_live/show.html.heex:87 #, elixir-autogen, elixir-format msgid "Monthly Revenue" msgstr "Ingresos mensuales" -#: lib/towerops_web/live/user_settings_live.html.heex:194 +#: lib/towerops_web/live/user_settings_live.html.heex:207 #, elixir-autogen, elixir-format msgid "Mountain Time (US & Canada)" msgstr "Hora de montaña (EE. UU. y Canadá)" +#: lib/towerops_web/components/layouts.ex:476 #: lib/towerops_web/live/account_live/my_data.ex:58 -#: lib/towerops_web/live/user_settings_live.html.heex:97 +#: lib/towerops_web/live/user_settings_live.html.heex:111 #, elixir-autogen, elixir-format msgid "My Data" msgstr "Mis datos" #: lib/towerops_web/live/admin/monitoring_live.html.heex:36 #: lib/towerops_web/live/admin/monitoring_live.html.heex:253 -#: lib/towerops_web/live/device_live/show.html.heex:764 -#: lib/towerops_web/live/device_live/show.html.heex:876 -#: lib/towerops_web/live/device_live/show.html.heex:913 -#: lib/towerops_web/live/device_live/show.html.heex:953 -#: lib/towerops_web/live/device_live/show.html.heex:992 -#: lib/towerops_web/live/device_live/show.html.heex:1025 -#: lib/towerops_web/live/device_live/show.html.heex:1067 +#: lib/towerops_web/live/device_live/show.html.heex:825 +#: lib/towerops_web/live/device_live/show.html.heex:937 +#: lib/towerops_web/live/device_live/show.html.heex:976 +#: lib/towerops_web/live/device_live/show.html.heex:1016 +#: lib/towerops_web/live/device_live/show.html.heex:1057 +#: lib/towerops_web/live/device_live/show.html.heex:1090 +#: lib/towerops_web/live/device_live/show.html.heex:1134 #, elixir-autogen, elixir-format msgid "N/A" msgstr "N/D" @@ -2519,36 +2507,38 @@ msgstr "N/D" #: lib/towerops_web/live/admin/agent_live/index.html.heex:90 #: lib/towerops_web/live/admin/org_live/index.html.heex:10 #: lib/towerops_web/live/agent_live/index.html.heex:75 -#: lib/towerops_web/live/agent_live/index.html.heex:185 -#: lib/towerops_web/live/device_live/index.html.heex:233 -#: lib/towerops_web/live/device_live/show.html.heex:2304 -#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:136 -#: lib/towerops_web/live/org/preseem_devices_live.html.heex:123 +#: lib/towerops_web/live/agent_live/index.html.heex:191 +#: lib/towerops_web/live/device_live/show.html.heex:2437 +#: lib/towerops_web/live/maintenance_live/form.html.heex:30 +#: lib/towerops_web/live/maintenance_live/index.html.heex:86 +#: lib/towerops_web/live/onboarding_live.html.heex:148 +#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:140 +#: lib/towerops_web/live/org/preseem_devices_live.html.heex:125 #, elixir-autogen, elixir-format msgid "Name" msgstr "Nombre" -#: lib/towerops_web/live/org/settings_live.html.heex:1257 +#: lib/towerops_web/live/org/settings_live.html.heex:1347 #, elixir-autogen, elixir-format msgid "Name, IP, role, platform, status, serial number" msgstr "Nombre, IP, rol, plataforma, estado, número de serie" -#: lib/towerops_web/live/org/settings_live.html.heex:1342 +#: lib/towerops_web/live/org/settings_live.html.heex:1432 #, elixir-autogen, elixir-format msgid "Narrow the sync scope. Leave blank to sync everything. Comma-separated for multiple values." msgstr "Limita el alcance de la sincronización. Deja vacío para sincronizar todo. Valores separados por comas." -#: lib/towerops_web/live/device_live/show.html.heex:137 +#: lib/towerops_web/live/device_live/show.html.heex:172 #, elixir-autogen, elixir-format msgid "Neighbors" msgstr "Vecinos" -#: lib/towerops_web/live/org/settings_live.html.heex:1106 +#: lib/towerops_web/live/org/settings_live.html.heex:1186 #, elixir-autogen, elixir-format msgid "NetBox URL" msgstr "URL de NetBox" -#: lib/towerops_web/live/org/settings_live.html.heex:1170 +#: lib/towerops_web/live/org/settings_live.html.heex:1252 #, elixir-autogen, elixir-format msgid "NetBox is the source of truth. Import devices, sites, and IPs from NetBox into TowerOps." msgstr "NetBox es la fuente de verdad. Importa dispositivos, sitios e IPs de NetBox a TowerOps." @@ -2559,13 +2549,15 @@ msgstr "NetBox es la fuente de verdad. Importa dispositivos, sitios e IPs de Net msgid "Network Insights" msgstr "Observaciones de red" +#: lib/towerops_web/components/layouts.ex:340 +#: lib/towerops_web/components/layouts.ex:579 #: lib/towerops_web/live/network_map_live.ex:32 #: lib/towerops_web/live/network_map_live.html.heex:8 #, elixir-autogen, elixir-format msgid "Network Map" msgstr "Mapa de red" -#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:57 +#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:59 #, elixir-autogen, elixir-format msgid "Network Sites" msgstr "Sitios de red" @@ -2575,17 +2567,19 @@ msgstr "Sitios de red" msgid "Network map refreshed" msgstr "Mapa de red actualizado" -#: lib/towerops_web/live/org/settings_live.html.heex:988 +#: lib/towerops_web/live/org/settings_live.html.heex:1064 #, elixir-autogen, elixir-format msgid "Never synced" msgstr "Nunca sincronizado" -#: lib/towerops_web/live/user_settings_live.html.heex:574 +#: lib/towerops_web/live/user_settings_live.html.heex:602 #, elixir-autogen, elixir-format msgid "Never used" msgstr "Nunca usado" #: lib/towerops_web/live/device_live/form.ex:92 +#: lib/towerops_web/live/device_live/index.html.heex:111 +#: lib/towerops_web/live/device_live/index.html.heex:156 #, elixir-autogen, elixir-format msgid "New Device" msgstr "Nuevo dispositivo" @@ -2600,38 +2594,38 @@ msgstr "Nueva organización" msgid "New Site" msgstr "Nuevo sitio" -#: lib/towerops_web/live/user_settings_live.html.heex:451 +#: lib/towerops_web/live/user_settings_live.html.heex:475 #, elixir-autogen, elixir-format msgid "New password" msgstr "Nueva contraseña" -#: lib/towerops_web/live/device_live/index.html.heex:632 -#: lib/towerops_web/live/user_settings_live.html.heex:941 +#: lib/towerops_web/live/device_live/index.html.heex:679 +#: lib/towerops_web/live/user_settings_live.html.heex:985 #, elixir-autogen, elixir-format msgid "Next" msgstr "Siguiente" -#: lib/towerops_web/live/user_settings_live.html.heex:537 +#: lib/towerops_web/live/user_settings_live.html.heex:565 #, elixir-autogen, elixir-format msgid "No API tokens" msgstr "No hay tokens de API" -#: lib/towerops_web/live/device_live/show.html.heex:1486 +#: lib/towerops_web/live/device_live/show.html.heex:1601 #, elixir-autogen, elixir-format msgid "No ARP entries discovered" msgstr "No se descubrieron entradas ARP" -#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:123 +#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:125 #, elixir-autogen, elixir-format msgid "No Gaiia data has been synced yet. Enable the Gaiia integration and run a sync." msgstr "Aún no se han sincronizado datos de Gaiia. Habilita la integración de Gaiia y ejecuta una sincronización." -#: lib/towerops_web/live/device_live/show.html.heex:2661 +#: lib/towerops_web/live/device_live/show.html.heex:2798 #, elixir-autogen, elixir-format msgid "No Gaiia inventory item linked to this device." msgstr "No hay elemento de inventario de Gaiia vinculado a este dispositivo." -#: lib/towerops_web/live/device_live/show.html.heex:1757 +#: lib/towerops_web/live/device_live/show.html.heex:1878 #, elixir-autogen, elixir-format msgid "No IP addresses discovered" msgstr "No se descubrieron direcciones IP" @@ -2641,7 +2635,7 @@ msgstr "No se descubrieron direcciones IP" msgid "No Insights Yet" msgstr "Sin observaciones aún" -#: lib/towerops_web/live/device_live/show.html.heex:1572 +#: lib/towerops_web/live/device_live/show.html.heex:1687 #, elixir-autogen, elixir-format msgid "No MAC addresses discovered" msgstr "No se descubrieron direcciones MAC" @@ -2651,17 +2645,17 @@ msgstr "No se descubrieron direcciones MAC" msgid "No Preseem access points have been synced yet. Enable the integration and run a sync." msgstr "Aún no se han sincronizado puntos de acceso de Preseem. Habilita la integración y ejecuta una sincronización." -#: lib/towerops_web/live/trace_live/index.html.heex:297 +#: lib/towerops_web/live/trace_live/index.html.heex:310 #, elixir-autogen, elixir-format msgid "No Preseem data available" msgstr "No hay datos de Preseem disponibles" -#: lib/towerops_web/live/device_live/show.html.heex:2904 +#: lib/towerops_web/live/device_live/show.html.heex:3041 #, elixir-autogen, elixir-format msgid "No Preseem data linked to this device." msgstr "No hay datos de Preseem vinculados a este dispositivo." -#: lib/towerops_web/live/user_settings_live.html.heex:1177 +#: lib/towerops_web/live/user_settings_live.html.heex:1225 #, elixir-autogen, elixir-format msgid "No Recovery Codes" msgstr "Sin códigos de recuperación" @@ -2671,7 +2665,7 @@ msgstr "Sin códigos de recuperación" msgid "No Sites Yet" msgstr "Sin sitios aún" -#: lib/towerops_web/live/device_live/show.html.heex:1641 +#: lib/towerops_web/live/device_live/show.html.heex:1758 #, elixir-autogen, elixir-format msgid "No VLANs discovered" msgstr "No se descubrieron VLANs" @@ -2681,8 +2675,8 @@ msgstr "No se descubrieron VLANs" msgid "No access points found" msgstr "No se encontraron puntos de acceso" -#: lib/towerops_web/live/alert_live/index.html.heex:78 -#: lib/towerops_web/live/alert_live/index.html.heex:84 +#: lib/towerops_web/live/alert_live/index.html.heex:174 +#: lib/towerops_web/live/alert_live/index.html.heex:180 #, elixir-autogen, elixir-format msgid "No active alerts. Your network is looking good!" msgstr "No hay alertas activas. ¡Tu red se ve bien!" @@ -2692,7 +2686,7 @@ msgstr "No hay alertas activas. ¡Tu red se ve bien!" msgid "No active insights. Your network is looking healthy!" msgstr "No hay observaciones activas. ¡Tu red se ve saludable!" -#: lib/towerops_web/live/user_settings_live.html.heex:749 +#: lib/towerops_web/live/user_settings_live.html.heex:782 #, elixir-autogen, elixir-format msgid "No active sessions" msgstr "No hay sesiones activas" @@ -2702,7 +2696,7 @@ msgstr "No hay sesiones activas" msgid "No activity yet" msgstr "Sin actividad aún" -#: lib/towerops_web/live/device_live/form.html.heex:288 +#: lib/towerops_web/live/device_live/form.html.heex:290 #, elixir-autogen, elixir-format msgid "No agent assigned - cloud polling" msgstr "Sin agente asignado - sondeo en la nube" @@ -2712,7 +2706,7 @@ msgstr "Sin agente asignado - sondeo en la nube" msgid "No agents" msgstr "Sin agentes" -#: lib/towerops_web/live/org/settings_live.html.heex:528 +#: lib/towerops_web/live/org/settings_live.html.heex:564 #, elixir-autogen, elixir-format msgid "No agents configured yet." msgstr "No hay agentes configurados aún." @@ -2722,12 +2716,12 @@ msgstr "No hay agentes configurados aún." msgid "No allowed IPs or CIDR ranges" msgstr "No hay IPs o rangos CIDR permitidos" -#: lib/towerops_web/live/user_settings_live.html.heex:1044 +#: lib/towerops_web/live/user_settings_live.html.heex:1090 #, elixir-autogen, elixir-format msgid "No authenticator apps" msgstr "Sin apps de autenticación" -#: lib/towerops_web/live/device_live/show.html.heex:1978 +#: lib/towerops_web/live/device_live/show.html.heex:2105 #, elixir-autogen, elixir-format msgid "No backups yet" msgstr "Sin respaldos aún" @@ -2737,17 +2731,17 @@ msgstr "Sin respaldos aún" msgid "No binary available for architecture: %{arch}" msgstr "No hay binario disponible para la arquitectura: %{arch}" -#: lib/towerops_web/live/device_live/show.html.heex:2258 +#: lib/towerops_web/live/device_live/show.html.heex:2389 #, elixir-autogen, elixir-format msgid "No checks configured" msgstr "No hay verificaciones configuradas" -#: lib/towerops_web/live/alert_live/index.html.heex:80 +#: lib/towerops_web/live/alert_live/index.html.heex:176 #, elixir-autogen, elixir-format msgid "No critical alerts. Nice work keeping things healthy!" msgstr "No hay alertas críticas. ¡Buen trabajo manteniendo todo saludable!" -#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:172 +#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:174 #, elixir-autogen, elixir-format msgid "No data mismatches found between mapped devices." msgstr "No se encontraron discrepancias de datos entre los dispositivos vinculados." @@ -2757,17 +2751,17 @@ msgstr "No se encontraron discrepancias de datos entre los dispositivos vinculad msgid "No denied IPs" msgstr "No hay IPs denegadas" -#: lib/towerops_web/live/device_live/index.html.heex:175 +#: lib/towerops_web/live/device_live/index.html.heex:149 #, elixir-autogen, elixir-format msgid "No devices" msgstr "Sin dispositivos" -#: lib/towerops_web/live/agent_live/show.html.heex:309 +#: lib/towerops_web/live/agent_live/show.html.heex:319 #, elixir-autogen, elixir-format msgid "No devices assigned" msgstr "No hay dispositivos asignados" -#: lib/towerops_web/live/device_live/index.html.heex:498 +#: lib/towerops_web/live/device_live/index.html.heex:556 #, elixir-autogen, elixir-format msgid "No discovered devices" msgstr "No hay dispositivos descubiertos" @@ -2778,7 +2772,7 @@ msgstr "No hay dispositivos descubiertos" msgid "No dismissed insights." msgstr "No hay observaciones descartadas." -#: lib/towerops_web/live/device_live/show.html.heex:2069 +#: lib/towerops_web/live/device_live/show.html.heex:2196 #, elixir-autogen, elixir-format msgid "No events yet" msgstr "Sin eventos aún" @@ -2788,7 +2782,7 @@ msgstr "Sin eventos aún" msgid "No geocoded sites" msgstr "No hay sitios geocodificados" -#: lib/towerops_web/live/agent_live/index.html.heex:332 +#: lib/towerops_web/live/agent_live/index.html.heex:344 #, elixir-autogen, elixir-format msgid "No global default configured. Devices without assignments will use direct Phoenix cluster polling." msgstr "No hay predeterminado global configurado. Los dispositivos sin asignación usarán sondeo directo del clúster Phoenix." @@ -2798,22 +2792,22 @@ msgstr "No hay predeterminado global configurado. Los dispositivos sin asignaci msgid "No insights found" msgstr "No se encontraron observaciones" -#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:284 +#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:286 #, elixir-autogen, elixir-format msgid "No inventory data" msgstr "Sin datos de inventario" -#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:113 +#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:115 #, elixir-autogen, elixir-format msgid "No inventory items found" msgstr "No se encontraron elementos de inventario" -#: lib/towerops_web/live/user_settings_live.html.heex:839 +#: lib/towerops_web/live/user_settings_live.html.heex:883 #, elixir-autogen, elixir-format msgid "No login history" msgstr "Sin historial de inicio de sesión" -#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:119 +#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:121 #, elixir-autogen, elixir-format msgid "No mapped entities yet. Sync from Gaiia and link entities below." msgstr "No hay entidades vinculadas aún. Sincroniza desde Gaiia y vincula las entidades abajo." @@ -2823,17 +2817,17 @@ msgstr "No hay entidades vinculadas aún. Sincroniza desde Gaiia y vincula las e msgid "No matched access points yet. Sync from Preseem and link devices." msgstr "No hay puntos de acceso vinculados aún. Sincroniza desde Preseem y vincula dispositivos." -#: lib/towerops_web/live/user_settings_live.html.heex:624 +#: lib/towerops_web/live/user_settings_live.html.heex:656 #, elixir-autogen, elixir-format msgid "No mobile devices" msgstr "Sin dispositivos móviles" -#: lib/towerops_web/live/device_live/show.html.heex:1406 +#: lib/towerops_web/live/device_live/show.html.heex:1519 #, elixir-autogen, elixir-format msgid "No neighbors discovered" msgstr "No se descubrieron vecinos" -#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:111 +#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:113 #, elixir-autogen, elixir-format msgid "No network sites found" msgstr "No se encontraron sitios de red" @@ -2843,27 +2837,27 @@ msgstr "No se encontraron sitios de red" msgid "No network topology available" msgstr "No hay topología de red disponible" -#: lib/towerops_web/live/org_live/index.html.heex:33 +#: lib/towerops_web/live/org_live/index.html.heex:39 #, elixir-autogen, elixir-format msgid "No organizations" msgstr "Sin organizaciones" -#: lib/towerops_web/live/trace_live/index.html.heex:369 +#: lib/towerops_web/live/trace_live/index.html.heex:384 #, elixir-autogen, elixir-format msgid "No peer data available" msgstr "No hay datos de pares disponibles" -#: lib/towerops_web/live/device_live/show.html.heex:2245 +#: lib/towerops_web/live/device_live/show.html.heex:2374 #, elixir-autogen, elixir-format msgid "No raw discovery data available. Run discovery again to collect debug data." msgstr "No hay datos de descubrimiento sin procesar disponibles. Ejecuta el descubrimiento de nuevo para recopilar datos de depuración." -#: lib/towerops_web/live/user_settings_live.html.heex:1144 +#: lib/towerops_web/live/user_settings_live.html.heex:1190 #, elixir-autogen, elixir-format msgid "No recovery codes available" msgstr "No hay códigos de recuperación disponibles" -#: lib/towerops_web/live/alert_live/index.html.heex:82 +#: lib/towerops_web/live/alert_live/index.html.heex:178 #, elixir-autogen, elixir-format msgid "No resolved alerts yet." msgstr "No hay alertas resueltas aún." @@ -2873,19 +2867,19 @@ msgstr "No hay alertas resueltas aún." msgid "No sensor data available" msgstr "No hay datos de sensores disponibles" -#: lib/towerops_web/live/trace_live/index.html.heex:146 +#: lib/towerops_web/live/trace_live/index.html.heex:156 #, elixir-autogen, elixir-format msgid "No subscriber info available" msgstr "No hay información de suscriptor disponible" -#: lib/towerops_web/live/user_settings_live.html.heex:77 +#: lib/towerops_web/live/user_settings_live.html.heex:88 #, elixir-autogen, elixir-format msgid "Notifications" msgstr "Notificaciones" -#: lib/towerops_web/live/device_live/show.html.heex:2109 -#: lib/towerops_web/live/device_live/show.html.heex:2143 -#: lib/towerops_web/live/device_live/show.html.heex:2181 +#: lib/towerops_web/live/device_live/show.html.heex:2238 +#: lib/towerops_web/live/device_live/show.html.heex:2272 +#: lib/towerops_web/live/device_live/show.html.heex:2310 #, elixir-autogen, elixir-format msgid "OID" msgstr "OID" @@ -2900,28 +2894,22 @@ msgstr "Cantidad de infracciones" msgid "Office network" msgstr "Red de oficina" -#: lib/towerops_web/live/alert_live/index.html.heex:54 -#, elixir-autogen, elixir-format -msgid "Oldest First" -msgstr "Más antiguos primero" - -#: lib/towerops_web/live/org/integrations_live.html.heex:345 -#: lib/towerops_web/live/org/settings_live.html.heex:1717 +#: lib/towerops_web/live/org/settings_live.html.heex:2057 #, elixir-autogen, elixir-format msgid "Once configured, Towerops will receive real-time updates when accounts, subscriptions, or inventory items change in Gaiia." msgstr "Una vez configurado, Towerops recibirá actualizaciones en tiempo real cuando cambien cuentas, suscripciones o elementos de inventario en Gaiia." -#: lib/towerops_web/live/site_live/form.html.heex:453 +#: lib/towerops_web/live/site_live/form.html.heex:475 #, elixir-autogen, elixir-format msgid "Once you delete a site, there is no going back. This will also delete all devices at this site." msgstr "Una vez que elimines un sitio, no hay vuelta atrás. También se eliminarán todos los dispositivos en este sitio." -#: lib/towerops_web/live/device_live/form.html.heex:738 +#: lib/towerops_web/live/device_live/form.html.heex:759 #, elixir-autogen, elixir-format msgid "Once you delete this device, there is no going back. All monitoring history and alerts will be permanently deleted." msgstr "Una vez que elimines este dispositivo, no hay vuelta atrás. Todo el historial de monitoreo y alertas se eliminará permanentemente." -#: lib/towerops_web/live/agent_live/edit.html.heex:69 +#: lib/towerops_web/live/agent_live/edit.html.heex:70 #, elixir-autogen, elixir-format msgid "Only organization members can toggle this setting." msgstr "Solo los miembros de la organización pueden cambiar esta configuración." @@ -2931,23 +2919,25 @@ msgstr "Solo los miembros de la organización pueden cambiar esta configuración msgid "Oops, a squirrel must have eaten that wire!" msgstr "¡Ups, una ardilla debe haberse comido ese cable!" -#: lib/towerops_web/live/org/settings_live.html.heex:1546 +#: lib/towerops_web/live/org/settings_live.html.heex:1879 #, elixir-autogen, elixir-format msgid "Optional — paste from PagerDuty webhook extension" msgstr "Opcional — pega desde la extensión de webhook de PagerDuty" -#: lib/towerops_web/live/device_live/form.html.heex:177 +#: lib/towerops_web/live/device_live/form.html.heex:179 #, elixir-autogen, elixir-format msgid "Optionally group this device into a site (office, datacenter, etc.)" msgstr "Opcionalmente agrupa este dispositivo en un sitio (oficina, centro de datos, etc.)" -#: lib/towerops_web/live/org/settings_live.html.heex:109 -#: lib/towerops_web/live/org/settings_live.html.heex:120 -#: lib/towerops_web/live/org_live/new.html.heex:31 +#: lib/towerops_web/live/org/settings_live.html.heex:113 +#: lib/towerops_web/live/org/settings_live.html.heex:124 +#: lib/towerops_web/live/org_live/new.html.heex:32 #, elixir-autogen, elixir-format msgid "Organization Name" msgstr "Nombre de la organización" +#: lib/towerops_web/components/layouts.ex:247 +#: lib/towerops_web/components/layouts.ex:602 #: lib/towerops_web/live/org/settings_live.html.heex:15 #, elixir-autogen, elixir-format msgid "Organization Settings" @@ -2958,63 +2948,63 @@ msgstr "Configuración de la organización" msgid "Organization created successfully" msgstr "Organización creada correctamente" -#: lib/towerops_web/live/admin/dashboard_live.html.heex:21 -#: lib/towerops_web/live/admin/user_live/index.html.heex:12 +#: lib/towerops_web/live/admin/dashboard_live.html.heex:22 +#: lib/towerops_web/live/admin/user_live/index.html.heex:14 #, elixir-autogen, elixir-format msgid "Organizations" msgstr "Organizaciones" -#: lib/towerops_web/live/device_live/index.html.heex:155 +#: lib/towerops_web/live/device_live/index.html.heex:134 #, elixir-autogen, elixir-format msgid "Organize your devices with sites" msgstr "Organiza tus dispositivos con sitios" -#: lib/towerops_web/live/trace_live/index.html.heex:321 +#: lib/towerops_web/live/trace_live/index.html.heex:334 #, elixir-autogen, elixir-format msgid "Other APs on device" msgstr "Otros APs en el dispositivo" -#: lib/towerops_web/live/device_live/show.html.heex:545 +#: lib/towerops_web/live/device_live/show.html.heex:588 #, elixir-autogen, elixir-format msgid "Overall Traffic" msgstr "Tráfico general" -#: lib/towerops_web/live/site_live/form.html.heex:378 +#: lib/towerops_web/live/site_live/form.html.heex:392 #, elixir-autogen, elixir-format msgid "Override organization MikroTik API defaults for all devices at this site. Leave blank to inherit from organization. Only applies to MikroTik devices." msgstr "Sobrescribe los valores predeterminados de API de MikroTik de la organización para todos los dispositivos en este sitio. Deja vacío para heredar de la organización. Solo aplica a dispositivos MikroTik." -#: lib/towerops_web/live/site_live/form.html.heex:250 +#: lib/towerops_web/live/site_live/form.html.heex:260 #, elixir-autogen, elixir-format msgid "Override organization SNMP defaults for all devices at this site. Leave blank to inherit from organization." msgstr "Sobrescribe los valores predeterminados de SNMP de la organización para todos los dispositivos en este sitio. Deja vacío para heredar de la organización." -#: lib/towerops_web/live/device_live/form.html.heex:266 -#: lib/towerops_web/live/device_live/form.html.heex:394 -#: lib/towerops_web/live/site_live/form.html.heex:209 +#: lib/towerops_web/live/device_live/form.html.heex:268 +#: lib/towerops_web/live/device_live/form.html.heex:401 +#: lib/towerops_web/live/site_live/form.html.heex:213 #, elixir-autogen, elixir-format msgid "Overriding" msgstr "Sobrescribiendo" -#: lib/towerops_web/live/agent_live/show.html.heex:60 -#: lib/towerops_web/live/device_live/show.html.heex:107 -#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:298 +#: lib/towerops_web/live/agent_live/show.html.heex:68 +#: lib/towerops_web/live/device_live/show.html.heex:142 +#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:300 #, elixir-autogen, elixir-format msgid "Overview" msgstr "Resumen" -#: lib/towerops_web/live/device_live/show.html.heex:2841 +#: lib/towerops_web/live/device_live/show.html.heex:2978 #, elixir-autogen, elixir-format msgid "P95 Latency" msgstr "Latencia P95" -#: lib/towerops_web/live/user_settings_live.html.heex:200 +#: lib/towerops_web/live/user_settings_live.html.heex:213 #, elixir-autogen, elixir-format msgid "Pacific Time (US & Canada)" msgstr "Hora del Pacífico (EE. UU. y Canadá)" -#: lib/towerops_web/live/device_live/index.html.heex:653 -#: lib/towerops_web/live/user_settings_live.html.heex:968 +#: lib/towerops_web/live/device_live/index.html.heex:689 +#: lib/towerops_web/live/user_settings_live.html.heex:1012 #, elixir-autogen, elixir-format msgid "Pagination" msgstr "Paginación" @@ -3024,28 +3014,23 @@ msgstr "Paginación" msgid "Parent Site" msgstr "Sitio padre" -#: lib/towerops_web/live/user_settings_live.html.heex:212 +#: lib/towerops_web/live/user_settings_live.html.heex:225 #, elixir-autogen, elixir-format msgid "Paris" msgstr "París" -#: lib/towerops_web/live/device_live/form.html.heex:670 -#: lib/towerops_web/live/org/settings_live.html.heex:394 -#: lib/towerops_web/live/site_live/form.html.heex:405 +#: lib/towerops_web/live/device_live/form.html.heex:685 +#: lib/towerops_web/live/org/settings_live.html.heex:418 +#: lib/towerops_web/live/site_live/form.html.heex:421 #, elixir-autogen, elixir-format msgid "Password" msgstr "Contraseña" -#: lib/towerops_web/live/user_settings_live.html.heex:473 +#: lib/towerops_web/live/user_settings_live.html.heex:497 #, elixir-autogen, elixir-format msgid "Password found in data breaches" msgstr "Contraseña encontrada en filtraciones de datos" -#: lib/towerops_web/live/help_live/index.ex:78 -#, elixir-autogen, elixir-format -msgid "Password generated successfully from random.org" -msgstr "Contraseña generada correctamente desde random.org" - #: lib/towerops_web/controllers/user_reset_password_controller.ex:56 #: lib/towerops_web/live/user_reset_password_live.ex:59 #, elixir-autogen, elixir-format @@ -3057,27 +3042,27 @@ msgstr "Contraseña restablecida correctamente." msgid "Password updated successfully. Please log in with your new password." msgstr "Contraseña actualizada correctamente. Inicia sesión con tu nueva contraseña." -#: lib/towerops_web/live/org/settings_live.html.heex:1696 +#: lib/towerops_web/live/org/settings_live.html.heex:2035 #, elixir-autogen, elixir-format msgid "Paste the secret from Gaiia" msgstr "Pega el secreto de Gaiia" -#: lib/towerops_web/live/org/settings_live.html.heex:1688 +#: lib/towerops_web/live/org/settings_live.html.heex:2027 #, elixir-autogen, elixir-format msgid "Paste the secret key generated by Gaiia when you create the webhook." msgstr "Pega la clave secreta generada por Gaiia al crear el webhook." -#: lib/towerops_web/live/trace_live/index.html.heex:346 +#: lib/towerops_web/live/trace_live/index.html.heex:359 #, elixir-autogen, elixir-format msgid "Peer APs" msgstr "APs pares" -#: lib/towerops_web/live/org/settings_live.html.heex:614 +#: lib/towerops_web/live/org/settings_live.html.heex:655 #, elixir-autogen, elixir-format msgid "Pending Invitations" msgstr "Invitaciones pendientes" -#: lib/towerops_web/live/org/settings_live.html.heex:697 +#: lib/towerops_web/live/org/settings_live.html.heex:738 #, elixir-autogen, elixir-format msgid "People who have access to this organization." msgstr "Personas que tienen acceso a esta organización." @@ -3092,50 +3077,49 @@ msgstr "Rendimiento" msgid "Permanent" msgstr "Permanente" -#: lib/towerops_web/live/device_live/form.html.heex:731 +#: lib/towerops_web/live/device_live/form.html.heex:752 #, elixir-autogen, elixir-format msgid "Permanently delete this device and all its data." msgstr "Eliminar permanentemente este dispositivo y todos sus datos." -#: lib/towerops_web/live/user_settings_live.html.heex:29 +#: lib/towerops_web/live/user_settings_live.html.heex:28 #, elixir-autogen, elixir-format msgid "Personal" msgstr "Personal" -#: lib/towerops_web/live/user_settings_live.html.heex:110 +#: lib/towerops_web/live/user_settings_live.html.heex:123 #, elixir-autogen, elixir-format msgid "Personal Information" msgstr "Información personal" -#: lib/towerops_web/live/org/settings_live.html.heex:1323 +#: lib/towerops_web/live/org/settings_live.html.heex:1413 #, elixir-autogen, elixir-format msgid "Physical and virtual interfaces, LAGs, connections" msgstr "Interfaces físicas y virtuales, LAGs, conexiones" -#: lib/towerops_web/live/device_live/form.html.heex:697 +#: lib/towerops_web/live/device_live/form.html.heex:712 #, elixir-autogen, elixir-format msgid "Plain API (port 8728) sends credentials unencrypted over the network." msgstr "La API sin cifrar (puerto 8728) envía las credenciales sin encriptar por la red." -#: lib/towerops_web/live/org/settings_live.html.heex:422 -#: lib/towerops_web/live/site_live/form.html.heex:426 +#: lib/towerops_web/live/org/settings_live.html.heex:446 +#: lib/towerops_web/live/site_live/form.html.heex:442 #, elixir-autogen, elixir-format msgid "Plain API (port 8728) sends credentials unencrypted over the network. This setting is" msgstr "La API sin cifrar (puerto 8728) envía las credenciales sin encriptar por la red. Esta configuración es" -#: lib/towerops_web/live/org/settings_live.html.heex:433 -#: lib/towerops_web/live/site_live/form.html.heex:435 +#: lib/towerops_web/live/org/settings_live.html.heex:459 +#: lib/towerops_web/live/site_live/form.html.heex:453 #, elixir-autogen, elixir-format msgid "Plain API (port 8728) sends credentials unencrypted. Use SSL (port 8729) whenever possible." msgstr "La API sin cifrar (puerto 8728) envía las credenciales sin encriptar. Usa SSL (puerto 8729) siempre que sea posible." -#: lib/towerops_web/live/device_live/show.html.heex:2601 +#: lib/towerops_web/live/device_live/show.html.heex:2738 #, elixir-autogen, elixir-format msgid "Plan" msgstr "Plan" -#: lib/towerops_web/live/org/integrations_live.ex:138 -#: lib/towerops_web/live/org/settings_live.ex:404 +#: lib/towerops_web/live/org/settings_live.ex:502 #, elixir-autogen, elixir-format msgid "Please enter an API key first" msgstr "Ingresa una clave de API primero" @@ -3145,43 +3129,43 @@ msgstr "Ingresa una clave de API primero" msgid "Please enter an address to geocode" msgstr "Ingresa una dirección para geocodificar" -#: lib/towerops_web/live/org/settings_live.ex:391 +#: lib/towerops_web/live/org/settings_live.ex:474 #, elixir-autogen, elixir-format msgid "Please enter your NetBox URL first" msgstr "Ingresa tu URL de NetBox primero" -#: lib/towerops_web/controllers/user_session_controller.ex:127 -#: lib/towerops_web/controllers/user_session_controller.ex:148 +#: lib/towerops_web/controllers/user_session_controller.ex:144 +#: lib/towerops_web/controllers/user_session_controller.ex:165 #, elixir-autogen, elixir-format msgid "Please log in first." msgstr "Inicia sesión primero." -#: lib/towerops_web/live/user_settings_live.html.heex:724 +#: lib/towerops_web/live/user_settings_live.html.heex:755 #, elixir-autogen, elixir-format msgid "Please review your login history below and ensure all activity is authorized." msgstr "Revisa tu historial de inicio de sesión a continuación y asegúrate de que toda la actividad sea autorizada." -#: lib/towerops_web/live/device_live/show.html.heex:60 +#: lib/towerops_web/live/device_live/show.html.heex:68 #, elixir-autogen, elixir-format msgid "Polled by:" msgstr "Sondeado por:" -#: lib/towerops_web/live/agent_live/show.html.heex:298 +#: lib/towerops_web/live/agent_live/show.html.heex:308 #, elixir-autogen, elixir-format msgid "Polling Targets" msgstr "Objetivos de sondeo" -#: lib/towerops_web/live/device_live/show.html.heex:122 +#: lib/towerops_web/live/device_live/show.html.heex:157 #, elixir-autogen, elixir-format msgid "Ports" msgstr "Puertos" -#: lib/towerops_web/live/device_live/show.html.heex:249 +#: lib/towerops_web/live/device_live/show.html.heex:284 #, elixir-autogen, elixir-format msgid "Preseem" msgstr "Preseem" -#: lib/towerops_web/live/trace_live/index.html.heex:204 +#: lib/towerops_web/live/trace_live/index.html.heex:214 #, elixir-autogen, elixir-format msgid "Preseem AP" msgstr "AP de Preseem" @@ -3191,38 +3175,40 @@ msgstr "AP de Preseem" msgid "Preseem Devices" msgstr "Dispositivos de Preseem" -#: lib/towerops_web/live/device_live/show.html.heex:2772 -#: lib/towerops_web/live/org/preseem_devices_live.html.heex:129 +#: lib/towerops_web/live/device_live/show.html.heex:2909 +#: lib/towerops_web/live/org/preseem_devices_live.html.heex:131 #, elixir-autogen, elixir-format msgid "Preseem ID" msgstr "ID de Preseem" -#: lib/towerops_web/live/site_live/show.html.heex:89 +#: lib/towerops_web/live/site_live/show.html.heex:137 #, elixir-autogen, elixir-format msgid "Preseem QoE Score" msgstr "Puntuación QoE de Preseem" -#: lib/towerops_web/live/device_live/index.html.heex:625 -#: lib/towerops_web/live/user_settings_live.html.heex:932 +#: lib/towerops_web/live/device_live/index.html.heex:672 +#: lib/towerops_web/live/user_settings_live.html.heex:976 #, elixir-autogen, elixir-format msgid "Previous" msgstr "Anterior" -#: lib/towerops_web/live/device_live/show.html.heex:1695 +#: lib/towerops_web/live/device_live/show.html.heex:1814 #, elixir-autogen, elixir-format msgid "Primary" msgstr "Primario" -#: lib/towerops_web/live/device_live/form.html.heex:520 -#: lib/towerops_web/live/org/settings_live.html.heex:313 -#: lib/towerops_web/live/site_live/form.html.heex:337 +#: lib/towerops_web/live/device_live/form.html.heex:529 +#: lib/towerops_web/live/onboarding_live.html.heex:114 +#: lib/towerops_web/live/org/settings_live.html.heex:329 +#: lib/towerops_web/live/site_live/form.html.heex:349 #, elixir-autogen, elixir-format msgid "Privacy Password" msgstr "Contraseña de privacidad" -#: lib/towerops_web/live/device_live/form.html.heex:505 -#: lib/towerops_web/live/org/settings_live.html.heex:299 -#: lib/towerops_web/live/site_live/form.html.heex:323 +#: lib/towerops_web/live/device_live/form.html.heex:514 +#: lib/towerops_web/live/onboarding_live.html.heex:107 +#: lib/towerops_web/live/org/settings_live.html.heex:315 +#: lib/towerops_web/live/site_live/form.html.heex:335 #, elixir-autogen, elixir-format msgid "Privacy Protocol" msgstr "Protocolo de privacidad" @@ -3237,12 +3223,12 @@ msgstr "Observaciones proactivas de salud de red de todas las fuentes." msgid "Proactive network health observations generated from Preseem data analysis." msgstr "Observaciones proactivas de salud de red generadas del análisis de datos de Preseem." -#: lib/towerops_web/live/device_live/show.html.heex:656 +#: lib/towerops_web/live/device_live/show.html.heex:717 #, elixir-autogen, elixir-format msgid "Processors" msgstr "Procesadores" -#: lib/towerops_web/live/agent_live/show.html.heex:110 +#: lib/towerops_web/live/agent_live/show.html.heex:120 #, elixir-autogen, elixir-format msgid "Production (kubectl):" msgstr "Producción (kubectl):" @@ -3252,18 +3238,18 @@ msgstr "Producción (kubectl):" msgid "Profile updated successfully." msgstr "Perfil actualizado correctamente." -#: lib/towerops_web/live/mobile_qr_live.ex:49 +#: lib/towerops_web/live/mobile_qr_live.ex:53 #, elixir-autogen, elixir-format msgid "QR code expired, generated a new one" msgstr "Código QR expirado, se generó uno nuevo" -#: lib/towerops_web/live/dashboard_live.html.heex:609 +#: lib/towerops_web/live/dashboard_live.html.heex:505 #: lib/towerops_web/live/site_live/index.html.heex:54 #, elixir-autogen, elixir-format msgid "QoE" msgstr "QoE" -#: lib/towerops_web/live/trace_live/index.html.heex:233 +#: lib/towerops_web/live/trace_live/index.html.heex:246 #, elixir-autogen, elixir-format msgid "QoE Score" msgstr "Puntuación QoE" @@ -3273,22 +3259,22 @@ msgstr "Puntuación QoE" msgid "Queue Depths" msgstr "Profundidad de colas" -#: lib/towerops_web/live/trace_live/index.html.heex:243 +#: lib/towerops_web/live/trace_live/index.html.heex:256 #, elixir-autogen, elixir-format msgid "RF Score" msgstr "Puntuación RF" -#: lib/towerops_web/live/device_live/show.html.heex:315 +#: lib/towerops_web/live/device_live/show.html.heex:350 #, elixir-autogen, elixir-format msgid "Raw Data" msgstr "Datos sin procesar" -#: lib/towerops_web/live/device_live/show.html.heex:2081 +#: lib/towerops_web/live/device_live/show.html.heex:2210 #, elixir-autogen, elixir-format msgid "Raw Discovery Data" msgstr "Datos de descubrimiento sin procesar" -#: lib/towerops_web/live/device_live/show.html.heex:2085 +#: lib/towerops_web/live/device_live/show.html.heex:2214 #, elixir-autogen, elixir-format msgid "Raw SNMP OID values collected during the last discovery run at" msgstr "Valores OID de SNMP sin procesar recopilados durante el último descubrimiento en" @@ -3303,44 +3289,46 @@ msgstr "Registro de operaciones NOC en tiempo real — cambios de configuración msgid "Real-time monitoring of polling and discovery jobs" msgstr "Monitoreo en tiempo real de trabajos de sondeo y descubrimiento" -#: lib/towerops_web/live/admin/dashboard_live.html.heex:66 +#: lib/towerops_web/live/admin/dashboard_live.html.heex:83 #, elixir-autogen, elixir-format msgid "Real-time polling and discovery job monitoring" msgstr "Monitoreo en tiempo real de sondeo y descubrimiento" #: lib/towerops_web/live/admin/security_live/index.html.heex:186 +#: lib/towerops_web/live/maintenance_live/form.html.heex:39 +#: lib/towerops_web/live/maintenance_live/show.html.heex:73 #, elixir-autogen, elixir-format msgid "Reason" msgstr "Razón" -#: lib/towerops_web/live/org/integrations_live.html.heex:269 -#: lib/towerops_web/live/org/settings_live.html.heex:1655 +#: lib/towerops_web/live/org/integrations_live.html.heex:327 +#: lib/towerops_web/live/org/settings_live.html.heex:1992 #, elixir-autogen, elixir-format msgid "Receive real-time updates from Gaiia when accounts, subscriptions, or inventory items change." msgstr "Recibe actualizaciones en tiempo real de Gaiia cuando cambien cuentas, suscripciones o elementos de inventario." #: lib/towerops_web/live/admin/monitoring_live.html.heex:297 -#: lib/towerops_web/live/dashboard_live.html.heex:683 +#: lib/towerops_web/live/dashboard_live.html.heex:815 #, elixir-autogen, elixir-format msgid "Recent Activity" msgstr "Actividad reciente" -#: lib/towerops_web/live/admin/dashboard_live.html.heex:94 +#: lib/towerops_web/live/admin/dashboard_live.html.heex:112 #, elixir-autogen, elixir-format msgid "Recent Audit Logs" msgstr "Registros de auditoría recientes" -#: lib/towerops_web/live/device_live/show.html.heex:600 +#: lib/towerops_web/live/device_live/show.html.heex:659 #, elixir-autogen, elixir-format msgid "Recent Config Changes" msgstr "Cambios de configuración recientes" -#: lib/towerops_web/live/device_live/show.html.heex:2827 +#: lib/towerops_web/live/device_live/show.html.heex:2964 #, elixir-autogen, elixir-format msgid "Recent QoE Metrics" msgstr "Métricas QoE recientes" -#: lib/towerops_web/live/user_settings_live.html.heex:830 +#: lib/towerops_web/live/user_settings_live.html.heex:874 #, elixir-autogen, elixir-format msgid "Recent login attempts to your account, including successful and failed attempts." msgstr "Intentos de inicio de sesión recientes en tu cuenta, incluyendo intentos exitosos y fallidos." @@ -3352,46 +3340,46 @@ msgstr "Intentos de inicio de sesión recientes en tu cuenta, incluyendo intento msgid "Recommended actions" msgstr "Acciones recomendadas" -#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:35 -#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:26 +#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:37 +#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:28 #, elixir-autogen, elixir-format msgid "Reconciliation" msgstr "Reconciliación" -#: lib/towerops_web/live/user_settings_live.html.heex:1127 +#: lib/towerops_web/live/user_settings_live.html.heex:1173 #, elixir-autogen, elixir-format msgid "Recovery Codes" msgstr "Códigos de recuperación" -#: lib/towerops_web/live/user_settings_live.html.heex:1634 +#: lib/towerops_web/live/user_settings_live.html.heex:1712 #, elixir-autogen, elixir-format msgid "Recovery Codes Generated" msgstr "Códigos de recuperación generados" -#: lib/towerops_web/live/org/integrations_live.html.heex:327 +#: lib/towerops_web/live/org/integrations_live.html.heex:391 #, elixir-autogen, elixir-format msgid "Regenerate Secret" msgstr "Regenerar secreto" -#: lib/towerops_web/live/device_live/show.html.heex:435 +#: lib/towerops_web/live/device_live/show.html.heex:478 #, elixir-autogen, elixir-format msgid "Release Notes" msgstr "Notas de la versión" -#: lib/towerops_web/live/device_live/form.html.heex:248 +#: lib/towerops_web/live/device_live/form.html.heex:250 #, elixir-autogen, elixir-format msgid "Remote Agent" msgstr "Agente remoto" -#: lib/towerops_web/live/agent_live/index.ex:56 +#: lib/towerops_web/live/agent_live/index.ex:58 #, elixir-autogen, elixir-format msgid "Remote Agents" msgstr "Agentes remotos" #: lib/towerops_web/live/admin/security_live/index.html.heex:117 -#: lib/towerops_web/live/org/settings_live.html.heex:785 -#: lib/towerops_web/live/user_settings_live.html.heex:687 -#: lib/towerops_web/live/user_settings_live.html.heex:1104 +#: lib/towerops_web/live/org/settings_live.html.heex:835 +#: lib/towerops_web/live/user_settings_live.html.heex:719 +#: lib/towerops_web/live/user_settings_live.html.heex:1150 #, elixir-autogen, elixir-format msgid "Remove" msgstr "Eliminar" @@ -3401,7 +3389,7 @@ msgstr "Eliminar" msgid "Remove this IP/CIDR from the allowlist?" msgstr "¿Eliminar esta IP/CIDR de la lista de permitidos?" -#: lib/towerops_web/live/org/settings_live.html.heex:782 +#: lib/towerops_web/live/org/settings_live.html.heex:832 #, elixir-autogen, elixir-format msgid "Remove this member from the organization?" msgstr "¿Eliminar a este miembro de la organización?" @@ -3411,7 +3399,7 @@ msgstr "¿Eliminar a este miembro de la organización?" msgid "Removed from allowlist" msgstr "Eliminado de la lista de permitidos" -#: lib/towerops_web/live/device_live/index.html.heex:60 +#: lib/towerops_web/live/device_live/index.html.heex:86 #, elixir-autogen, elixir-format msgid "Reset all sites and devices to alphabetical order?" msgstr "¿Restablecer todos los sitios y dispositivos a orden alfabético?" @@ -3423,12 +3411,12 @@ msgstr "¿Restablecer todos los sitios y dispositivos a orden alfabético?" msgid "Reset password link is invalid or has expired." msgstr "El enlace para restablecer contraseña es inválido o ha expirado." -#: lib/towerops_web/live/alert_live/index.html.heex:297 +#: lib/towerops_web/live/alert_live/index.html.heex:379 #, elixir-autogen, elixir-format msgid "Resolve this alert?" msgstr "¿Resolver esta alerta?" -#: lib/towerops_web/live/device_live/index.html.heex:257 +#: lib/towerops_web/live/device_live/index.html.heex:296 #, elixir-autogen, elixir-format msgid "Response" msgstr "Respuesta" @@ -3438,145 +3426,150 @@ msgstr "Respuesta" msgid "Restart command sent to agent" msgstr "Comando de reinicio enviado al agente" -#: lib/towerops_web/live/user_settings_live.html.heex:802 +#: lib/towerops_web/live/user_settings_live.html.heex:846 #, elixir-autogen, elixir-format msgid "Revoke" msgstr "Revocar" -#: lib/towerops_web/live/user_settings_live.html.heex:1244 +#: lib/towerops_web/live/user_settings_live.html.heex:1295 #, elixir-autogen, elixir-format msgid "Revoke All" msgstr "Revocar todas" -#: lib/towerops_web/live/user_settings_live.html.heex:1229 +#: lib/towerops_web/live/user_settings_live.html.heex:1278 #, elixir-autogen, elixir-format msgid "Revoke All Other Sessions?" msgstr "¿Revocar todas las demás sesiones?" -#: lib/towerops_web/live/org/settings_live.html.heex:593 -#: lib/towerops_web/live/org/settings_live.html.heex:630 -#: lib/towerops_web/live/org/settings_live.html.heex:710 +#: lib/towerops_web/live/org/settings_live.html.heex:629 +#: lib/towerops_web/live/org/settings_live.html.heex:671 +#: lib/towerops_web/live/org/settings_live.html.heex:751 #, elixir-autogen, elixir-format msgid "Role" msgstr "Rol" -#: lib/towerops_web/live/org/settings_live.ex:227 +#: lib/towerops_web/live/org/settings_live.ex:263 #, elixir-autogen, elixir-format msgid "Role updated" msgstr "Rol actualizado" -#: lib/towerops_web/live/org/settings_live.html.heex:395 +#: lib/towerops_web/live/org/settings_live.html.heex:419 #, elixir-autogen, elixir-format msgid "RouterOS API password" msgstr "Contraseña de API de RouterOS" -#: lib/towerops_web/live/device_live/show.html.heex:2261 +#: lib/towerops_web/live/device_live/show.html.heex:2392 #, elixir-autogen, elixir-format msgid "Run discovery to automatically detect sensors, interfaces, and other monitorable items, or add a service check manually." msgstr "Ejecuta el descubrimiento para detectar automáticamente sensores, interfaces y otros elementos monitoreables, o agrega una verificación de servicio manualmente." +#: lib/towerops_web/live/onboarding_live.ex:201 #: lib/towerops_web/live/org/settings_live.html.heex:43 #, elixir-autogen, elixir-format msgid "SNMP" msgstr "SNMP" -#: lib/towerops_web/live/device_live/form.html.heex:331 +#: lib/towerops_web/live/device_live/form.html.heex:337 #, elixir-autogen, elixir-format msgid "SNMP & ICMP" msgstr "SNMP e ICMP" -#: lib/towerops_web/live/org/settings_live.html.heex:242 -#: lib/towerops_web/live/site_live/form.html.heex:266 +#: lib/towerops_web/live/org/settings_live.html.heex:258 +#: lib/towerops_web/live/site_live/form.html.heex:278 #, elixir-autogen, elixir-format msgid "SNMP Community String" msgstr "Community String de SNMP" -#: lib/towerops_web/live/device_live/form.html.heex:306 -#: lib/towerops_web/live/org/settings_live.html.heex:217 -#: lib/towerops_web/live/site_live/form.html.heex:246 +#: lib/towerops_web/live/device_live/form.html.heex:310 +#: lib/towerops_web/live/onboarding_live.html.heex:62 +#: lib/towerops_web/live/org/settings_live.html.heex:231 +#: lib/towerops_web/live/site_live/form.html.heex:256 #, elixir-autogen, elixir-format msgid "SNMP Configuration" msgstr "Configuración de SNMP" -#: lib/towerops_web/live/device_live/form.html.heex:532 -#: lib/towerops_web/live/org/settings_live.html.heex:323 -#: lib/towerops_web/live/site_live/form.html.heex:347 +#: lib/towerops_web/live/device_live/form.html.heex:541 +#: lib/towerops_web/live/org/settings_live.html.heex:339 +#: lib/towerops_web/live/site_live/form.html.heex:359 #, elixir-autogen, elixir-format msgid "SNMP Port" msgstr "Puerto SNMP" -#: lib/towerops_web/live/device_live/form.html.heex:370 -#: lib/towerops_web/live/org/settings_live.html.heex:232 -#: lib/towerops_web/live/site_live/form.html.heex:256 +#: lib/towerops_web/live/device_live/form.html.heex:377 +#: lib/towerops_web/live/onboarding_live.html.heex:73 +#: lib/towerops_web/live/org/settings_live.html.heex:248 +#: lib/towerops_web/live/site_live/form.html.heex:268 #, elixir-autogen, elixir-format msgid "SNMP Version" msgstr "Versión de SNMP" -#: lib/towerops_web/live/org/integrations_live.html.heex:254 -#: lib/towerops_web/live/user_settings_live.html.heex:373 +#: lib/towerops_web/live/maintenance_live/form.html.heex:161 +#: lib/towerops_web/live/org/integrations_live.html.heex:312 +#: lib/towerops_web/live/org/integrations_live.html.heex:632 +#: lib/towerops_web/live/user_settings_live.html.heex:391 #, elixir-autogen, elixir-format msgid "Save" msgstr "Guardar" -#: lib/towerops_web/live/agent_live/edit.html.heex:82 +#: lib/towerops_web/live/agent_live/edit.html.heex:83 #, elixir-autogen, elixir-format msgid "Save Changes" msgstr "Guardar cambios" -#: lib/towerops_web/live/device_live/form.html.heex:720 +#: lib/towerops_web/live/device_live/form.html.heex:739 #, elixir-autogen, elixir-format msgid "Save Device" msgstr "Guardar dispositivo" -#: lib/towerops_web/live/org/settings_live.html.heex:1446 -#: lib/towerops_web/live/org/settings_live.html.heex:1637 +#: lib/towerops_web/live/org/settings_live.html.heex:1543 +#: lib/towerops_web/live/org/settings_live.html.heex:1648 +#: lib/towerops_web/live/org/settings_live.html.heex:1770 +#: lib/towerops_web/live/org/settings_live.html.heex:1972 #, elixir-autogen, elixir-format msgid "Save Integration" msgstr "Guardar integración" -#: lib/towerops_web/live/user_settings_live.html.heex:514 +#: lib/towerops_web/live/user_settings_live.html.heex:538 #, elixir-autogen, elixir-format msgid "Save Password" msgstr "Guardar contraseña" -#: lib/towerops_web/live/org/settings_live.html.heex:560 +#: lib/towerops_web/live/org/settings_live.html.heex:596 #, elixir-autogen, elixir-format msgid "Save Settings" msgstr "Guardar configuración" -#: lib/towerops_web/live/user_settings_live.html.heex:1638 +#: lib/towerops_web/live/user_settings_live.html.heex:1716 #, elixir-autogen, elixir-format msgid "Save these codes in a secure location. Each code can only be used once." msgstr "Guarda estos códigos en un lugar seguro. Cada código solo se puede usar una vez." -#: lib/towerops_web/live/agent_live/edit.html.heex:81 -#: lib/towerops_web/live/device_live/form.html.heex:716 -#: lib/towerops_web/live/org/integrations_live.html.heex:251 -#: lib/towerops_web/live/org/settings_live.html.heex:557 -#: lib/towerops_web/live/org/settings_live.html.heex:1443 -#: lib/towerops_web/live/org/settings_live.html.heex:1634 -#: lib/towerops_web/live/site_live/form.html.heex:444 -#: lib/towerops_web/live/user_settings_live.html.heex:370 +#: lib/towerops_web/live/agent_live/edit.html.heex:82 +#: lib/towerops_web/live/device_live/form.html.heex:735 +#: lib/towerops_web/live/org/integrations_live.html.heex:309 +#: lib/towerops_web/live/org/integrations_live.html.heex:629 +#: lib/towerops_web/live/org/settings_live.html.heex:593 +#: lib/towerops_web/live/org/settings_live.html.heex:1540 +#: lib/towerops_web/live/org/settings_live.html.heex:1645 +#: lib/towerops_web/live/org/settings_live.html.heex:1767 +#: lib/towerops_web/live/org/settings_live.html.heex:1969 +#: lib/towerops_web/live/site_live/form.html.heex:464 +#: lib/towerops_web/live/user_settings_live.html.heex:388 #, elixir-autogen, elixir-format msgid "Saving..." msgstr "Guardando..." -#: lib/towerops_web/live/user_settings_live.html.heex:1544 +#: lib/towerops_web/live/user_settings_live.html.heex:1597 #, elixir-autogen, elixir-format msgid "Scan QR Code" msgstr "Escanear código QR" -#: lib/towerops_web/live/user_settings_live.html.heex:1548 -#, elixir-autogen, elixir-format -msgid "Scan this QR code with your authenticator app (Google Authenticator, Authy, 1Password, etc.)." -msgstr "Escanea este código QR con tu app de autenticación (Google Authenticator, Authy, 1Password, etc.)." - -#: lib/towerops_web/live/trace_live/index.html.heex:21 +#: lib/towerops_web/live/trace_live/index.html.heex:22 #, elixir-autogen, elixir-format msgid "Search by customer name, IP address, account ID, serial number, or device name..." msgstr "Buscar por nombre de cliente, dirección IP, ID de cuenta, número de serie o nombre de dispositivo..." -#: lib/towerops_web/live/org/preseem_devices_live.html.heex:232 +#: lib/towerops_web/live/org/preseem_devices_live.html.heex:243 #, elixir-autogen, elixir-format msgid "Search by device name or IP..." msgstr "Buscar por nombre de dispositivo o IP..." @@ -3586,12 +3579,12 @@ msgstr "Buscar por nombre de dispositivo o IP..." msgid "Search by device name, IP, site, or keyword..." msgstr "Buscar por nombre de dispositivo, IP, sitio o palabra clave..." -#: lib/towerops_web/live/trace_live/index.html.heex:539 +#: lib/towerops_web/live/trace_live/index.html.heex:556 #, elixir-autogen, elixir-format msgid "Search for a customer by name, IP address, account ID, or device name to see their full network status at a glance." msgstr "Busca un cliente por nombre, dirección IP, ID de cuenta o nombre de dispositivo para ver su estado de red completo de un vistazo." -#: lib/towerops_web/live/user_settings_live.html.heex:89 +#: lib/towerops_web/live/user_settings_live.html.heex:103 #, elixir-autogen, elixir-format msgid "Security" msgstr "Seguridad" @@ -3601,18 +3594,18 @@ msgstr "Seguridad" msgid "Security - IP Access Control" msgstr "Seguridad - Control de acceso por IP" -#: lib/towerops_web/live/user_settings_live.html.heex:719 +#: lib/towerops_web/live/user_settings_live.html.heex:751 #, elixir-autogen, elixir-format msgid "Security Alert" msgstr "Alerta de seguridad" -#: lib/towerops_web/live/org/settings_live.html.heex:252 -#: lib/towerops_web/live/site_live/form.html.heex:276 +#: lib/towerops_web/live/org/settings_live.html.heex:268 +#: lib/towerops_web/live/site_live/form.html.heex:288 #, elixir-autogen, elixir-format msgid "Security Level" msgstr "Nivel de seguridad" -#: lib/towerops_web/live/org/settings_live.html.heex:432 +#: lib/towerops_web/live/org/settings_live.html.heex:458 #, elixir-autogen, elixir-format msgid "Security Warning:" msgstr "Advertencia de seguridad:" @@ -3623,62 +3616,62 @@ msgstr "Advertencia de seguridad:" msgid "Select All" msgstr "Seleccionar todo" -#: lib/towerops_web/live/agent_live/index.html.heex:296 +#: lib/towerops_web/live/agent_live/index.html.heex:308 #, elixir-autogen, elixir-format msgid "Select Global Default" msgstr "Seleccionar predeterminado global" -#: lib/towerops_web/live/org/settings_live.html.heex:450 +#: lib/towerops_web/live/org/settings_live.html.heex:478 #, elixir-autogen, elixir-format msgid "Select a default agent for SNMP polling. This will be used for all devices in this organization unless overridden at the site or device level." msgstr "Selecciona un agente predeterminado para sondeo SNMP. Se usará para todos los dispositivos de esta organización a menos que se sobrescriba a nivel de sitio o dispositivo." -#: lib/towerops_web/live/device_live/form.html.heex:205 +#: lib/towerops_web/live/device_live/form.html.heex:207 #, elixir-autogen, elixir-format msgid "Select a role manually or leave as auto-detect to infer from SNMP data." msgstr "Selecciona un rol manualmente o deja como auto-detectar para inferir de los datos SNMP." -#: lib/towerops_web/live/device_live/show.html.heex:1810 +#: lib/towerops_web/live/device_live/show.html.heex:1933 #, elixir-autogen, elixir-format msgid "Select any 2 backups using the checkboxes to compare their differences" msgstr "Selecciona cualquier 2 respaldos usando las casillas para comparar sus diferencias" -#: lib/towerops_web/live/device_live/show.html.heex:1948 +#: lib/towerops_web/live/device_live/show.html.heex:2075 #, elixir-autogen, elixir-format msgid "Select one more backup to compare" msgstr "Selecciona un respaldo más para comparar" -#: lib/towerops_web/live/org/settings_live.html.heex:601 +#: lib/towerops_web/live/org/settings_live.html.heex:642 #, elixir-autogen, elixir-format msgid "Send Invite" msgstr "Enviar invitación" -#: lib/towerops_web/live/org/settings_live.html.heex:576 +#: lib/towerops_web/live/org/settings_live.html.heex:612 #, elixir-autogen, elixir-format msgid "Send an invitation email to add someone to this organization." msgstr "Envía un correo de invitación para agregar a alguien a esta organización." -#: lib/towerops_web/live/org/settings_live.html.heex:598 +#: lib/towerops_web/live/org/settings_live.html.heex:639 #, elixir-autogen, elixir-format msgid "Sending..." msgstr "Enviando..." -#: lib/towerops_web/live/org/settings_live.html.heex:633 +#: lib/towerops_web/live/org/settings_live.html.heex:674 #, elixir-autogen, elixir-format msgid "Sent" msgstr "Enviado" -#: lib/towerops_web/live/device_live/show.html.heex:2446 +#: lib/towerops_web/live/device_live/show.html.heex:2583 #, elixir-autogen, elixir-format msgid "Serial Number" msgstr "Número de serie" -#: lib/towerops_web/live/org/settings_live.html.heex:1498 +#: lib/towerops_web/live/org/settings_live.html.heex:1822 #, elixir-autogen, elixir-format msgid "Services" msgstr "Servicios" -#: lib/towerops_web/live/user_settings_live.html.heex:53 +#: lib/towerops_web/live/user_settings_live.html.heex:58 #, elixir-autogen, elixir-format msgid "Sessions" msgstr "Sesiones" @@ -3689,112 +3682,114 @@ msgstr "Sesiones" msgid "Set Up Two-Factor Authentication" msgstr "Configurar autenticación de dos factores" -#: lib/towerops_web/live/site_live/form.html.heex:195 +#: lib/towerops_web/live/site_live/form.html.heex:197 #, elixir-autogen, elixir-format msgid "Set a default agent for SNMP polling at this site. This will override the organization default for all devices at this site. Leave blank to inherit from organization." msgstr "Establece un agente predeterminado para sondeo SNMP en este sitio. Esto sobrescribirá el predeterminado de la organización para todos los dispositivos en este sitio. Deja vacío para heredar de la organización." -#: lib/towerops_web/live/site_live/form.html.heex:237 +#: lib/towerops_web/live/site_live/form.html.heex:245 #, elixir-autogen, elixir-format msgid "Set a default agent for all devices at this site. Device can override this setting individually." msgstr "Establece un agente predeterminado para todos los dispositivos en este sitio. Cada dispositivo puede sobrescribir esta configuración individualmente." -#: lib/towerops_web/live/org/settings_live.html.heex:358 +#: lib/towerops_web/live/org/settings_live.html.heex:380 #, elixir-autogen, elixir-format msgid "Set default MikroTik RouterOS API credentials for all devices in this organization. Only applies to devices detected as MikroTik." msgstr "Establece las credenciales predeterminadas de API de MikroTik RouterOS para todos los dispositivos de esta organización. Solo aplica a dispositivos detectados como MikroTik." -#: lib/towerops_web/live/org/settings_live.html.heex:220 +#: lib/towerops_web/live/org/settings_live.html.heex:234 #, elixir-autogen, elixir-format msgid "Set default SNMP settings for all devices in this organization. These can be overridden at the site or device level." msgstr "Establece la configuración SNMP predeterminada para todos los dispositivos de esta organización. Se puede sobrescribir a nivel de sitio o dispositivo." -#: lib/towerops_web/live/org/settings_live.html.heex:134 +#: lib/towerops_web/live/org/settings_live.html.heex:138 #, elixir-autogen, elixir-format msgid "Set this organization as your default. When you log in, you'll be directed to your default organization." msgstr "Establece esta organización como predeterminada. Al iniciar sesión, serás dirigido a tu organización predeterminada." -#: lib/towerops_web/live/dashboard_live.html.heex:45 +#: lib/towerops_web/live/dashboard_live.html.heex:48 #, elixir-autogen, elixir-format msgid "Set up your network monitoring in a few steps." msgstr "Configura tu monitoreo de red en unos pocos pasos." -#: lib/towerops_web/live/org/settings_live.ex:129 +#: lib/towerops_web/live/org/settings_live.ex:162 #, elixir-autogen, elixir-format msgid "Settings saved successfully" msgstr "Configuración guardada correctamente" -#: lib/towerops_web/live/org/integrations_live.html.heex:334 +#: lib/towerops_web/live/org/integrations_live.html.heex:398 #, elixir-autogen, elixir-format msgid "Setup Instructions" msgstr "Instrucciones de configuración" -#: lib/towerops_web/live/alert_live/index.html.heex:48 +#: lib/towerops_web/live/alert_live/index.html.heex:108 #, elixir-autogen, elixir-format msgid "Severity" msgstr "Severidad" -#: lib/towerops_web/live/user_settings_live.html.heex:230 +#: lib/towerops_web/live/user_settings_live.html.heex:243 #, elixir-autogen, elixir-format msgid "Shanghai" msgstr "Shanghái" -#: lib/towerops_web/live/device_live/index.html.heex:638 -#: lib/towerops_web/live/user_settings_live.html.heex:949 +#: lib/towerops_web/live/user_settings_live.html.heex:993 #, elixir-autogen, elixir-format msgid "Showing" msgstr "Mostrando" -#: lib/towerops_web/live/device_live/show.html.heex:2018 +#: lib/towerops_web/live/device_live/show.html.heex:2145 #, elixir-autogen, elixir-format msgid "Showing the most recent 100 events" msgstr "Mostrando los 100 eventos más recientes" -#: lib/towerops_web/live/org/settings_live.html.heex:1562 +#: lib/towerops_web/live/org/settings_live.html.heex:1895 #, elixir-autogen, elixir-format msgid "Signing Secret" msgstr "Secreto de firma" -#: lib/towerops_web/live/user_settings_live.html.heex:1130 +#: lib/towerops_web/live/user_settings_live.html.heex:1176 #, elixir-autogen, elixir-format msgid "Single-use backup codes for account access if you lose your authenticator app." msgstr "Códigos de respaldo de un solo uso para acceder a tu cuenta si pierdes tu app de autenticación." -#: lib/towerops_web/live/dashboard_live.html.heex:600 -#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:138 -#: lib/towerops_web/live/org/settings_live.html.heex:1359 +#: lib/towerops_web/live/alert_live/index.html.heex:214 +#: lib/towerops_web/live/dashboard_live.html.heex:496 +#: lib/towerops_web/live/maintenance_live/form.html.heex:72 +#: lib/towerops_web/live/onboarding_live.ex:202 +#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:140 +#: lib/towerops_web/live/org/settings_live.html.heex:1451 #: lib/towerops_web/live/site_live/index.html.heex:45 #, elixir-autogen, elixir-format msgid "Site" msgstr "Sitio" -#: lib/towerops_web/live/device_live/form.html.heex:172 +#: lib/towerops_web/live/device_live/form.html.heex:174 #, elixir-autogen, elixir-format msgid "Site (Optional)" msgstr "Sitio (opcional)" -#: lib/towerops_web/live/site_live/show.html.heex:121 +#: lib/towerops_web/live/site_live/show.html.heex:221 #, elixir-autogen, elixir-format msgid "Site Details" msgstr "Detalles del sitio" -#: lib/towerops_web/live/dashboard_live.html.heex:586 +#: lib/towerops_web/live/dashboard_live.html.heex:482 #, elixir-autogen, elixir-format msgid "Site Health" msgstr "Salud del sitio" -#: lib/towerops_web/live/device_live/show.html.heex:2495 +#: lib/towerops_web/live/device_live/show.html.heex:2632 #: lib/towerops_web/live/site_live/form.html.heex:30 #, elixir-autogen, elixir-format msgid "Site Name" msgstr "Nombre del sitio" -#: lib/towerops_web/live/org/settings_live.html.heex:171 +#: lib/towerops_web/live/org/settings_live.html.heex:177 #, elixir-autogen, elixir-format msgid "Site Organization" msgstr "Organización de sitios" -#: lib/towerops_web/live/org/settings_live.html.heex:201 +#: lib/towerops_web/live/org/settings_live.html.heex:213 #, elixir-autogen, elixir-format msgid "Site assignments will be lost, but devices will remain in the organization." msgstr "Las asignaciones de sitios se perderán, pero los dispositivos permanecerán en la organización." @@ -3804,7 +3799,7 @@ msgstr "Las asignaciones de sitios se perderán, pero los dispositivos permanece msgid "Site linked successfully" msgstr "Sitio vinculado correctamente" -#: lib/towerops_web/live/org/settings_live.html.heex:1279 +#: lib/towerops_web/live/org/settings_live.html.heex:1369 #, elixir-autogen, elixir-format msgid "Site names, locations, addresses, and coordinates" msgstr "Nombres de sitios, ubicaciones, direcciones y coordenadas" @@ -3814,8 +3809,9 @@ msgstr "Nombres de sitios, ubicaciones, direcciones y coordenadas" msgid "Site unlinked" msgstr "Sitio desvinculado" -#: lib/towerops_web/live/dashboard_live.html.heex:267 -#: lib/towerops_web/live/org/settings_live.html.heex:1276 +#: lib/towerops_web/components/layouts.ex:275 +#: lib/towerops_web/components/layouts.ex:563 +#: lib/towerops_web/live/org/settings_live.html.heex:1366 #: lib/towerops_web/live/site_live/index.ex:21 #: lib/towerops_web/live/site_live/index.ex:51 #, elixir-autogen, elixir-format @@ -3828,17 +3824,12 @@ msgstr "Sitios" msgid "Sites Map" msgstr "Mapa de sitios" -#: lib/towerops_web/live/device_live/index.html.heex:159 -#, elixir-autogen, elixir-format -msgid "Sites help you organize devices by physical location. Create a site to assign your devices and keep things organized." -msgstr "Los sitios te ayudan a organizar dispositivos por ubicación física. Crea un sitio para asignar tus dispositivos y mantener todo organizado." - #: lib/towerops_web/live/map_live/index.ex:36 #, elixir-autogen, elixir-format msgid "Sites map refreshed" msgstr "Mapa de sitios actualizado" -#: lib/towerops_web/live/dashboard_live.html.heex:57 +#: lib/towerops_web/live/dashboard_live.html.heex:60 #, elixir-autogen, elixir-format msgid "Sites represent your physical locations" msgstr "Los sitios representan tus ubicaciones físicas" @@ -3868,12 +3859,12 @@ msgstr "Algo salió mal de nuestro lado" msgid "Squirrel eating wires" msgstr "Ardilla comiendo cables" -#: lib/towerops_web/live/site_live/show.html.heex:264 +#: lib/towerops_web/live/site_live/show.html.heex:369 #, elixir-autogen, elixir-format msgid "Start monitoring by adding network devices to this site." msgstr "Comienza a monitorear agregando dispositivos de red a este sitio." -#: lib/towerops_web/live/device_live/show.html.heex:2187 +#: lib/towerops_web/live/device_live/show.html.heex:2316 #, elixir-autogen, elixir-format msgid "State" msgstr "Estado" @@ -3887,49 +3878,49 @@ msgstr "Estadísticas" #: lib/towerops_web/live/admin/agent_live/index.html.heex:106 #: lib/towerops_web/live/admin/security_live/index.html.heex:172 #: lib/towerops_web/live/agent_live/index.html.heex:91 -#: lib/towerops_web/live/agent_live/index.html.heex:201 -#: lib/towerops_web/live/device_live/index.html.heex:245 -#: lib/towerops_web/live/device_live/show.html.heex:2310 -#: lib/towerops_web/live/device_live/show.html.heex:2607 -#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:241 -#: lib/towerops_web/live/org/preseem_devices_live.html.heex:141 -#: lib/towerops_web/live/user_settings_live.html.heex:860 +#: lib/towerops_web/live/agent_live/index.html.heex:207 +#: lib/towerops_web/live/device_live/index.html.heex:278 +#: lib/towerops_web/live/device_live/show.html.heex:2443 +#: lib/towerops_web/live/device_live/show.html.heex:2744 +#: lib/towerops_web/live/maintenance_live/index.html.heex:95 +#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:243 +#: lib/towerops_web/live/org/preseem_devices_live.html.heex:143 +#: lib/towerops_web/live/user_settings_live.html.heex:904 #, elixir-autogen, elixir-format msgid "Status" msgstr "Estado" -#: lib/towerops_web/live/device_live/show.html.heex:739 +#: lib/towerops_web/live/device_live/show.html.heex:800 #, elixir-autogen, elixir-format msgid "Storage Usage" msgstr "Uso de almacenamiento" -#: lib/towerops_web/live/device_live/show.html.heex:778 +#: lib/towerops_web/live/device_live/show.html.heex:839 #, elixir-autogen, elixir-format msgid "Storage Volumes" msgstr "Volúmenes de almacenamiento" -#: lib/towerops_web/live/alert_live/index.html.heex:60 +#: lib/towerops_web/live/site_live/show.html.heex:169 #, elixir-autogen, elixir-format msgid "Subscriber Impact" msgstr "Impacto en suscriptores" -#: lib/towerops_web/live/trace_live/index.html.heex:537 +#: lib/towerops_web/live/trace_live/index.html.heex:553 #, elixir-autogen, elixir-format msgid "Subscriber Trace" msgstr "Rastreo de suscriptor" -#: lib/towerops_web/live/dashboard_live.html.heex:223 -#: lib/towerops_web/live/dashboard_live.html.heex:612 -#: lib/towerops_web/live/device_live/index.html.heex:263 -#: lib/towerops_web/live/device_live/show.html.heex:2504 -#: lib/towerops_web/live/device_live/show.html.heex:2780 -#: lib/towerops_web/live/device_live/show.html.heex:2853 +#: lib/towerops_web/live/device_live/show.html.heex:2641 +#: lib/towerops_web/live/device_live/show.html.heex:2917 +#: lib/towerops_web/live/device_live/show.html.heex:2990 #: lib/towerops_web/live/site_live/index.html.heex:57 +#: lib/towerops_web/live/site_live/show.html.heex:76 +#: lib/towerops_web/live/site_live/show.html.heex:185 #, elixir-autogen, elixir-format msgid "Subscribers" msgstr "Suscriptores" -#: lib/towerops_web/live/trace_live/index.html.heex:313 +#: lib/towerops_web/live/trace_live/index.html.heex:326 #, elixir-autogen, elixir-format msgid "Subscribers on this AP" msgstr "Suscriptores en este AP" @@ -3939,12 +3930,12 @@ msgstr "Suscriptores en este AP" msgid "Success Rates" msgstr "Tasas de éxito" -#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:272 +#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:303 #, elixir-autogen, elixir-format msgid "Suggested matches:" msgstr "Coincidencias sugeridas:" -#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:72 +#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:74 #, elixir-autogen, elixir-format msgid "Summary" msgstr "Resumen" @@ -3954,79 +3945,83 @@ msgstr "Resumen" msgid "Superuser" msgstr "Superusuario" -#: lib/towerops_web/live/user_settings_live.html.heex:236 +#: lib/towerops_web/live/user_settings_live.html.heex:249 #, elixir-autogen, elixir-format msgid "Sydney" msgstr "Sídney" -#: lib/towerops_web/live/org/settings_live.html.heex:1138 +#: lib/towerops_web/live/org/settings_live.html.heex:1218 #, elixir-autogen, elixir-format msgid "Sync Direction" msgstr "Dirección de sincronización" -#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:287 +#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:289 #, elixir-autogen, elixir-format msgid "Sync Gaiia data and map inventory items to see reconciliation results." msgstr "Sincroniza datos de Gaiia y vincula elementos de inventario para ver los resultados de reconciliación." -#: lib/towerops_web/live/org/settings_live.html.heex:1574 +#: lib/towerops_web/live/org/settings_live.html.heex:1908 #, elixir-autogen, elixir-format msgid "Sync Settings" msgstr "Configuración de sincronización" -#: lib/towerops_web/live/org/integrations_live.html.heex:201 -#: lib/towerops_web/live/org/settings_live.html.heex:1390 -#: lib/towerops_web/live/org/settings_live.html.heex:1581 +#: lib/towerops_web/live/org/integrations_live.html.heex:260 +#: lib/towerops_web/live/org/integrations_live.html.heex:580 +#: lib/towerops_web/live/org/settings_live.html.heex:1482 +#: lib/towerops_web/live/org/settings_live.html.heex:1602 +#: lib/towerops_web/live/org/settings_live.html.heex:1724 +#: lib/towerops_web/live/org/settings_live.html.heex:1915 #, elixir-autogen, elixir-format msgid "Sync interval (minutes)" msgstr "Intervalo de sincronización (minutos)" -#: lib/towerops_web/live/org/settings_live.html.heex:978 +#: lib/towerops_web/live/org/settings_live.html.heex:1054 #, elixir-autogen, elixir-format msgid "Synced" msgstr "Sincronizado" -#: lib/towerops_web/live/device_live/show.html.heex:2099 +#: lib/towerops_web/live/device_live/show.html.heex:2228 #, elixir-autogen, elixir-format msgid "System OIDs" msgstr "OIDs del sistema" -#: lib/towerops_web/live/admin/dashboard_live.html.heex:51 +#: lib/towerops_web/live/admin/dashboard_live.html.heex:53 #, elixir-autogen, elixir-format msgid "System metrics and performance" msgstr "Métricas del sistema y rendimiento" -#: lib/towerops_web/live/org/settings_live.html.heex:1371 +#: lib/towerops_web/live/org/settings_live.html.heex:1463 #, elixir-autogen, elixir-format msgid "Tag" msgstr "Etiqueta" -#: lib/towerops_web/live/admin/dashboard_live.html.heex:105 +#: lib/towerops_web/live/admin/dashboard_live.html.heex:124 #, elixir-autogen, elixir-format msgid "Target" msgstr "Objetivo" -#: lib/towerops_web/live/device_live/show.html.heex:851 +#: lib/towerops_web/live/device_live/show.html.heex:912 #, elixir-autogen, elixir-format msgid "Temperature" msgstr "Temperatura" -#: lib/towerops_web/live/org/integrations_live.html.heex:238 +#: lib/towerops_web/live/org/integrations_live.html.heex:297 +#: lib/towerops_web/live/org/integrations_live.html.heex:617 #, elixir-autogen, elixir-format msgid "Test Connection" msgstr "Probar conexión" -#: lib/towerops_web/live/device_live/form.html.heex:542 +#: lib/towerops_web/live/device_live/form.html.heex:555 #, elixir-autogen, elixir-format msgid "Test SNMP Connection" msgstr "Probar conexión SNMP" -#: lib/towerops_web/live/device_live/form.html.heex:569 +#: lib/towerops_web/live/device_live/form.html.heex:582 #, elixir-autogen, elixir-format msgid "Testing SNMP credentials..." msgstr "Probando credenciales SNMP..." -#: lib/towerops_web/live/device_live/form.html.heex:541 +#: lib/towerops_web/live/device_live/form.html.heex:553 #, elixir-autogen, elixir-format msgid "Testing..." msgstr "Probando..." @@ -4051,7 +4046,7 @@ msgstr "La topología se descubre automáticamente mediante los protocolos LLDP msgid "These backups are identical. No differences found." msgstr "Estos respaldos son idénticos. No se encontraron diferencias." -#: lib/towerops_web/live/user_settings_live.html.heex:1687 +#: lib/towerops_web/live/user_settings_live.html.heex:1765 #, elixir-autogen, elixir-format msgid "These codes won't be shown again. Store them securely (password manager, encrypted file, etc.)." msgstr "Estos códigos no se mostrarán de nuevo. Guárdalos de forma segura (gestor de contraseñas, archivo cifrado, etc.)." @@ -4061,37 +4056,37 @@ msgstr "Estos códigos no se mostrarán de nuevo. Guárdalos de forma segura (ge msgid "This IP address (private network or CGNAT range) cannot be reached from the cloud." msgstr "Esta dirección IP (red privada o rango CGNAT) no se puede alcanzar desde la nube." -#: lib/towerops_web/live/agent_live/show.html.heex:312 +#: lib/towerops_web/live/agent_live/show.html.heex:322 #, elixir-autogen, elixir-format msgid "This agent is not currently polling any device." msgstr "Este agente no está sondeando ningún dispositivo actualmente." -#: lib/towerops_web/live/agent_live/index.html.heex:443 +#: lib/towerops_web/live/agent_live/index.html.heex:457 #, elixir-autogen, elixir-format msgid "This configuration includes Watchtower for automatic agent updates. The agent will automatically update to the latest version every 12 hours." msgstr "Esta configuración incluye Watchtower para actualizaciones automáticas del agente. El agente se actualizará automáticamente a la última versión cada 12 horas." -#: lib/towerops_web/live/device_live/show.html.heex:1489 +#: lib/towerops_web/live/device_live/show.html.heex:1604 #, elixir-autogen, elixir-format msgid "This device doesn't have any ARP entries, or ARP discovery hasn't run yet." msgstr "Este dispositivo no tiene entradas ARP, o el descubrimiento ARP aún no se ha ejecutado." -#: lib/towerops_web/live/device_live/show.html.heex:1760 +#: lib/towerops_web/live/device_live/show.html.heex:1881 #, elixir-autogen, elixir-format msgid "This device doesn't have any IP addresses discovered, or IP discovery hasn't run yet." msgstr "Este dispositivo no tiene direcciones IP descubiertas, o el descubrimiento de IPs aún no se ha ejecutado." -#: lib/towerops_web/live/device_live/show.html.heex:1409 +#: lib/towerops_web/live/device_live/show.html.heex:1522 #, elixir-autogen, elixir-format msgid "This device doesn't have any LLDP or CDP neighbors, or neighbor discovery hasn't run yet." msgstr "Este dispositivo no tiene vecinos LLDP o CDP, o el descubrimiento de vecinos aún no se ha ejecutado." -#: lib/towerops_web/live/device_live/show.html.heex:1575 +#: lib/towerops_web/live/device_live/show.html.heex:1690 #, elixir-autogen, elixir-format msgid "This device doesn't have any MAC forwarding entries, or MAC discovery hasn't run yet." msgstr "Este dispositivo no tiene entradas de reenvío MAC, o el descubrimiento MAC aún no se ha ejecutado." -#: lib/towerops_web/live/device_live/show.html.heex:1644 +#: lib/towerops_web/live/device_live/show.html.heex:1761 #, elixir-autogen, elixir-format msgid "This device doesn't have any VLANs configured, or VLAN discovery hasn't run yet." msgstr "Este dispositivo no tiene VLANs configuradas, o el descubrimiento de VLANs aún no se ha ejecutado." @@ -4111,123 +4106,123 @@ msgstr "Esto genera un volumen significativo de registros y solo debe habilitars msgid "This invitation is invalid or has expired." msgstr "Esta invitación es inválida o ha expirado." -#: lib/towerops_web/live/org/settings_live.ex:245 +#: lib/towerops_web/live/org/settings_live.ex:281 #, elixir-autogen, elixir-format msgid "This is already your default organization" msgstr "Esta ya es tu organización predeterminada" -#: lib/towerops_web/live/org/settings_live.html.heex:147 +#: lib/towerops_web/live/org/settings_live.html.heex:153 #, elixir-autogen, elixir-format msgid "This is your default organization" msgstr "Esta es tu organización predeterminada" -#: lib/towerops_web/live/device_live/form.html.heex:698 +#: lib/towerops_web/live/device_live/form.html.heex:716 #, elixir-autogen, elixir-format msgid "This setting is blocked when using cloud pollers" msgstr "Esta configuración está bloqueada al usar cloud pollers" -#: lib/towerops_web/live/org/settings_live.html.heex:506 +#: lib/towerops_web/live/org/settings_live.html.heex:536 #, elixir-autogen, elixir-format msgid "This will assign the default agent to ALL devices across all sites in this organization." msgstr "Esto asignará el agente predeterminado a TODOS los dispositivos de todos los sitios de esta organización." -#: lib/towerops_web/live/site_live/form.html.heex:218 +#: lib/towerops_web/live/site_live/form.html.heex:222 #, elixir-autogen, elixir-format msgid "This will assign this agent to ALL devices at this site." msgstr "Esto asignará este agente a TODOS los dispositivos de este sitio." -#: lib/towerops_web/live/user_settings_live.html.heex:1160 +#: lib/towerops_web/live/user_settings_live.html.heex:1207 #, elixir-autogen, elixir-format msgid "This will invalidate all existing unused recovery codes. Continue?" msgstr "Esto invalidará todos los códigos de recuperación no usados existentes. ¿Continuar?" -#: lib/towerops_web/live/user_settings_live.html.heex:1233 +#: lib/towerops_web/live/user_settings_live.html.heex:1282 #, elixir-autogen, elixir-format msgid "This will log you out from all other browsers and devices. Your current session will remain active." msgstr "Esto cerrará tu sesión en todos los demás navegadores y dispositivos. Tu sesión actual permanecerá activa." -#: lib/towerops_web/live/org/settings_live.html.heex:333 +#: lib/towerops_web/live/org/settings_live.html.heex:349 #, elixir-autogen, elixir-format msgid "This will override SNMP settings for ALL devices across all sites in this organization." msgstr "Esto sobrescribirá la configuración SNMP de TODOS los dispositivos en todos los sitios de esta organización." -#: lib/towerops_web/live/site_live/form.html.heex:357 +#: lib/towerops_web/live/site_live/form.html.heex:369 #, elixir-autogen, elixir-format msgid "This will override SNMP settings for ALL devices at this site." msgstr "Esto sobrescribirá la configuración SNMP de TODOS los dispositivos en este sitio." -#: lib/towerops_web/live/site_live/form.html.heex:362 +#: lib/towerops_web/live/site_live/form.html.heex:375 #, elixir-autogen, elixir-format msgid "This will replace SNMP settings for ALL devices at this site. Are you sure?" msgstr "Esto reemplazará la configuración SNMP de TODOS los dispositivos en este sitio. ¿Estás seguro?" -#: lib/towerops_web/live/org/settings_live.html.heex:338 +#: lib/towerops_web/live/org/settings_live.html.heex:357 #, elixir-autogen, elixir-format msgid "This will replace SNMP settings for ALL devices in this organization. Are you sure?" msgstr "Esto reemplazará la configuración SNMP de TODOS los dispositivos en esta organización. ¿Estás seguro?" -#: lib/towerops_web/live/site_live/form.html.heex:223 +#: lib/towerops_web/live/site_live/form.html.heex:228 #, elixir-autogen, elixir-format msgid "This will replace agent assignments for ALL devices at this site. Are you sure?" msgstr "Esto reemplazará las asignaciones de agente de TODOS los dispositivos en este sitio. ¿Estás seguro?" -#: lib/towerops_web/live/org/settings_live.html.heex:511 +#: lib/towerops_web/live/org/settings_live.html.heex:544 #, elixir-autogen, elixir-format msgid "This will replace agent assignments for ALL devices in this organization. Are you sure?" msgstr "Esto reemplazará las asignaciones de agente de TODOS los dispositivos en esta organización. ¿Estás seguro?" -#: lib/towerops_web/live/device_live/index.html.heex:100 +#: lib/towerops_web/live/device_live/index.html.heex:119 #, elixir-autogen, elixir-format msgid "This will trigger SNMP discovery for all SNMP-enabled devices. Continue?" msgstr "Esto iniciará el descubrimiento SNMP para todos los dispositivos con SNMP habilitado. ¿Continuar?" -#: lib/towerops_web/live/site_live/show.html.heex:19 +#: lib/towerops_web/live/site_live/show.html.heex:45 #, elixir-autogen, elixir-format msgid "This will trigger SNMP discovery for all devices at this site. Continue?" msgstr "Esto iniciará el descubrimiento SNMP para todos los dispositivos en este sitio. ¿Continuar?" -#: lib/towerops_web/live/device_live/show.html.heex:2850 +#: lib/towerops_web/live/device_live/show.html.heex:2987 #, elixir-autogen, elixir-format msgid "Throughput" msgstr "Rendimiento" -#: lib/towerops_web/live/admin/dashboard_live.html.heex:106 -#: lib/towerops_web/live/device_live/show.html.heex:2835 +#: lib/towerops_web/live/admin/dashboard_live.html.heex:125 +#: lib/towerops_web/live/device_live/show.html.heex:2972 #, elixir-autogen, elixir-format msgid "Time" msgstr "Hora" -#: lib/towerops_web/live/user_settings_live.html.heex:260 +#: lib/towerops_web/live/user_settings_live.html.heex:273 #, elixir-autogen, elixir-format msgid "Time Format" msgstr "Formato de hora" -#: lib/towerops_web/live/agent_live/show.html.heex:257 +#: lib/towerops_web/live/agent_live/show.html.heex:267 #, elixir-autogen, elixir-format msgid "Timestamps" msgstr "Marcas de tiempo" -#: lib/towerops_web/live/user_settings_live.html.heex:167 +#: lib/towerops_web/live/user_settings_live.html.heex:180 #, elixir-autogen, elixir-format msgid "Timezone" msgstr "Zona horaria" -#: lib/towerops_web/live/org_live/new.html.heex:22 +#: lib/towerops_web/live/org_live/new.html.heex:21 #, elixir-autogen, elixir-format msgid "To create additional organizations, you'll need to upgrade your existing organization to a paid plan." msgstr "Para crear organizaciones adicionales, necesitas actualizar tu organización existente a un plan de pago." -#: lib/towerops_web/live/device_live/form.html.heex:157 +#: lib/towerops_web/live/device_live/form.html.heex:159 #, elixir-autogen, elixir-format msgid "To monitor this device, assign it to a" msgstr "Para monitorear este dispositivo, asígnalo a un" -#: lib/towerops_web/live/user_settings_live.html.heex:678 +#: lib/towerops_web/live/user_settings_live.html.heex:710 #, elixir-autogen, elixir-format msgid "Toggle" msgstr "Alternar" -#: lib/towerops_web/live/user_settings_live.html.heex:224 +#: lib/towerops_web/live/user_settings_live.html.heex:237 #, elixir-autogen, elixir-format msgid "Tokyo" msgstr "Tokio" @@ -4242,37 +4237,39 @@ msgstr "Visualización de topología" msgid "Total Devices" msgstr "Total de dispositivos" -#: lib/towerops_web/live/dashboard_live.html.heex:94 +#: lib/towerops_web/live/dashboard_live.html.heex:97 #, elixir-autogen, elixir-format msgid "TowerOps automatically monitors your devices and alerts you of issues" msgstr "TowerOps monitorea automáticamente tus dispositivos y te alerta de problemas" -#: lib/towerops_web/live/org/settings_live.html.heex:1194 +#: lib/towerops_web/live/org/settings_live.html.heex:1278 #, elixir-autogen, elixir-format msgid "TowerOps is the source of truth. Push discovered devices and monitoring data to NetBox." msgstr "TowerOps es la fuente de verdad. Envía dispositivos descubiertos y datos de monitoreo a NetBox." -#: lib/towerops_web/live/org/settings_live.html.heex:1522 +#: lib/towerops_web/live/org/settings_live.html.heex:1853 #, elixir-autogen, elixir-format msgid "TowerOps will automatically update the corresponding alert." msgstr "TowerOps actualizará automáticamente la alerta correspondiente." -#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:186 +#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:188 #, elixir-autogen, elixir-format msgid "Towerops" msgstr "Towerops" +#: lib/towerops_web/components/layouts.ex:366 +#: lib/towerops_web/components/layouts.ex:585 #: lib/towerops_web/live/trace_live/index.ex:73 #, elixir-autogen, elixir-format msgid "Trace" msgstr "Rastreo" -#: lib/towerops_web/live/device_live/show.html.heex:927 +#: lib/towerops_web/live/device_live/show.html.heex:990 #, elixir-autogen, elixir-format msgid "Transceivers" msgstr "Transceptores" -#: lib/towerops_web/live/alert_live/index.html.heex:10 +#: lib/towerops_web/live/alert_live/index.html.heex:15 #, elixir-autogen, elixir-format msgid "Triage alerts by site impact — fix the biggest problems first" msgstr "Clasifica alertas por impacto en el sitio — soluciona los problemas más grandes primero" @@ -4282,12 +4279,12 @@ msgstr "Clasifica alertas por impacto en el sitio — soluciona los problemas m msgid "Try adjusting your search terms or clearing the filters." msgstr "Intenta ajustar tus términos de búsqueda o limpiar los filtros." -#: lib/towerops_web/live/trace_live/index.html.heex:75 +#: lib/towerops_web/live/trace_live/index.html.heex:79 #, elixir-autogen, elixir-format msgid "Try searching by customer name, IP address, account ID, or device name" msgstr "Intenta buscar por nombre de cliente, dirección IP, ID de cuenta o nombre de dispositivo" -#: lib/towerops_web/live/org/settings_live.html.heex:1517 +#: lib/towerops_web/live/org/settings_live.html.heex:1846 #, elixir-autogen, elixir-format msgid "Two-Way Sync (Webhooks)" msgstr "Sincronización bidireccional (Webhooks)" @@ -4302,56 +4299,57 @@ msgstr "¡Autenticación de dos factores habilitada correctamente!" msgid "Two-factor authentication is required for this action." msgstr "Se requiere autenticación de dos factores para esta acción." -#: lib/towerops_web/live/device_live/index.html.heex:560 -#: lib/towerops_web/live/device_live/show.html.heex:2175 +#: lib/towerops_web/live/device_live/index.html.heex:284 +#: lib/towerops_web/live/device_live/index.html.heex:613 +#: lib/towerops_web/live/device_live/show.html.heex:2304 #, elixir-autogen, elixir-format msgid "Type" msgstr "Tipo" -#: lib/towerops_web/live/user_settings_live.html.heex:176 +#: lib/towerops_web/live/user_settings_live.html.heex:189 #, elixir-autogen, elixir-format msgid "UTC (Coordinated Universal Time)" msgstr "UTC (Tiempo Universal Coordinado)" -#: lib/towerops_web/live/admin/security_live/index.html.heex:198 +#: lib/towerops_web/live/admin/security_live/index.html.heex:200 #, elixir-autogen, elixir-format msgid "Unblock" msgstr "Desbloquear" -#: lib/towerops_web/live/admin/security_live/index.html.heex:195 +#: lib/towerops_web/live/admin/security_live/index.html.heex:196 #, elixir-autogen, elixir-format msgid "Unblock this IP address? This will remove all offense history." msgstr "¿Desbloquear esta dirección IP? Esto eliminará todo el historial de infracciones." -#: lib/towerops_web/live/agent_live/show.html.heex:218 -#: lib/towerops_web/live/device_live/show.html.heex:1364 +#: lib/towerops_web/live/agent_live/show.html.heex:228 +#: lib/towerops_web/live/device_live/show.html.heex:1477 #, elixir-autogen, elixir-format msgid "Unknown" msgstr "Desconocido" -#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:216 -#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:239 -#: lib/towerops_web/live/org/preseem_devices_live.html.heex:202 +#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:247 +#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:270 +#: lib/towerops_web/live/org/preseem_devices_live.html.heex:213 #, elixir-autogen, elixir-format msgid "Unlink" msgstr "Desvincular" -#: lib/towerops_web/live/org/preseem_devices_live.html.heex:199 +#: lib/towerops_web/live/org/preseem_devices_live.html.heex:210 #, elixir-autogen, elixir-format msgid "Unlink this device from the Preseem access point?" msgstr "¿Desvincular este dispositivo del punto de acceso de Preseem?" -#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:236 +#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:267 #, elixir-autogen, elixir-format msgid "Unlink this device?" msgstr "¿Desvincular este dispositivo?" -#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:213 +#: lib/towerops_web/live/org/gaiia_mapping_live.html.heex:244 #, elixir-autogen, elixir-format msgid "Unlink this site?" msgstr "¿Desvincular este sitio?" -#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:310 +#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:312 #, elixir-autogen, elixir-format msgid "Unmapped Gaiia items (no Towerops link)" msgstr "Elementos de Gaiia no vinculados (sin enlace a Towerops)" @@ -4361,7 +4359,7 @@ msgstr "Elementos de Gaiia no vinculados (sin enlace a Towerops)" msgid "Unmatched" msgstr "No vinculado" -#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:318 +#: lib/towerops_web/live/org/gaiia_reconciliation_live.html.heex:320 #, elixir-autogen, elixir-format msgid "Untracked Towerops devices (not in Gaiia)" msgstr "Dispositivos de Towerops no rastreados (no están en Gaiia)" @@ -4376,22 +4374,22 @@ msgstr "Comando de actualización enviado al agente (v%{version})" msgid "Update the agent name. The authentication token cannot be changed." msgstr "Actualiza el nombre del agente. El token de autenticación no se puede cambiar." -#: lib/towerops_web/live/org/settings_live.html.heex:112 +#: lib/towerops_web/live/org/settings_live.html.heex:116 #, elixir-autogen, elixir-format msgid "Update the name of your organization." msgstr "Actualiza el nombre de tu organización." -#: lib/towerops_web/live/user_settings_live.html.heex:387 +#: lib/towerops_web/live/user_settings_live.html.heex:407 #, elixir-autogen, elixir-format msgid "Update your email address. You'll receive a confirmation link to verify the new address." msgstr "Actualiza tu dirección de correo. Recibirás un enlace de confirmación para verificar la nueva dirección." -#: lib/towerops_web/live/user_settings_live.html.heex:113 +#: lib/towerops_web/live/user_settings_live.html.heex:126 #, elixir-autogen, elixir-format msgid "Update your name and timezone preferences." msgstr "Actualiza tu nombre y preferencias de zona horaria." -#: lib/towerops_web/live/user_settings_live.html.heex:435 +#: lib/towerops_web/live/user_settings_live.html.heex:457 #, elixir-autogen, elixir-format msgid "Update your password. You'll be logged out and need to sign in again with your new password." msgstr "Actualiza tu contraseña. Se cerrará tu sesión y necesitarás iniciar sesión de nuevo con tu nueva contraseña." @@ -4401,30 +4399,25 @@ msgstr "Actualiza tu contraseña. Se cerrará tu sesión y necesitarás iniciar msgid "Updates every 10 seconds" msgstr "Se actualiza cada 10 segundos" -#: lib/towerops_web/live/dashboard_live.html.heex:159 -#, elixir-autogen, elixir-format -msgid "Uptime" -msgstr "Tiempo de actividad" - -#: lib/towerops_web/live/device_live/form.html.heex:688 -#: lib/towerops_web/live/org/settings_live.html.heex:414 -#: lib/towerops_web/live/site_live/form.html.heex:419 +#: lib/towerops_web/live/device_live/form.html.heex:703 +#: lib/towerops_web/live/org/settings_live.html.heex:438 +#: lib/towerops_web/live/site_live/form.html.heex:435 #, elixir-autogen, elixir-format msgid "Use SSL (API-SSL)" msgstr "Usar SSL (API-SSL)" -#: lib/towerops_web/live/org/settings_live.html.heex:182 +#: lib/towerops_web/live/org/settings_live.html.heex:190 #, elixir-autogen, elixir-format msgid "Use sites to organize devices" msgstr "Usa sitios para organizar dispositivos" -#: lib/towerops_web/live/agent_live/index.html.heex:387 +#: lib/towerops_web/live/agent_live/index.html.heex:401 #, elixir-autogen, elixir-format msgid "Use the token and Docker Compose configuration below to deploy this agent." msgstr "Usa el token y la configuración de Docker Compose a continuación para desplegar este agente." -#: lib/towerops_web/live/admin/dashboard_live.html.heex:104 -#: lib/towerops_web/live/org/settings_live.html.heex:707 +#: lib/towerops_web/live/admin/dashboard_live.html.heex:123 +#: lib/towerops_web/live/org/settings_live.html.heex:748 #, elixir-autogen, elixir-format msgid "User" msgstr "Usuario" @@ -4435,12 +4428,13 @@ msgstr "Usuario" msgid "User confirmed successfully." msgstr "Usuario confirmado correctamente." -#: lib/towerops_web/live/device_live/form.html.heex:433 -#: lib/towerops_web/live/device_live/form.html.heex:661 -#: lib/towerops_web/live/org/settings_live.html.heex:264 -#: lib/towerops_web/live/org/settings_live.html.heex:384 -#: lib/towerops_web/live/site_live/form.html.heex:288 -#: lib/towerops_web/live/site_live/form.html.heex:398 +#: lib/towerops_web/live/device_live/form.html.heex:442 +#: lib/towerops_web/live/device_live/form.html.heex:676 +#: lib/towerops_web/live/onboarding_live.html.heex:90 +#: lib/towerops_web/live/org/settings_live.html.heex:280 +#: lib/towerops_web/live/org/settings_live.html.heex:408 +#: lib/towerops_web/live/site_live/form.html.heex:300 +#: lib/towerops_web/live/site_live/form.html.heex:414 #, elixir-autogen, elixir-format msgid "Username" msgstr "Nombre de usuario" @@ -4450,40 +4444,40 @@ msgstr "Nombre de usuario" msgid "Users" msgstr "Usuarios" -#: lib/towerops_web/live/device_live/form.html.heex:421 +#: lib/towerops_web/live/device_live/form.html.heex:428 #, elixir-autogen, elixir-format msgid "Using default (v2c, no community set - configure at organization or site level)" msgstr "Usando predeterminado (v2c, sin community configurado - configura a nivel de organización o sitio)" -#: lib/towerops_web/live/device_live/form.html.heex:282 +#: lib/towerops_web/live/device_live/form.html.heex:284 #, elixir-autogen, elixir-format msgid "Using global default cloud poller:" msgstr "Usando cloud poller predeterminado global:" -#: lib/towerops_web/live/device_live/show.html.heex:184 +#: lib/towerops_web/live/device_live/show.html.heex:219 #, elixir-autogen, elixir-format msgid "VLANs" msgstr "VLANs" -#: lib/towerops_web/live/device_live/show.html.heex:2112 -#: lib/towerops_web/live/device_live/show.html.heex:2146 -#: lib/towerops_web/live/device_live/show.html.heex:2184 -#: lib/towerops_web/live/device_live/show.html.heex:2316 +#: lib/towerops_web/live/device_live/show.html.heex:2241 +#: lib/towerops_web/live/device_live/show.html.heex:2275 +#: lib/towerops_web/live/device_live/show.html.heex:2313 +#: lib/towerops_web/live/device_live/show.html.heex:2449 #, elixir-autogen, elixir-format msgid "Value" msgstr "Valor" -#: lib/towerops_web/live/agent_live/show.html.heex:98 +#: lib/towerops_web/live/agent_live/show.html.heex:106 #, elixir-autogen, elixir-format msgid "Verbose logging is disabled. Enable it in the agent edit page to troubleshoot issues." msgstr "El registro detallado está deshabilitado. Habilítalo en la página de edición del agente para diagnosticar problemas." -#: lib/towerops_web/live/agent_live/show.html.heex:96 +#: lib/towerops_web/live/agent_live/show.html.heex:104 #, elixir-autogen, elixir-format msgid "Verbose logging is enabled. All SNMP data and agent messages are being logged." msgstr "El registro detallado está habilitado. Todos los datos SNMP y mensajes del agente se están registrando." -#: lib/towerops_web/live/user_settings_live.html.heex:1582 +#: lib/towerops_web/live/user_settings_live.html.heex:1660 #, elixir-autogen, elixir-format msgid "Verify" msgstr "Verificar" @@ -4491,23 +4485,23 @@ msgstr "Verificar" #: lib/towerops_web/live/admin/agent_live/index.html.heex:68 #: lib/towerops_web/live/admin/agent_live/index.html.heex:142 #: lib/towerops_web/live/agent_live/index.html.heex:128 -#: lib/towerops_web/live/agent_live/index.html.heex:238 +#: lib/towerops_web/live/agent_live/index.html.heex:244 #, elixir-autogen, elixir-format msgid "Version" msgstr "Versión" -#: lib/towerops_web/live/agent_live/show.html.heex:105 +#: lib/towerops_web/live/agent_live/show.html.heex:115 #, elixir-autogen, elixir-format msgid "View Debug Logs" msgstr "Ver registros de depuración" #: lib/towerops_web/live/agent_live/index.html.heex:151 -#: lib/towerops_web/live/agent_live/index.html.heex:261 +#: lib/towerops_web/live/agent_live/index.html.heex:267 #, elixir-autogen, elixir-format msgid "View Setup" msgstr "Ver configuración" -#: lib/towerops_web/live/org/settings_live.html.heex:774 +#: lib/towerops_web/live/org/settings_live.html.heex:824 #, elixir-autogen, elixir-format msgid "Viewer" msgstr "Visor" @@ -4517,7 +4511,7 @@ msgstr "Visor" msgid "Visual topology of your network infrastructure" msgstr "Topología visual de tu infraestructura de red" -#: lib/towerops_web/live/device_live/show.html.heex:889 +#: lib/towerops_web/live/device_live/show.html.heex:951 #, elixir-autogen, elixir-format msgid "Voltage" msgstr "Voltaje" @@ -4527,12 +4521,12 @@ msgstr "Voltaje" msgid "Warning" msgstr "Advertencia" -#: lib/towerops_web/live/org/settings_live.html.heex:196 +#: lib/towerops_web/live/org/settings_live.html.heex:206 #, elixir-autogen, elixir-format msgid "Warning: Disabling Sites" msgstr "Advertencia: Deshabilitando sitios" -#: lib/towerops_web/live/agent_live/index.html.heex:326 +#: lib/towerops_web/live/agent_live/index.html.heex:338 #, elixir-autogen, elixir-format msgid "Warning: Selected agent no longer exists. Please choose a new agent." msgstr "Advertencia: El agente seleccionado ya no existe. Elige un nuevo agente." @@ -4542,56 +4536,56 @@ msgstr "Advertencia: El agente seleccionado ya no existe. Elige un nuevo agente. msgid "We're working on fixing the problem. Please try again later." msgstr "Estamos trabajando en solucionar el problema. Inténtalo más tarde." -#: lib/towerops_web/live/org/integrations_live.html.heex:266 -#: lib/towerops_web/live/org/settings_live.html.heex:1651 +#: lib/towerops_web/live/org/integrations_live.html.heex:324 +#: lib/towerops_web/live/org/settings_live.html.heex:1988 #, elixir-autogen, elixir-format msgid "Webhook Configuration" msgstr "Configuración de Webhook" -#: lib/towerops_web/live/org/integrations_live.html.heex:299 -#: lib/towerops_web/live/org/settings_live.html.heex:1685 +#: lib/towerops_web/live/org/integrations_live.html.heex:359 +#: lib/towerops_web/live/org/settings_live.html.heex:2024 #, elixir-autogen, elixir-format msgid "Webhook Secret" msgstr "Secreto de Webhook" -#: lib/towerops_web/live/org/settings_live.html.heex:1537 +#: lib/towerops_web/live/org/settings_live.html.heex:1868 #, elixir-autogen, elixir-format msgid "Webhook Signing Secret" msgstr "Secreto de firma de Webhook" -#: lib/towerops_web/live/org/integrations_live.html.heex:275 -#: lib/towerops_web/live/org/settings_live.html.heex:1526 -#: lib/towerops_web/live/org/settings_live.html.heex:1661 +#: lib/towerops_web/live/org/integrations_live.html.heex:335 +#: lib/towerops_web/live/org/settings_live.html.heex:1857 +#: lib/towerops_web/live/org/settings_live.html.heex:2000 #, elixir-autogen, elixir-format msgid "Webhook URL" msgstr "URL de Webhook" -#: lib/towerops_web/live/org/integrations_live.ex:164 +#: lib/towerops_web/live/org/integrations_live.ex:245 #, elixir-autogen, elixir-format msgid "Webhook secret regenerated" msgstr "Secreto de webhook regenerado" -#: lib/towerops_web/live/org/settings_live.ex:429 +#: lib/towerops_web/live/org/settings_live.ex:441 #, elixir-autogen, elixir-format msgid "Webhook secret saved" msgstr "Secreto de webhook guardado" -#: lib/towerops_web/live/agent_live/show.html.heex:128 +#: lib/towerops_web/live/agent_live/show.html.heex:138 #, elixir-autogen, elixir-format msgid "What Gets Logged:" msgstr "Qué se registra:" -#: lib/towerops_web/live/org/settings_live.html.heex:1232 +#: lib/towerops_web/live/org/settings_live.html.heex:1320 #, elixir-autogen, elixir-format msgid "What to Sync" msgstr "Qué sincronizar" -#: lib/towerops_web/live/dashboard_live.html.heex:389 +#: lib/towerops_web/live/dashboard_live.html.heex:374 #, elixir-autogen, elixir-format msgid "When" msgstr "Cuándo" -#: lib/towerops_web/live/org/settings_live.html.heex:1509 +#: lib/towerops_web/live/org/settings_live.html.heex:1836 #, elixir-autogen, elixir-format msgid "When connected, TowerOps will automatically trigger, acknowledge, and resolve PagerDuty incidents in sync with your alerts." msgstr "Cuando esté conectado, TowerOps activará, reconocerá y resolverá automáticamente los incidentes de PagerDuty en sincronización con tus alertas." @@ -4601,27 +4595,27 @@ msgstr "Cuando esté conectado, TowerOps activará, reconocerá y resolverá aut msgid "When enabled, the server logs all SNMP data and messages for this agent." msgstr "Cuando está habilitado, el servidor registra todos los datos SNMP y mensajes de este agente." -#: lib/towerops_web/live/org/settings_live.html.heex:185 +#: lib/towerops_web/live/org/settings_live.html.heex:193 #, elixir-autogen, elixir-format msgid "When enabled, you can organize devices into sites. When disabled, all devices belong directly to the organization." msgstr "Cuando está habilitado, puedes organizar dispositivos en sitios. Cuando está deshabilitado, todos los dispositivos pertenecen directamente a la organización." -#: lib/towerops_web/live/org/settings_live.html.heex:1521 +#: lib/towerops_web/live/org/settings_live.html.heex:1850 #, elixir-autogen, elixir-format msgid "When someone resolves or acknowledges an incident directly in PagerDuty," msgstr "Cuando alguien resuelve o reconoce un incidente directamente en PagerDuty," -#: lib/towerops_web/live/org/settings_live.html.heex:1494 +#: lib/towerops_web/live/org/settings_live.html.heex:1818 #, elixir-autogen, elixir-format msgid "Where to find your Integration Key" msgstr "Dónde encontrar tu clave de integración" -#: lib/towerops_web/live/device_live/show.html.heex:1040 +#: lib/towerops_web/live/device_live/show.html.heex:1106 #, elixir-autogen, elixir-format msgid "Wireless" msgstr "Inalámbrico" -#: lib/towerops_web/live/org/settings_live.html.heex:1101 +#: lib/towerops_web/live/org/settings_live.html.heex:1181 #, elixir-autogen, elixir-format msgid "Write permission is required if you want to push data to NetBox." msgstr "Se requiere permiso de escritura si quieres enviar datos a NetBox." @@ -4633,12 +4627,12 @@ msgstr "Se requiere permiso de escritura si quieres enviar datos a NetBox." msgid "You don't have access to this device" msgstr "No tienes acceso a este dispositivo" -#: lib/towerops_web/live/user_settings_live.html.heex:1148 +#: lib/towerops_web/live/user_settings_live.html.heex:1194 #, elixir-autogen, elixir-format msgid "You have" msgstr "Tienes" -#: lib/towerops_web/live/user_settings_live.html.heex:1181 +#: lib/towerops_web/live/user_settings_live.html.heex:1229 #, elixir-autogen, elixir-format msgid "You have no recovery codes available. If you lose access to your authenticator app," msgstr "No tienes códigos de recuperación disponibles. Si pierdes acceso a tu app de autenticación," @@ -4648,22 +4642,22 @@ msgstr "No tienes códigos de recuperación disponibles. Si pierdes acceso a tu msgid "You've joined %{org}!" msgstr "¡Te has unido a %{org}!" -#: lib/towerops_web/live/org/settings_live.html.heex:1100 +#: lib/towerops_web/live/org/settings_live.html.heex:1178 #, elixir-autogen, elixir-format msgid "Your NetBox instance URL and API token. The token needs read permission at minimum." msgstr "La URL de tu instancia de NetBox y el token de API. El token necesita permiso de lectura como mínimo." -#: lib/towerops_web/live/org_live/index.ex:15 +#: lib/towerops_web/live/org_live/index.ex:14 #, elixir-autogen, elixir-format msgid "Your Organizations" msgstr "Tus organizaciones" -#: lib/towerops_web/live/user_settings_live.html.heex:752 +#: lib/towerops_web/live/user_settings_live.html.heex:785 #, elixir-autogen, elixir-format msgid "Your current session will appear here after your next login." msgstr "Tu sesión actual aparecerá aquí después de tu próximo inicio de sesión." -#: lib/towerops_web/live/user_settings_live.html.heex:842 +#: lib/towerops_web/live/user_settings_live.html.heex:886 #, elixir-autogen, elixir-format msgid "Your login attempts will appear here." msgstr "Tus intentos de inicio de sesión aparecerán aquí." @@ -4673,50 +4667,791 @@ msgstr "Tus intentos de inicio de sesión aparecerán aquí." msgid "Your network operations log is empty. Events will appear here in real time as config changes, alerts, device events, and syncs happen across your organization." msgstr "Tu registro de operaciones de red está vacío. Los eventos aparecerán aquí en tiempo real a medida que ocurran cambios de configuración, alertas, eventos de dispositivos y sincronizaciones en tu organización." -#: lib/towerops_web/plugs/update_session_activity.ex:98 +#: lib/towerops_web/plugs/update_session_activity.ex:99 #, elixir-autogen, elixir-format msgid "Your session expired due to inactivity. Please log in again." msgstr "Tu sesión expiró por inactividad. Inicia sesión de nuevo." -#: lib/towerops/workers/gaiia_insight_worker.ex:45 -#: lib/towerops/workers/gaiia_insight_worker.ex:47 +#: lib/towerops/workers/gaiia_insight_worker.ex:80 +#: lib/towerops/workers/gaiia_insight_worker.ex:82 #, elixir-autogen, elixir-format msgid "device" msgid_plural "devices" msgstr[0] "" msgstr[1] "" -#: lib/towerops/workers/gaiia_insight_worker.ex:95 +#: lib/towerops/workers/gaiia_insight_worker.ex:130 #, elixir-autogen, elixir-format msgid "device has" msgid_plural "devices have" msgstr[0] "" msgstr[1] "" -#: lib/towerops/workers/gaiia_insight_worker.ex:47 +#: lib/towerops/workers/gaiia_insight_worker.ex:82 #, elixir-autogen, elixir-format msgid "has" msgid_plural "have" msgstr[0] "" msgstr[1] "" -#: lib/towerops/workers/gaiia_insight_worker.ex:72 +#: lib/towerops/workers/gaiia_insight_worker.ex:107 #, elixir-autogen, elixir-format msgid "item is" msgid_plural "items are" msgstr[0] "" msgstr[1] "" -#: lib/towerops/workers/gaiia_insight_worker.ex:70 +#: lib/towerops/workers/gaiia_insight_worker.ex:105 #, elixir-autogen, elixir-format msgid "item references" msgid_plural "items reference" msgstr[0] "" msgstr[1] "" -#: lib/towerops/workers/gaiia_insight_worker.ex:93 +#: lib/towerops/workers/gaiia_insight_worker.ex:128 #, elixir-autogen, elixir-format msgid "mismatch" msgid_plural "mismatches" msgstr[0] "" msgstr[1] "" + +#: lib/towerops_web/controllers/user_session_html/new.html.heex:18 +#, elixir-autogen, elixir-format +msgid "\"TowerOps cut our response time to network issues by 80%. We can see problems before customers even notice.\"" +msgstr "" + +#: lib/towerops_web/live/onboarding_live.html.heex:263 +#: lib/towerops_web/live/org/integrations_live.html.heex:250 +#: lib/towerops_web/live/org/settings_live.html.heex:1704 +#, elixir-autogen, elixir-format +msgid "API Secret" +msgstr "" + +#: lib/towerops_web/live/alert_live/index.html.heex:145 +#, elixir-autogen, elixir-format +msgid "Ack Selected" +msgstr "" + +#: lib/towerops_web/live/alert_live/index.html.heex:418 +#, elixir-autogen, elixir-format, fuzzy +msgid "Ack'd" +msgstr "Reconocer" + +#: lib/towerops_web/live/dashboard_live.html.heex:272 +#, elixir-autogen, elixir-format, fuzzy +msgid "Active Issues" +msgstr "Sesiones activas" + +#: lib/towerops_web/components/layouts.ex:379 +#: lib/towerops_web/components/layouts.ex:588 +#, elixir-autogen, elixir-format, fuzzy +msgid "Activity" +msgstr "Registro de actividad" + +#: lib/towerops_web/live/site_live/index.html.heex:138 +#: lib/towerops_web/live/site_live/show.html.heex:56 +#, elixir-autogen, elixir-format, fuzzy +msgid "Add Device" +msgstr "Agregar dispositivos" + +#: lib/towerops_web/live/onboarding_live.html.heex:137 +#, elixir-autogen, elixir-format, fuzzy +msgid "Add Your First Site" +msgstr "Agrega tu primer dispositivo" + +#: lib/towerops_web/components/layouts.ex:459 +#, elixir-autogen, elixir-format, fuzzy +msgid "Admin Panel" +msgstr "Administración" + +#: lib/towerops_web/live/dashboard_live.html.heex:511 +#, elixir-autogen, elixir-format, fuzzy +msgid "Affected" +msgstr "Dispositivos afectados:" + +#: lib/towerops_web/live/onboarding_live.ex:204 +#, elixir-autogen, elixir-format, fuzzy +msgid "Agent" +msgstr "Agentes" + +#: lib/towerops_web/live/onboarding_live.html.heex:330 +#, elixir-autogen, elixir-format, fuzzy +msgid "Agent:" +msgstr "Agentes" + +#: lib/towerops_web/live/dashboard_live.html.heex:368 +#, elixir-autogen, elixir-format, fuzzy +msgid "Alert" +msgstr "Alertas" + +#: lib/towerops_web/live/maintenance_live/show.html.heex:59 +#, elixir-autogen, elixir-format, fuzzy +msgid "Are you sure you want to delete this maintenance window?" +msgstr "¿Seguro que quieres eliminar este usuario?" + +#: lib/towerops_web/live/maintenance_live/form.html.heex:12 +#: lib/towerops_web/live/maintenance_live/show.html.heex:12 +#, elixir-autogen, elixir-format +msgid "Back to Maintenance Windows" +msgstr "" + +#: lib/towerops_web/live/onboarding_live.html.heex:226 +#, elixir-autogen, elixir-format +msgid "Back to providers" +msgstr "" + +#: lib/towerops_web/live/onboarding_live.ex:203 +#, elixir-autogen, elixir-format +msgid "Billing" +msgstr "" + +#: lib/towerops_web/live/device_live/index.html.heex:240 +#, elixir-autogen, elixir-format, fuzzy +msgid "Clear filter" +msgstr "Limpiar" + +#: lib/towerops_web/live/alert_live/index.html.heex:155 +#, elixir-autogen, elixir-format +msgid "Clear selection" +msgstr "" + +#: lib/towerops_web/live/device_live/show.html.heex:58 +#: lib/towerops_web/live/device_live/show.html.heex:385 +#: lib/towerops_web/live/device_live/show.html.heex:1361 +#: lib/towerops_web/live/device_live/show.html.heex:1385 +#, elixir-autogen, elixir-format +msgid "Click to copy" +msgstr "" + +#: lib/towerops_web/live/onboarding_live.html.heex:194 +#, elixir-autogen, elixir-format +msgid "Connect a Billing Platform" +msgstr "" + +#: lib/towerops_web/live/site_live/index.html.heex:63 +#, elixir-autogen, elixir-format +msgid "Coordinates" +msgstr "" + +#: lib/towerops_web/live/onboarding_live.html.heex:187 +#, elixir-autogen, elixir-format +msgid "Create Site & Continue" +msgstr "" + +#: lib/towerops_web/live/device_live/index.html.heex:136 +#, elixir-autogen, elixir-format, fuzzy +msgid "Create a site" +msgstr "Crear un sitio" + +#: lib/towerops_web/live/maintenance_live/index.html.heex:98 +#: lib/towerops_web/live/maintenance_live/show.html.heex:137 +#, elixir-autogen, elixir-format, fuzzy +msgid "Created By" +msgstr "Creado" + +#: lib/towerops_web/live/maintenance_live/show.html.heex:25 +#, elixir-autogen, elixir-format, fuzzy +msgid "Currently Active" +msgstr "Actividad actual" + +#: lib/towerops_web/components/layouts.ex:262 +#: lib/towerops_web/components/layouts.ex:553 +#, elixir-autogen, elixir-format, fuzzy +msgid "Dashboard" +msgstr "Panel de administración" + +#: lib/towerops_web/live/onboarding_live.html.heex:307 +#, elixir-autogen, elixir-format +msgid "Deploy Agent" +msgstr "" + +#: lib/towerops_web/live/alert_live/index.html.heex:484 +#, elixir-autogen, elixir-format +msgid "Details" +msgstr "" + +#: lib/towerops_web/live/onboarding_live.html.heex:340 +#, elixir-autogen, elixir-format +msgid "Docker" +msgstr "" + +#: lib/towerops_web/live/onboarding_live.html.heex:373 +#, elixir-autogen, elixir-format +msgid "Done — Go to Dashboard" +msgstr "" + +#: lib/towerops_web/live/alert_live/index.html.heex:226 +#, elixir-autogen, elixir-format, fuzzy +msgid "Duration" +msgstr "Duración promedio" + +#: lib/towerops_web/live/maintenance_live/show.html.heex:54 +#, elixir-autogen, elixir-format, fuzzy +msgid "Edit" +msgstr "Editar sitio" + +#: lib/towerops_web/live/maintenance_live/form.ex:49 +#, elixir-autogen, elixir-format +msgid "Edit Maintenance Window" +msgstr "" + +#: lib/towerops_web/live/maintenance_live/form.html.heex:119 +#, elixir-autogen, elixir-format +msgid "Ends At" +msgstr "" + +#: lib/towerops_web/live/user_settings_live.html.heex:1624 +#, elixir-autogen, elixir-format, fuzzy +msgid "Enter the 6-digit code from your app to verify setup" +msgstr "Ingresa el código de 6 dígitos de tu app para verificar" + +#: lib/towerops_web/live/org/settings_live.html.heex:1589 +#, elixir-autogen, elixir-format, fuzzy +msgid "Enter your Sonar API token" +msgstr "Ingresa tu token de API de NetBox" + +#: lib/towerops_web/live/org/settings_live.html.heex:1697 +#, elixir-autogen, elixir-format, fuzzy +msgid "Enter your Splynx API key" +msgstr "Ingresa tu token de API de NetBox" + +#: lib/towerops_web/live/org/settings_live.html.heex:1710 +#, elixir-autogen, elixir-format, fuzzy +msgid "Enter your Splynx API secret" +msgstr "Ingresa tu token de API de NetBox" + +#: lib/towerops_web/live/org/settings_live.html.heex:815 +#, elixir-autogen, elixir-format +msgid "Executive" +msgstr "" + +#: lib/towerops_web/live/device_live/index.html.heex:56 +#, elixir-autogen, elixir-format, fuzzy +msgid "Existing" +msgstr "Dispositivos existentes" + +#: lib/towerops_web/live/onboarding_live.html.heex:363 +#, elixir-autogen, elixir-format +msgid "Failed to create agent token. You can create one later in Settings → Agents." +msgstr "" + +#: lib/towerops_web/live/device_live/index.html.heex:175 +#, elixir-autogen, elixir-format +msgid "Filter by name or IP..." +msgstr "" + +#: lib/towerops_web/live/site_live/show.html.heex:48 +#, elixir-autogen, elixir-format +msgid "Force Rediscover All" +msgstr "" + +#: lib/towerops_web/controllers/user_registration_html/new.html.heex:17 +#, elixir-autogen, elixir-format +msgid "Free tier includes:" +msgstr "" + +#: lib/towerops_web/live/user_settings_live.html.heex:1606 +#, elixir-autogen, elixir-format +msgid "Install an authenticator app (Google Authenticator, Authy, 1Password, etc.)" +msgstr "" + +#: lib/towerops_web/live/onboarding_live.html.heex:241 +#: lib/towerops_web/live/onboarding_live.html.heex:255 +#: lib/towerops_web/live/org/integrations_live.html.heex:219 +#: lib/towerops_web/live/org/settings_live.html.heex:1570 +#: lib/towerops_web/live/org/settings_live.html.heex:1677 +#, elixir-autogen, elixir-format +msgid "Instance URL" +msgstr "" + +#: lib/towerops_web/live/onboarding_live.ex:144 +#, elixir-autogen, elixir-format, fuzzy +msgid "Integration saved" +msgstr "Integraciones" + +#: lib/towerops_web/live/site_live/index.html.heex:66 +#, elixir-autogen, elixir-format, fuzzy +msgid "Last Check" +msgstr "Última verificación" + +#: lib/towerops_web/live/site_live/show.html.heex:388 +#, elixir-autogen, elixir-format, fuzzy +msgid "Latency" +msgstr "Latencia P95" + +#: lib/towerops_web/live/device_live/show.html.heex:608 +#: lib/towerops_web/live/device_live/show.html.heex:644 +#: lib/towerops_web/live/site_live/show.html.heex:501 +#, elixir-autogen, elixir-format +msgid "Loading chart..." +msgstr "" + +#: lib/towerops_web/components/layouts.ex:493 +#, elixir-autogen, elixir-format +msgid "Log out" +msgstr "" + +#: lib/towerops_web/components/layouts.ex:287 +#: lib/towerops_web/components/layouts.ex:569 +#, elixir-autogen, elixir-format +msgid "Maintenance" +msgstr "" + +#: lib/towerops_web/live/maintenance_live/index.ex:13 +#: lib/towerops_web/live/maintenance_live/index.html.heex:7 +#, elixir-autogen, elixir-format +msgid "Maintenance Windows" +msgstr "" + +#: lib/towerops_web/live/maintenance_live/form.ex:98 +#, elixir-autogen, elixir-format +msgid "Maintenance window created" +msgstr "" + +#: lib/towerops_web/live/maintenance_live/show.ex:25 +#, elixir-autogen, elixir-format +msgid "Maintenance window deleted" +msgstr "" + +#: lib/towerops_web/live/maintenance_live/form.ex:111 +#, elixir-autogen, elixir-format +msgid "Maintenance window updated" +msgstr "" + +#: lib/towerops_web/controllers/user_registration_html/new.html.heex:21 +#, elixir-autogen, elixir-format +msgid "Monitor up to 10 devices" +msgstr "" + +#: lib/towerops_web/controllers/user_session_html/new.html.heex:12 +#, elixir-autogen, elixir-format +msgid "Monitor your entire network from a single dashboard." +msgstr "" + +#: lib/towerops_web/components/layouts.ex:316 +#, elixir-autogen, elixir-format, fuzzy +msgid "More" +msgstr "o" + +#: lib/towerops_web/components/layouts.ex:608 +#, elixir-autogen, elixir-format, fuzzy +msgid "My Settings" +msgstr "Configuración de sincronización" + +#: lib/towerops_web/components/layouts.ex:550 +#, elixir-autogen, elixir-format, fuzzy +msgid "Navigation" +msgstr "Paginación" + +#: lib/towerops_web/live/dashboard_live.html.heex:706 +#, elixir-autogen, elixir-format, fuzzy +msgid "Network Pulse" +msgstr "Sitios de red" + +#: lib/towerops_web/live/maintenance_live/form.ex:30 +#, elixir-autogen, elixir-format +msgid "New Maintenance Window" +msgstr "" + +#: lib/towerops_web/live/maintenance_live/index.html.heex:13 +#, elixir-autogen, elixir-format +msgid "New Window" +msgstr "" + +#: lib/towerops_web/live/maintenance_live/show.html.heex:111 +#: lib/towerops_web/live/maintenance_live/show.html.heex:128 +#, elixir-autogen, elixir-format +msgid "No" +msgstr "" + +#: lib/towerops_web/controllers/user_registration_html/new.html.heex:33 +#, elixir-autogen, elixir-format +msgid "No credit card required" +msgstr "" + +#: lib/towerops_web/live/maintenance_live/index.html.heex:73 +#, elixir-autogen, elixir-format +msgid "No maintenance windows" +msgstr "" + +#: lib/towerops_web/live/maintenance_live/show.html.heex:109 +#, elixir-autogen, elixir-format +msgid "No rule specified" +msgstr "" + +#: lib/towerops_web/live/alert_live/index.html.heex:120 +#, elixir-autogen, elixir-format, fuzzy +msgid "Oldest" +msgstr "Más antiguos primero" + +#: lib/towerops_web/live/org/integrations_live.ex:269 +#, elixir-autogen, elixir-format +msgid "Only one %{category} integration can be active. Disable %{provider} first." +msgstr "" + +#: lib/towerops_web/live/org/integrations_live.ex:201 +#, elixir-autogen, elixir-format +msgid "Only one %{category} integration can be active. You already have %{provider} configured. Disable it first to switch." +msgstr "" + +#: lib/towerops_web/live/maintenance_live/form.html.heex:41 +#, elixir-autogen, elixir-format +msgid "Optional description of the maintenance work" +msgstr "" + +#: lib/towerops_web/live/onboarding_live.html.heex:197 +#, elixir-autogen, elixir-format +msgid "Optional. Sync subscriber data for outage impact analysis and inventory reconciliation." +msgstr "" + +#: lib/towerops_web/live/maintenance_live/form.html.heex:60 +#, elixir-autogen, elixir-format +msgid "Org-wide" +msgstr "" + +#: lib/towerops_web/components/layouts.ex:540 +#, elixir-autogen, elixir-format, fuzzy +msgid "Organization" +msgstr "Organizaciones" + +#: lib/towerops_web/live/maintenance_live/index.html.heex:61 +#, elixir-autogen, elixir-format +msgid "Past" +msgstr "" + +#: lib/towerops_web/controllers/user_registration_html/new.html.heex:29 +#, elixir-autogen, elixir-format +msgid "Performance charts & history" +msgstr "" + +#: lib/towerops_web/live/org/settings_live.ex:475 +#, elixir-autogen, elixir-format, fuzzy +msgid "Please enter your NetBox API token first" +msgstr "Ingresa tu URL de NetBox primero" + +#: lib/towerops_web/live/org/settings_live.ex:484 +#, elixir-autogen, elixir-format, fuzzy +msgid "Please enter your Sonar API token first" +msgstr "Ingresa una clave de API primero" + +#: lib/towerops_web/live/org/settings_live.ex:483 +#, elixir-autogen, elixir-format, fuzzy +msgid "Please enter your Sonar instance URL first" +msgstr "Ingresa tu URL de NetBox primero" + +#: lib/towerops_web/live/org/settings_live.ex:493 +#, elixir-autogen, elixir-format, fuzzy +msgid "Please enter your Splynx API key first" +msgstr "Ingresa una clave de API primero" + +#: lib/towerops_web/live/org/settings_live.ex:494 +#, elixir-autogen, elixir-format +msgid "Please enter your Splynx API secret first" +msgstr "" + +#: lib/towerops_web/live/org/settings_live.ex:492 +#, elixir-autogen, elixir-format, fuzzy +msgid "Please enter your Splynx instance URL first" +msgstr "Ingresa tu URL de NetBox primero" + +#: lib/towerops_web/live/org/integrations_live.ex:219 +#, elixir-autogen, elixir-format +msgid "Please fill in all required fields first" +msgstr "" + +#: lib/towerops_web/controllers/user_registration_html/new.html.heex:25 +#, elixir-autogen, elixir-format +msgid "Real-time alerts" +msgstr "" + +#: lib/towerops_web/live/maintenance_live/form.html.heex:144 +#, elixir-autogen, elixir-format +msgid "Recurrence Rule" +msgstr "" + +#: lib/towerops_web/live/maintenance_live/form.html.heex:136 +#: lib/towerops_web/live/maintenance_live/show.html.heex:105 +#, elixir-autogen, elixir-format +msgid "Recurring" +msgstr "" + +#: lib/towerops_web/live/alert_live/index.html.heex:148 +#, elixir-autogen, elixir-format +msgid "Resolve Selected" +msgstr "" + +#: lib/towerops_web/live/alert_live/index.html.heex:147 +#, elixir-autogen, elixir-format, fuzzy +msgid "Resolve selected alerts?" +msgstr "¿Resolver esta alerta?" + +#: lib/towerops_web/live/alert_live/index.html.heex:84 +#: lib/towerops_web/live/alert_live/index.html.heex:361 +#: lib/towerops_web/live/alert_live/index.html.heex:438 +#, elixir-autogen, elixir-format, fuzzy +msgid "Resolved" +msgstr "Eliminar" + +#: lib/towerops_web/live/device_live/show.html.heex:381 +#, elixir-autogen, elixir-format +msgid "Resolved IP" +msgstr "" + +#: lib/towerops_web/live/onboarding_live.ex:67 +#, elixir-autogen, elixir-format, fuzzy +msgid "SNMP configuration saved" +msgstr "Configuración de SNMP" + +#: lib/towerops_web/live/onboarding_live.html.heex:130 +#: lib/towerops_web/live/onboarding_live.html.heex:287 +#, elixir-autogen, elixir-format +msgid "Save & Continue" +msgstr "" + +#: lib/towerops_web/live/onboarding_live.html.heex:321 +#, elixir-autogen, elixir-format +msgid "Save this token — it won't be shown again." +msgstr "" + +#: lib/towerops_web/live/user_settings_live.html.heex:1616 +#, elixir-autogen, elixir-format +msgid "Scan the QR code below with your authenticator app" +msgstr "" + +#: lib/towerops_web/live/maintenance_live/index.html.heex:76 +#, elixir-autogen, elixir-format +msgid "Schedule maintenance to suppress alerts during planned work." +msgstr "" + +#: lib/towerops_web/live/maintenance_live/form.html.heex:47 +#: lib/towerops_web/live/maintenance_live/index.html.heex:89 +#: lib/towerops_web/live/maintenance_live/show.html.heex:84 +#, elixir-autogen, elixir-format +msgid "Scope" +msgstr "" + +#: lib/towerops_web/components/layouts.ex:398 +#, elixir-autogen, elixir-format +msgid "Search" +msgstr "" + +#: lib/towerops_web/live/maintenance_live/form.html.heex:101 +#, elixir-autogen, elixir-format +msgid "Select a device..." +msgstr "" + +#: lib/towerops_web/live/maintenance_live/form.html.heex:92 +#, elixir-autogen, elixir-format +msgid "Select a site..." +msgstr "" + +#: lib/towerops_web/live/alert_live/index.html.heex:198 +#, elixir-autogen, elixir-format, fuzzy +msgid "Select all" +msgstr "Seleccionar todo" + +#: lib/towerops_web/live/onboarding_live.html.heex:65 +#, elixir-autogen, elixir-format +msgid "Set organization-wide SNMP defaults. Can be overridden per-site or per-device." +msgstr "" + +#: lib/towerops_web/live/onboarding_live.ex:30 +#, elixir-autogen, elixir-format +msgid "Setup" +msgstr "" + +#: lib/towerops_web/live/onboarding_live.ex:211 +#, elixir-autogen, elixir-format +msgid "Setup complete" +msgstr "" + +#: lib/towerops_web/live/site_live/show.html.heex:484 +#, elixir-autogen, elixir-format +msgid "Site Latency — Last 24 Hours" +msgstr "" + +#: lib/towerops_web/live/onboarding_live.ex:101 +#, elixir-autogen, elixir-format +msgid "Site created" +msgstr "" + +#: lib/towerops_web/live/onboarding_live.html.heex:140 +#, elixir-autogen, elixir-format +msgid "Sites represent physical locations — tower sites, POPs, data centers, etc." +msgstr "" + +#: lib/towerops_web/live/onboarding_live.html.heex:124 +#: lib/towerops_web/live/onboarding_live.html.heex:181 +#: lib/towerops_web/live/onboarding_live.html.heex:281 +#, elixir-autogen, elixir-format +msgid "Skip" +msgstr "" + +#: lib/towerops_web/live/onboarding_live.html.heex:301 +#, elixir-autogen, elixir-format +msgid "Skip — I'll set this up later" +msgstr "" + +#: lib/towerops_web/live/alert_live/index.html.heex:97 +#, elixir-autogen, elixir-format, fuzzy +msgid "Sort" +msgstr "o" + +#: lib/towerops_web/controllers/user_registration_html/new.html.heex:12 +#, elixir-autogen, elixir-format +msgid "Start monitoring your network in minutes." +msgstr "" + +#: lib/towerops_web/live/maintenance_live/form.html.heex:112 +#, elixir-autogen, elixir-format +msgid "Starts At" +msgstr "" + +#: lib/towerops_web/live/dashboard_live.html.heex:508 +#: lib/towerops_web/live/device_live/index.html.heex:302 +#: lib/towerops_web/live/site_live/show.html.heex:384 +#, elixir-autogen, elixir-format +msgid "Subs" +msgstr "" + +#: lib/towerops_web/live/maintenance_live/show.html.heex:119 +#, elixir-autogen, elixir-format +msgid "Suppress Alerts" +msgstr "" + +#: lib/towerops_web/live/maintenance_live/form.html.heex:129 +#, elixir-autogen, elixir-format +msgid "Suppress alerts during this window" +msgstr "" + +#: lib/towerops_web/components/layouts.ex:239 +#, elixir-autogen, elixir-format, fuzzy +msgid "Switch Organization" +msgstr "Organización de sitios" + +#: lib/towerops_web/live/onboarding_live.html.heex:353 +#, elixir-autogen, elixir-format, fuzzy +msgid "Systemd" +msgstr "OIDs del sistema" + +#: lib/towerops_web/live/org/settings_live.html.heex:821 +#, elixir-autogen, elixir-format +msgid "Technician" +msgstr "" + +#: lib/towerops_web/live/onboarding_live.html.heex:310 +#, elixir-autogen, elixir-format +msgid "The TowerOps agent polls your network devices via SNMP. Deploy it on a host with network access to your infrastructure." +msgstr "" + +#: lib/towerops_web/live/maintenance_live/show.html.heex:28 +#, elixir-autogen, elixir-format +msgid "This maintenance window is currently in effect. Alerts are being suppressed." +msgstr "" + +#: lib/towerops_web/live/maintenance_live/index.html.heex:92 +#: lib/towerops_web/live/maintenance_live/show.html.heex:92 +#, elixir-autogen, elixir-format +msgid "Time Range" +msgstr "" + +#: lib/towerops_web/live/alert_live/index.html.heex:397 +#, elixir-autogen, elixir-format, fuzzy +msgid "Timeline" +msgstr "Zona horaria" + +#: lib/towerops_web/components/layouts.ex:576 +#, elixir-autogen, elixir-format +msgid "Tools" +msgstr "" + +#: lib/towerops_web/live/admin/dashboard_live.html.heex:68 +#, elixir-autogen, elixir-format +msgid "Tracked errors and exceptions" +msgstr "" + +#: lib/towerops_web/live/alert_live/index.html.heex:404 +#, elixir-autogen, elixir-format +msgid "Triggered" +msgstr "" + +#: lib/towerops_web/live/maintenance_live/show.ex:29 +#, elixir-autogen, elixir-format +msgid "Unable to delete maintenance window" +msgstr "" + +#: lib/towerops_web/live/alert_live/index.html.heex:30 +#, elixir-autogen, elixir-format +msgid "Unresolved" +msgstr "" + +#: lib/towerops_web/live/maintenance_live/index.html.heex:50 +#, elixir-autogen, elixir-format +msgid "Upcoming" +msgstr "" + +#: lib/towerops_web/components/layouts.ex:468 +#, elixir-autogen, elixir-format +msgid "User Settings" +msgstr "" + +#: lib/towerops_web/live/site_live/show.html.heex:63 +#, elixir-autogen, elixir-format +msgid "View on Map" +msgstr "" + +#: lib/towerops_web/components/layouts.ex:484 +#, elixir-autogen, elixir-format +msgid "What's New" +msgstr "" + +#: lib/towerops_web/live/org/integrations_live.html.heex:166 +#, elixir-autogen, elixir-format +msgid "Which billing platform does your organization use?" +msgstr "" + +#: lib/towerops_web/live/maintenance_live/show.html.heex:109 +#: lib/towerops_web/live/maintenance_live/show.html.heex:124 +#, elixir-autogen, elixir-format +msgid "Yes" +msgstr "" + +#: lib/towerops_web/controllers/user_session_controller.ex:129 +#, elixir-autogen, elixir-format, fuzzy +msgid "You don't have access to this organization." +msgstr "No tienes acceso a este dispositivo" + +#: lib/towerops_web/live/org/settings_live.html.heex:1565 +#, elixir-autogen, elixir-format +msgid "Your Sonar instance URL and API token from the Sonar admin panel." +msgstr "" + +#: lib/towerops_web/live/org/settings_live.html.heex:1670 +#, elixir-autogen, elixir-format +msgid "Your Splynx instance URL, API key, and API secret. Find these in Splynx under Administration → API Keys." +msgstr "" + +#: lib/towerops_web/live/site_live/show.html.heex:103 +#, elixir-autogen, elixir-format, fuzzy +msgid "down" +msgstr "Caído" + +#: lib/towerops_web/live/maintenance_live/form.html.heex:145 +#, elixir-autogen, elixir-format +msgid "e.g., FREQ=WEEKLY;BYDAY=SU" +msgstr "" + +#: lib/towerops_web/live/maintenance_live/form.html.heex:32 +#, elixir-autogen, elixir-format +msgid "e.g., Tower firmware upgrade" +msgstr "" + +#: lib/towerops_web/live/alert_live/index.html.heex:142 +#, elixir-autogen, elixir-format, fuzzy +msgid "selected" +msgstr "Eliminar" + +#: lib/towerops_web/controllers/user_session_html/new.html.heex:22 +#, elixir-autogen, elixir-format +msgid "— WISP Network Operator" +msgstr "" diff --git a/priv/gettext/es/LC_MESSAGES/equipment.po b/priv/gettext/es/LC_MESSAGES/equipment.po index fe7a2689..1490ccb4 100644 --- a/priv/gettext/es/LC_MESSAGES/equipment.po +++ b/priv/gettext/es/LC_MESSAGES/equipment.po @@ -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"