Files
TREK/shared/src/i18n/it/admin.ts
T
jubnl b82962f95b Feat/plugin instance actions (#2209)
* feat(shared): scope plugin action descriptors

* feat(plugin-sdk): instance-scoped settings actions

* feat(plugins): run instance-scoped actions from the admin settings dialog

* feat(admin): instance-scoped plugin actions in the settings dialog

* fix(plugins): surface instance actions without instance fields and harden the action gate

* docs(plugin-sdk): note that hosts before 4.2.0 ignore action scope

* fix(admin): open the dialog for instance actions, explain inactive 404s, guard the save window

* docs(wiki): plugin pages for instance actions and the admin panel changes
2026-09-02 23:06:03 +02:00

730 lines
50 KiB
TypeScript
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
import type { TranslationStrings } from '../types';
const admin: TranslationStrings = {
'admin.notifications.title': 'Notifiche',
'admin.notifications.hint': 'Scegli un canale di notifica. Solo uno può essere attivo alla volta.',
'admin.notifications.none': 'Disattivato',
'admin.notifications.email': 'E-mail (SMTP)',
'admin.notifications.webhook': 'Webhook',
'admin.notifications.save': 'Salva impostazioni notifiche',
'admin.notifications.saved': 'Impostazioni notifiche salvate',
'admin.notifications.testWebhook': 'Invia webhook di test',
'admin.notifications.testWebhookSuccess': 'Webhook di test inviato con successo',
'admin.notifications.testWebhookFailed': 'Invio webhook di test fallito',
'admin.smtp.title': 'Email e notifiche',
'admin.smtp.hint': "Configurazione SMTP per l'invio delle notifiche via e-mail.",
'admin.smtp.testButton': 'Invia email di prova',
'admin.webhook.hint': 'Invia notifiche a un webhook esterno (Discord, Slack, ecc.).',
'admin.smtp.testSuccess': 'Email di prova inviata con successo',
'admin.smtp.testFailed': 'Invio email di prova fallito',
'admin.title': 'Amministrazione',
'admin.subtitle': 'Gestione utenti e impostazioni di sistema',
'admin.tabs.users': 'Utenti',
'admin.tabs.categories': 'Categorie',
'admin.tabs.backup': 'Backup',
'admin.stats.users': 'Utenti',
'admin.stats.trips': 'Viaggi',
'admin.stats.places': 'Luoghi',
'admin.stats.photos': 'Foto',
'admin.stats.files': 'File',
'admin.table.user': 'Utente',
'admin.table.email': 'Email',
'admin.table.role': 'Ruolo',
'admin.table.created': 'Creato',
'admin.table.lastLogin': 'Ultimo Accesso',
'admin.table.actions': 'Azioni',
'admin.you': '(Tu)',
'admin.editUser': 'Modifica Utente',
'admin.newPassword': 'Nuova Password',
'admin.newPasswordHint': 'Lascia vuoto per mantenere la password attuale',
'admin.deleteUser': 'Eliminare l\'utente "{name}"? Tutti i viaggi verranno eliminati in modo permanente.',
'admin.deleteUserTitle': 'Elimina utente',
'admin.newPasswordPlaceholder': 'Inserisci nuova password…',
'admin.toast.loadError': 'Impossibile caricare i dati di amministrazione',
'admin.toast.userUpdated': 'Utente aggiornato',
'admin.toast.updateError': 'Impossibile aggiornare',
'admin.toast.userDeleted': 'Utente eliminato',
'admin.toast.deleteError': 'Impossibile eliminare',
'admin.toast.cannotDeleteSelf': 'Impossibile eliminare il proprio account',
'admin.toast.userCreated': 'Utente creato',
'admin.toast.createError': "Impossibile creare l'utente",
'admin.toast.fieldsRequired': 'Username, email e password sono obbligatori',
'admin.createUser': 'Crea Utente',
'admin.invite.title': 'Link di Invito',
'admin.invite.subtitle': 'Crea link di registrazione monouso',
'admin.invite.create': 'Crea Link',
'admin.invite.createAndCopy': 'Crea & Copia',
'admin.invite.empty': 'Nessun link di invito ancora creato',
'admin.invite.maxUses': 'Usi Max.',
'admin.invite.expiry': 'Scade tra',
'admin.invite.uses': 'usato',
'admin.invite.expiresAt': 'scade',
'admin.invite.createdBy': 'da',
'admin.invite.active': 'Attivo',
'admin.invite.expired': 'Scaduto',
'admin.invite.usedUp': 'Esaurito',
'admin.invite.copied': 'Link di invito copiato negli appunti',
'admin.invite.copyLink': 'Copia link',
'admin.invite.deleted': 'Link di invito eliminato',
'admin.invite.createError': 'Impossibile creare il link di invito',
'admin.invite.deleteError': 'Impossibile eliminare il link di invito',
'admin.tabs.settings': 'Impostazioni',
'admin.allowRegistration': 'Consenti Registrazione',
'admin.allowRegistrationHint': 'I nuovi utenti possono registrarsi autonomamente',
'admin.authMethods': 'Authentication Methods',
'admin.passwordLogin': 'Password Login',
'admin.passwordLoginHint': 'Allow users to sign in with email and password',
'admin.passwordRegistration': 'Password Registration',
'admin.passwordRegistrationHint': 'Allow new users to register with email and password',
'admin.oidcLogin': 'SSO Login',
'admin.oidcLoginHint': 'Allow users to sign in with SSO',
'admin.oidcRegistration': 'SSO Auto-Provisioning',
'admin.oidcRegistrationHint': 'Automatically create accounts for new SSO users',
'admin.envOverrideHint':
'Password login settings are controlled by the OIDC_ONLY environment variable and cannot be changed here.',
'admin.lockoutWarning': 'At least one login method must remain enabled',
'admin.requireMfa': 'Richiedi autenticazione a due fattori (2FA)',
'admin.requireMfaHint':
"Gli utenti senza 2FA devono completare la configurazione in Impostazioni prima di usare l'app.",
'admin.apiKeys': 'Chiavi API',
'admin.apiKeysHint': 'Opzionale. Abilita dati estesi per i luoghi come foto e meteo.',
'admin.mapsKey': 'Chiave API Google Maps',
'admin.mapsKeyHint': 'Richiesta per la ricerca dei luoghi. Ottienila su console.cloud.google.com',
'admin.mapsKeyHintLong':
'Senza una chiave API, OpenStreetMap viene utilizzato per la ricerca dei luoghi. Con una chiave API di Google, è possibile caricare anche foto, valutazioni e orari di apertura. Ottienine una su console.cloud.google.com.',
'admin.recommended': 'Consigliato',
'admin.weatherKey': 'Chiave API OpenWeatherMap',
'admin.weatherKeyHint': 'Per i dati meteo. Gratuita su openweathermap.org',
'admin.unsplashKey': 'Chiave API Unsplash',
'admin.unsplashKeyHint': 'Per la ricerca di immagini. Gratuita su unsplash.com/developers',
'admin.validateKey': 'Testa',
'admin.keyValid': 'Connessa',
'admin.keyInvalid': 'Non valida',
'admin.keySaved': 'Chiavi API salvate',
'admin.oidcTitle': 'Single Sign-On (OIDC)',
'admin.oidcSubtitle': "Consenti l'accesso tramite provider esterni come Google, Apple, Authentik o Keycloak.",
'admin.oidcDisplayName': 'Nome Visualizzato',
'admin.oidcIssuer': 'URL Emittente',
'admin.oidcIssuerHint': "L'URL dell'Emittente OpenID Connect del provider. es. https://accounts.google.com",
'admin.oidcSaved': 'Configurazione OIDC salvata',
'admin.oidcOnlyMode': 'Disabilita autenticazione con password',
'admin.oidcOnlyModeHint':
"Se abilitato, è consentito solo l'accesso SSO. L'accesso basato su password e la registrazione sono bloccati.",
'admin.fileTypes': 'Tipi di File Consentiti',
'admin.fileTypesHint': 'Configura quali tipi di file gli utenti possono caricare.',
'admin.fileTypesFormat': 'Estensioni separate da virgola (es. jpg,png,pdf,doc). Usa * per consentire tutti i tipi.',
'admin.fileTypesSaved': 'Impostazioni dei tipi di file salvate',
'admin.placesPhotos.title': 'Foto dei luoghi',
'admin.placesPhotos.subtitle':
"Recupera le foto dall'API Google Places. Disabilita per risparmiare la quota API. Le foto di Wikimedia non sono interessate.",
'admin.placesAutocomplete.title': 'Completamento automatico dei luoghi',
'admin.placesAutocomplete.subtitle':
"Utilizza l'API Google Places per i suggerimenti di ricerca. Disabilita per risparmiare la quota API.",
'admin.placesDetails.title': 'Dettagli del luogo',
'admin.placesDetails.subtitle':
"Recupera informazioni dettagliate sul luogo (orari, valutazione, sito web) dall'API Google Places. Disabilita per risparmiare la quota API.",
'admin.placesEnrich.title': 'Arricchimento luoghi',
'admin.placesEnrich.subtitle':
'Mostra immagini e una descrizione mentre aggiungi un luogo. Wikipedia e OpenStreetMap sono sempre usati; Google si aggiunge se Foto luoghi o Dettagli luoghi sono attivi.',
'admin.bagTracking.title': 'Tracciamento valigia',
'admin.bagTracking.subtitle': "Abilita il peso e l'assegnazione della valigia per gli elementi della lista valigia",
'admin.collab.chat.title': 'Chat',
'admin.collab.chat.subtitle': 'Messaggistica in tempo reale per la collaborazione',
'admin.collab.notes.title': 'Note',
'admin.collab.notes.subtitle': 'Note e documenti condivisi',
'admin.collab.polls.title': 'Sondaggi',
'admin.collab.polls.subtitle': 'Sondaggi e votazioni di gruppo',
'admin.collab.whatsnext.title': 'Prossimi passi',
'admin.collab.whatsnext.subtitle': 'Suggerimenti attività e prossimi passi',
'admin.tabs.config': 'Personalizzazione',
'admin.tabs.defaults': 'Impostazioni predefinite',
'admin.defaultSettings.title': 'Impostazioni predefinite utente',
'admin.defaultSettings.description':
"Imposta i valori predefiniti per l'intera istanza. Gli utenti che non hanno modificato un'impostazione vedranno questi valori. Le loro modifiche hanno sempre la priorità.",
'admin.defaultSettings.saved': 'Predefinito salvato',
'admin.defaultSettings.reset': 'Ripristina il predefinito integrato',
'admin.defaultSettings.resetToBuiltIn': 'ripristina',
'admin.tabs.templates': 'Modelli lista valigia',
'admin.packingTemplates.title': 'Modelli lista valigia',
'admin.packingTemplates.subtitle': 'Crea liste valigia riutilizzabili per i tuoi viaggi',
'admin.packingTemplates.create': 'Nuovo modello',
'admin.packingTemplates.namePlaceholder': 'Nome modello (es. Vacanza al mare)',
'admin.packingTemplates.empty': 'Ancora nessun modello creato',
'admin.packingTemplates.items': 'elementi',
'admin.packingTemplates.categories': 'categorie',
'admin.packingTemplates.itemName': 'Nome elemento',
'admin.packingTemplates.itemCategory': 'Categoria',
'admin.packingTemplates.categoryName': 'Nome categoria (es. Abbigliamento)',
'admin.packingTemplates.addCategory': 'Aggiungi categoria',
'admin.packingTemplates.created': 'Modello creato',
'admin.packingTemplates.deleted': 'Modello eliminato',
'admin.packingTemplates.loadError': 'Impossibile caricare i modelli',
'admin.packingTemplates.createError': 'Impossibile creare il modello',
'admin.packingTemplates.deleteError': 'Impossibile eliminare il modello',
'admin.packingTemplates.deleteCategoryError': 'Impossibile eliminare la categoria',
'admin.packingTemplates.deleteItemError': 'Impossibile eliminare la voce',
'admin.packingTemplates.saveError': 'Impossibile salvare',
'admin.tabs.addons': 'Moduli',
'admin.tabs.plugins': 'Plugin',
'admin.tabs.storage': 'Archiviazione',
'admin.plugins.rescan': 'Riscansiona',
'admin.plugins.rescanned': 'Cartella dei plugin riscansionata',
'admin.plugins.upload': 'Carica plugin',
'admin.plugins.dropToUpload': 'Trascina qui uno .zip del plugin per installarlo',
'admin.plugins.uploaded': 'Plugin “{name}” caricato — attivalo per eseguirlo',
'admin.plugins.sideloaded': 'Caricato manualmente',
'admin.plugins.devLinkBadge': 'Dev-Link',
'admin.plugins.devLinkHint':
'Caricato da una cartella di build locale e ricaricato a caldo con dati reali — solo per lo sviluppo',
'admin.plugins.devLinkTitle': 'Collega un plugin locale',
'admin.plugins.devLinkPathPlaceholder': '/absolute/path/to/your/plugin',
'admin.plugins.devLinkButton': 'Collega',
'admin.plugins.devLinkLinked': '{id} collegato — attivalo per eseguirlo',
'admin.plugins.sideloadedHint': 'Caricato manualmente — non dal registro, non firmato e non verificato',
'admin.plugins.browse': 'Sfoglia i plugin',
'admin.plugins.installed': 'Installato',
'admin.plugins.install': 'Installa',
'admin.plugins.registryEmpty': 'Nessun plugin ancora disponibile nel registro.',
'admin.plugins.actionError': 'Azione non riuscita',
'admin.plugins.activate': 'Attiva',
'admin.plugins.activated': 'Plugin attivato',
'admin.plugins.deactivate': 'Disattiva',
'admin.plugins.deactivated': 'Plugin disattivato',
'admin.plugins.viewErrors': 'Visualizza log errori',
'admin.plugins.errorLog': 'Log errori',
'admin.plugins.allowedHosts': 'Host consentiti',
'admin.plugins.allowedHosts.hint':
'Questo plugin comunica con un servizio che solo tu puoi indicare (un server self-hosted). Aggiungi gli host che può raggiungere — non ne raggiungerà altri.',
'admin.plugins.allowedHosts.none': 'Nessun host aggiunto.',
'admin.plugins.allowedHosts.unsupported':
'Questo plugin non usa host forniti dall’operatore. I suoi host consentiti sono fissati nel manifest.',
'admin.plugins.allowedHosts.restartNote': 'Il salvataggio riavvia il plugin perché prenda la nuova lista.',
'admin.plugins.allowedHosts.add': 'Aggiungi host consentito',
'admin.plugins.allowedHosts.count': '{n} host consentiti',
'admin.plugins.operatorEgressPill': '+ host aggiunti da te',
'admin.plugins.operatorEgressHint':
'Questo plugin comunica con un servizio che solo tu puoi indicare (un server self-hosted). Dopo l’installazione, aggiungi gli host che può raggiungere in ⋯ → Host consentiti. Non ne raggiungerà altri.',
'admin.plugins.noErrors': 'Nessun errore registrato.',
'admin.plugins.uninstalled': 'Plugin disinstallato',
'admin.plugins.uninstallTitle': 'Disinstallare il plugin?',
'admin.plugins.uninstallBody':
'Il plugin verrà arrestato, il suo codice rimosso e tutti i suoi dati eliminati. Questa operazione non può essere annullata.',
'admin.plugins.status.starting': 'Avvio in corso…',
'admin.plugins.type.widget': 'Widget',
'admin.plugins.type.page': 'Pagina',
'admin.plugins.type.integration': 'Integrazione',
'admin.plugins.type.trip-page': 'Pagina viaggio',
'admin.plugins.reviewed': 'Verificato',
'admin.plugins.unreviewed': 'Non verificato',
'admin.plugins.updated': 'Plugin aggiornato',
'admin.plugins.updateTo': 'Aggiorna → v{version}',
'admin.plugins.enabledToggle': 'Abilita plugin',
'plugins.notFound': 'Plugin non trovato',
'plugins.frameLoadFailed': 'Impossibile caricare questo plugin.',
'admin.plugins.title': 'Plugin',
'admin.plugins.subtitle': 'Installa e gestisci plugin di terze parti sulla tua istanza.',
'admin.plugins.disabledTitle': 'I plugin sono disabilitati',
'admin.plugins.disabledBody':
'Il runtime dei plugin è disattivato (TREK_PLUGINS_ENABLED). Nessun plugin può essere eseguito finché un amministratore non lo abilita nella configurazione del server.',
'admin.plugins.empty': 'Nessun plugin ancora installato.',
'admin.plugins.loadError': 'Impossibile caricare i plugin.',
'admin.plugins.scaffoldNote':
"L'installazione e l'attivazione dei plugin arriveranno in un aggiornamento futuro. Al momento questo pannello elenca solo i plugin installati.",
'admin.plugins.status.active': 'Attivo',
'admin.plugins.status.inactive': 'Inattivo',
'admin.plugins.status.disabled': 'Disabilitato',
'admin.plugins.status.error': 'Errore',
'admin.plugins.status.incompatible': 'Incompatibile',
'admin.plugins.details': 'Dettagli',
'admin.plugins.detailError': 'Impossibile caricare i dettagli del plugin.',
'admin.plugins.permissionsTitle': 'Permessi',
'admin.plugins.noPermissions': 'Questo plugin non richiede permessi speciali.',
'admin.plugins.egressNote': 'Può connettersi a: {hosts}',
'admin.plugins.setupTitle': 'Configurazione',
'admin.plugins.noSetup': 'Funziona subito — niente da configurare.',
'admin.plugins.scope.instance': 'A livello di istanza',
'admin.plugins.scope.user': 'Per utente',
'admin.plugins.fieldRequired': 'Obbligatorio',
'admin.plugins.sourceRepo': 'Repository sorgente',
'admin.plugins.reportIssue': 'Segnala un problema',
'admin.plugins.homepage': 'Homepage',
'admin.plugins.requiresTrek': 'Richiede TREK {version}+',
'admin.plugins.reviewedOn': 'Verificato il {date}',
'admin.plugins.perm.db:own': 'Salvare i propri dati in un database isolato',
'admin.plugins.perm.db:read:trips': "Leggere i viaggi a cui l'utente attivo ha accesso",
'admin.plugins.perm.db:read:users': 'Leggere le informazioni di base del profilo (nome, avatar — mai le credenziali)',
'admin.plugins.perm.db:read:costs': "Leggere le spese (voci di budget) a cui l'utente attivo ha accesso",
'admin.plugins.perm.db:read:packing': "Leggere le liste dei bagagli dei viaggi a cui l'utente attivo ha accesso",
'admin.plugins.perm.db:write:packing':
"Creare, modificare ed eliminare voci della lista bagagli sui viaggi che l'utente attivo può modificare",
'admin.plugins.perm.weather:read': "Leggere le previsioni meteo in cache dell'host (per coordinate)",
'admin.plugins.perm.db:read:categories': "Leggere l'elenco globale delle categorie di luoghi",
'admin.plugins.perm.db:read:tags': "Leggere i tag dell'utente attivo",
'admin.plugins.perm.db:write:tags': "Creare, modificare ed eliminare i tag dell'utente attivo",
'admin.plugins.perm.db:read:todos': "Leggere le attività dei viaggi a cui l'utente attivo ha accesso",
'admin.plugins.perm.db:write:todos':
"Creare, modificare ed eliminare attività sui viaggi che l'utente attivo può modificare",
'admin.plugins.perm.db:write:atlas':
"Contrassegnare paesi e regioni come visitati e gestire la bucket list dell'utente attivo (richiede il componente aggiuntivo Atlas)",
'admin.plugins.perm.db:write:vacay':
"Attivare/disattivare giorni di ferie e chiusure aziendali sul piano attivo dell'utente attivo (richiede il componente aggiuntivo Vacay)",
'admin.plugins.perm.db:write:journal':
"Creare, modificare ed eliminare voci di diario nei diari che l'utente attivo può modificare (richiede il componente aggiuntivo Journey)",
'admin.plugins.perm.db:write:collections':
"Creare e modificare raccolte e salvarvi luoghi, con il ruolo di raccolta dell'utente attivo (richiede il componente aggiuntivo Collections)",
'admin.plugins.perm.db:write:files':
"Allegare file ai viaggi che l'utente attivo può modificare (limite 10 MB, estensioni bloccate rifiutate) e gestirne i collegamenti",
'admin.plugins.perm.db:write:collab':
"Pubblicare note, sondaggi e messaggi di chat sui viaggi che l'utente attivo può modificare (richiede il componente aggiuntivo Collab)",
'admin.plugins.perm.db:write:members':
"Aggiungere utenti ai viaggi — concede l'accesso al viaggio; protetto dal diritto di gestione membri dell'utente attivo",
'admin.plugins.perm.notify:send':
"Inviare una notifica (casella campanella + email/ntfy) all'utente attivo o a un viaggio a cui appartiene — mai a un destinatario arbitrario",
'admin.plugins.perm.ai:invoke':
"Usare il provider IA configurato dall'amministratore (completamento testo + estrazione documenti) per conto dell'utente attivo — il componente non detiene mai una chiave",
'admin.plugins.perm.oauth:client':
"Connettersi a un servizio di terze parti per tuo conto tramite OAuth gestito dall'host (l'host detiene i token, il plugin non li vede mai)",
'admin.plugins.perm.db:read:files': "Leggere i file dei viaggi a cui l'utente attivo ha accesso",
'admin.plugins.perm.db:write:reservations':
"Creare, modificare ed eliminare prenotazioni sui viaggi che l'utente attivo può modificare",
'admin.plugins.perm.db:write:accommodations':
"Creare, modificare ed eliminare alloggi sui viaggi che l'utente attivo può modificare",
'admin.plugins.perm.db:read:journal':
"Leggere i diari di viaggio dell'utente attivo (richiede il componente aggiuntivo Journey)",
'admin.plugins.perm.db:read:atlas':
"Leggere i paesi e le regioni visitati dall'utente attivo (richiede il componente aggiuntivo Atlas)",
'admin.plugins.perm.db:read:vacay':
"Leggere il piano vacanze dell'utente attivo (richiede il componente aggiuntivo Vacay)",
'admin.plugins.perm.db:read:daynotes': "Leggere le note del giorno dei viaggi a cui l'utente attivo ha accesso",
'admin.plugins.perm.db:read:collections':
"Leggere le raccolte di luoghi salvati dell'utente attivo (richiede il componente aggiuntivo Collections)",
'admin.plugins.perm.db:write:daynotes':
"Creare, modificare ed eliminare note del giorno sui viaggi che l'utente attivo può modificare",
'admin.plugins.perm.jobs:run':
'Eseguire i job in background dichiarati secondo una pianificazione (senza contesto utente — non può leggere i dati utente)',
'admin.plugins.perm.db:write:costs': "Creare spese (voci di budget) sui viaggi che l'utente attivo può modificare",
'admin.plugins.perm.db:write:places':
"Aggiungere, modificare e rimuovere luoghi sui viaggi che l'utente attivo può modificare",
'admin.plugins.perm.db:write:days':
"Aggiungere, modificare e rimuovere giorni sui viaggi che l'utente attivo può modificare",
'admin.plugins.perm.db:write:itinerary':
"Assegnare e rimuovere luoghi nei giorni dei viaggi che l'utente attivo può modificare",
'admin.plugins.perm.db:write:trips':
"Modificare i dettagli del viaggio (titolo, date, valuta…) sui viaggi che l'utente attivo può modificare",
'admin.plugins.perm.db:meta':
"Allegare i propri dati privati a viaggi, luoghi e giorni a cui l'utente attivo può accedere",
'admin.plugins.perm.ws:broadcast:trip': 'Inviare aggiornamenti in tempo reale ai membri del viaggio',
'admin.plugins.perm.ws:broadcast:user': 'Inviare aggiornamenti in tempo reale a singoli utenti',
'admin.plugins.perm.hook:photo-provider': 'Fornire foto alla sezione Foto',
'admin.plugins.perm.hook:calendar-source': 'Fornire eventi al calendario',
'admin.plugins.perm.hook:place-detail-provider':
'Fornire dettagli aggiuntivi (recensioni, valutazioni, link) a un luogo',
'admin.plugins.perm.hook:trip-warning-provider':
'Segnala avvisi di validazione su un viaggio (mostrati nel pianificatore)',
'admin.plugins.perm.hook:table-contributor':
'Aggiungere colonne e azioni alle viste del viaggio (prenotazioni, luoghi, giorni)',
'admin.plugins.perm.hook:map-marker-provider':
'Aggiungere indicatori alla mappa del viaggio (es. mostrare prenotazioni o POI)',
'admin.plugins.perm.hook:map-layer-provider': 'Disegnare percorsi, corridoi e zone sulla mappa del viaggio',
'admin.plugins.perm.hook:route-provider':
'Offrire profili di routing con cui il pianificatore calcola i giorni (es. routing per auto elettriche con soste di ricarica)',
'admin.plugins.perm.hook:day-schedule-provider':
'Aggiungere voci orarie al piano della giornata (soste di ricarica, margini di sicurezza)',
'admin.plugins.perm.hook:day-tint-provider':
'Colorare i giorni nel piano della giornata (ad esempio a quale tratta del viaggio appartiene un giorno)',
'admin.plugins.cap.mcpTools': 'Pubblica strumenti IA',
'admin.plugins.mcpToolsTitle': 'Strumenti IA pubblicati',
'admin.plugins.mcpToolsHint': 'Un assistente può eseguirli per conto di un utente. Ognuno agisce con i permessi concessi sopra.',
'admin.plugins.perm.mcp:tools':
'Pubblicare strumenti che un assistente IA può eseguire per tuo conto (agisce con i permessi che concedi qui al plugin, non con i propri)',
'admin.plugins.perm.geolocation:read':
'Richiedere la tua posizione in tempo reale mentre una delle sue viste è aperta (TREK la legge con il permesso di posizione di questo sito, non con uno proprio del plugin)',
'admin.plugins.perm.hook:pdf-section-provider': "Aggiungere sezioni di testo all'esportazione PDF del viaggio",
'admin.plugins.perm.hook:atlas-layer-provider':
'Evidenziare paesi sulla mappa del mondo di Atlas (es. liste dei desideri o avvisi di viaggio)',
'admin.plugins.perm.hook:journal-entry-provider': 'Aggiungere righe extra (link, statistiche) alle voci del diario',
'admin.plugins.perm.hook:user-data':
'Cancellare o esportare i dati che memorizza su un utente (GDPR: eliminazione account e richieste dati)',
'admin.plugins.perm.hook:trip-card-provider':
'Aggiungere piccoli badge (stato, conteggi) alle schede viaggio della dashboard',
'admin.plugins.perm.hook:notification-channel': 'Inviare le tue notifiche tramite un canale aggiuntivo',
'admin.plugins.perm.events:subscribe':
"Reagisce agli eventi principali dell'attività (solo nome evento e viaggio, mai il contenuto)",
'admin.plugins.perm.http:outbound': 'Effettuare richieste in uscita verso gli host dichiarati',
'admin.plugins.perm.db:read:collab':
"Leggere note, sondaggi e messaggi di chat dei viaggi a cui l'utente attivo ha accesso (richiede il componente aggiuntivo Collab)",
'admin.plugins.perm.db:read:files:content':
"Leggere il contenuto (byte) dei file dei viaggi a cui l'utente attivo ha accesso",
'admin.plugins.perm.db:create:trips': "Creare nuovi viaggi di proprietà dell'utente attivo",
'admin.plugins.perm.rates:read': "Leggere i tassi di cambio in cache dell'host",
'admin.plugins.updateConsentTitle': 'Questo aggiornamento richiede nuovi permessi',
'admin.plugins.updateConsentBody':
'{name} v{version} richiede permessi che non hai ancora concesso. La nuova versione è installata ma resta disattivata finché non la approvi.',
'admin.plugins.updateNewPermissions': 'Nuovi permessi richiesti',
'admin.plugins.updateNewEgress': 'Nuove connessioni in uscita',
'admin.plugins.updateApprove': 'Approva e attiva',
'admin.plugins.updateLater': 'Lascia disattivato per ora',
'admin.plugins.updateKeptOff': 'Aggiornamento installato — resta disattivato finché non approvi i nuovi permessi',
'admin.plugins.reviewedMeaning':
'"Verificato" significa che un manutentore di TREK ha esaminato questo plugin alla ricerca di malware a ogni versione — non ne ha valutato la qualità né il funzionamento. Non è una garanzia che il plugin sia innocuo.',
'admin.plugins.security.title': 'Come vengono isolati i plugin — e i limiti',
'admin.plugins.security.isolationTitle': 'Ogni plugin viene eseguito in isolamento',
'admin.plugins.security.isolationBody':
'Un plugin viene eseguito come un proprio processo isolato che può leggere solo i propri file. Non può leggere il tuo database, il tuo segreto di accesso o la tua chiave di crittografia, non può avviare altri programmi e non può scrivere file da nessuna parte. La sua interfaccia viene eseguita in un frame del browser sigillato che non può leggere il cookie di sessione né toccare la pagina di TREK circostante.',
'admin.plugins.security.permsTitle': 'Cosa significano i permessi',
'admin.plugins.security.permsBody':
"I permessi mostrati prima dell'installazione sono un limite rigido che TREK impone mentre il plugin è in esecuzione — letteralmente non può fare nulla che non sia nell'elenco. Ma ti dicono cosa un plugin può fare, non cosa fa davvero. Un plugin autorizzato a leggere i tuoi viaggi e a raggiungere un server può inviare i tuoi viaggi a quel server, quindi leggi i permessi e gli host in uscita, non solo la descrizione.",
'admin.plugins.security.limitsTitle': 'Cosa non possiamo garantire',
'admin.plugins.security.limitsBody':
"L'isolamento è un confine software robusto, ma non assoluto. Un plugin agisce esattamente con i permessi che approvi, quindi entro tali permessi può comportarsi diversamente da quanto suggerisce la sua descrizione e può inviare i dati che detiene legittimamente agli host che ha dichiarato. TREK non legge né giudica cosa fa davvero il codice di un plugin.",
'admin.plugins.security.worstTitle': 'Il caso peggiore',
'admin.plugins.security.worstBody':
'Un plugin ostile che attivi può abusare dei dati e delle connessioni che gli hai concesso — ad esempio, divulgare i viaggi che è autorizzato a leggere. Non può rubare password, falsificare un accesso da amministratore, eseguire comandi sul tuo server o raggiungere dati che non hai concesso. Il danno resta entro ciò che hai approvato e disattivare il plugin lo ferma.',
'admin.plugins.security.reviewedTitle': 'Cosa significa "Verificato"',
'admin.plugins.security.reviewedBody':
'Un plugin verificato è stato esaminato manualmente alla ricerca di malware da un manutentore di TREK a ogni versione — controllato per individuare codice ostile, non per valutare se funziona bene. Non è una promessa che il plugin sia innocuo.',
'admin.plugins.security.signedTitle': 'Cosa significa "Firmato"',
'admin.plugins.security.signedBody':
"Il checksum che TREK verifica a ogni installazione dimostra che i file sono esattamente quelli garantiti dal registro. Una firma dimostra un'altra cosa: che provengono dall'autore, firmati con una chiave che solo lui possiede. Un plugin firmato ha entrambe le cose. Uno non firmato non è insicuro — porta semplicemente una garanzia in meno, e oggi la maggior parte dei plugin nel registro non è firmata.",
'admin.plugins.signed': 'Firmato',
'admin.plugins.signedHint': "Verificato con la chiave di firma dell'autore al momento dell'installazione",
'admin.plugins.unsigned': 'Non firmato',
'admin.plugins.unsignedHint':
"I file corrispondono a quanto garantito dal registro, ma nulla li collega all'autore. Una garanzia in meno — non è insicuro.",
'admin.plugins.updateBlocked': 'Aggiornamento bloccato — {reason}',
'admin.plugins.reviewBlock': 'Esamina',
'admin.plugins.retrusted': 'Nuova chiave di firma considerata attendibile — il plugin è aggiornato',
'admin.plugins.sig.title': 'Impossibile verificare la firma di {name}',
'admin.plugins.sig.keyChangedBody':
"La chiave di firma dell'autore non è quella con cui questo plugin è stato installato. Gli autori a volte cambiano chiave — ma un aggressore che avesse preso il controllo del plugin apparirebbe esattamente così.",
'admin.plugins.sig.invalidBody':
"I file non corrispondono alla firma dell'autore. Non sono ciò che l'autore ha firmato — o si sono corrotti, o sono stati manomessi. Non è possibile forzare questo blocco.",
'admin.plugins.sig.missingBody':
"Questo plugin era firmato quando l'hai installato, ma la nuova versione non include alcuna firma. TREK non accetterà in silenzio questo passo indietro. Non è possibile forzare questo blocco.",
'admin.plugins.sig.incompleteBody':
"La voce del registro è firmata a metà: dichiara una chiave dell'autore ma la versione non porta alcuna firma (o viceversa). È un errore lato plugin. Non è possibile forzare questo blocco.",
'admin.plugins.sig.pinnedKey': 'Chiave con cui è stato installato',
'admin.plugins.sig.newKey': 'Chiave che propone ora',
'admin.plugins.sig.confirmOutOfBand':
"TREK non può distinguere una legittima rotazione della chiave da un'appropriazione — da qui appaiono identiche. Prima di accettarla, conferma la nuova chiave con l'autore attraverso un canale di cui ti fidi già. Una volta fatto, il plugin viene aggiornato e la nuova chiave viene memorizzata.",
'admin.plugins.sig.retrustConfirm': 'Fidati della nuova chiave e aggiorna',
'admin.plugins.sig.cancel': 'Non fidarti',
'admin.plugins.sig.consentUnsigned':
"Nulla collega questa versione al suo autore — i file corrispondono al registro, ma non portano alcuna firma dell'autore.",
'admin.plugins.security.trustTitle': 'In conclusione',
'admin.plugins.security.trustBody':
'Installare un plugin è come installare una qualsiasi app di terze parti: aggiungi solo codice di autori di cui ti fidi e, in caso di dubbio, ispezionalo personalmente prima. TREK non si assume alcuna responsabilità per i plugin di terze parti.',
'admin.plugins.runtimeOn': 'Runtime attivo',
'admin.plugins.tabDiscover': 'Scopri',
'admin.plugins.searchPlaceholder': 'Cerca plugin…',
'admin.plugins.filterType': 'Tipo',
'admin.plugins.filterStatus': 'Stato',
'admin.plugins.sortBy': 'Ordina',
'admin.plugins.allTypes': 'Tutti i tipi',
'admin.plugins.allStatuses': 'Tutti',
'admin.plugins.stateOff': 'Disattivato',
'admin.plugins.filterUpdate': 'Aggiornamento disponibile',
'admin.plugins.sortName': 'Nome',
'admin.plugins.sortRecent': 'Aggiornati di recente',
'admin.plugins.sortUpdates': 'Prima gli aggiornamenti',
'admin.plugins.sortDownloads': 'Più scaricati',
'admin.plugins.updatesAvailable': '{count} aggiornamenti disponibili per i tuoi plugin.',
'admin.plugins.newerNeedsTrek': 'v{version} disponibile — richiede TREK {range}',
'admin.plugins.versionsTitle': 'Versioni',
'admin.plugins.versionPickerTitle': 'Cambia versione — {name}',
'admin.plugins.versionSwitch': 'Passa a {version}',
'admin.plugins.versionNeedsTrek': 'richiede TREK {range}',
'admin.plugins.changeVersion': 'Cambia versione…',
'admin.plugins.noVersions': 'Nessuna versione pubblicata trovata nel registro.',
'admin.plugins.downgradeTitle': 'Ripristinare questo plugin?',
'admin.plugins.downgradeBody': 'Passaggio da v{from} a v{to}: i dati scritti dalla versione più recente restano, e la versione precedente potrebbe non comprenderli.',
'admin.plugins.downgradeConfirm': 'Ripristina',
'admin.plugins.updatesHeld': 'Aggiornamenti in pausa alla v{version}',
'admin.plugins.resumeUpdates': 'Riprendi aggiornamenti',
'admin.plugins.updatesResumed': 'Aggiornamenti ripresi',
'admin.plugins.updateAll': 'Aggiorna tutti',
'admin.plugins.noMatchInstalled': 'Nessun plugin installato corrisponde alla tua ricerca.',
'admin.plugins.noMatchRegistry': 'Nessun plugin nel registro corrisponde alla tua ricerca.',
'admin.plugins.restart': 'Riavvia',
'admin.plugins.restarted': 'Plugin riavviato',
'admin.plugins.instanceSettings': 'Impostazioni dell’istanza',
'admin.plugins.settingsSaved': 'Impostazioni salvate',
'admin.plugins.settingsSavedRestarted': 'Impostazioni salvate — plugin riavviato',
'admin.plugins.actions': 'Azioni',
'admin.plugins.actions.confirm': 'Eseguire questa azione?',
'admin.plugins.actions.inactive': 'Attiva il plugin per eseguire le sue azioni',
'admin.plugins.requiredMissing': '"{field}" è obbligatorio',
'admin.plugins.cap.readsTrips': 'Legge i tuoi viaggi',
'admin.plugins.cap.readsUsers': 'Legge i profili di base',
'admin.plugins.cap.readsCosts': 'Legge le tue spese',
'admin.plugins.cap.readsPacking': 'Legge le liste bagagli',
'admin.plugins.cap.readsFiles': 'Legge i file del viaggio',
'admin.plugins.cap.writesCosts': 'Aggiunge spese',
'admin.plugins.cap.writesPlaces': 'Modifica luoghi',
'admin.plugins.cap.writesDays': 'Modifica giorni',
'admin.plugins.cap.writesItinerary': 'Modifica itinerario',
'admin.plugins.cap.writesTrips': 'Modifica viaggi',
'admin.plugins.cap.metadata': 'Aggiunge metadati',
'admin.plugins.cap.widget': 'Widget dashboard',
'admin.plugins.cap.heroWidget': "Widget carta d'imbarco",
'admin.plugins.cap.placeSlot': 'Dettaglio luogo',
'admin.plugins.cap.daySlot': 'Dettaglio giorno',
'admin.plugins.cap.reservationSlot': 'Dettaglio prenotazione',
'admin.plugins.cap.replacesTabs': 'Sostituisce schede del planner',
'admin.plugins.cap.realtime': 'Aggiornamenti in tempo reale',
'admin.plugins.cap.notificationChannel': 'Canale di notifica',
'admin.plugins.cap.photos': 'Fornisce foto',
'admin.plugins.cap.calendar': 'Fornisce eventi calendario',
'admin.plugins.cap.placeDetails': 'Arricchisce luoghi',
'admin.plugins.cap.warnings': 'Segnala problemi',
'admin.plugins.cap.mapLayers': 'Disegna sulla mappa',
'admin.plugins.cap.routing': 'Offre routing',
'admin.plugins.cap.daySchedule': 'Aggiunge orari al piano',
'admin.plugins.cap.dayTint': 'Colora i giorni',
'admin.plugins.cap.geolocation': 'Legge la tua posizione',
'admin.plugins.cap.events': "Reagisce all'attività",
'admin.plugins.cap.requiresAddon': 'Richiede {addon}',
'admin.plugins.cap.dependsOn': 'Richiede {id} {version}',
'admin.plugins.dep.addonDisabledToast': 'Abilita prima gli addon richiesti: {addons}',
'admin.plugins.dep.autoEnabled': 'Abilitati prima i plugin richiesti: {plugins}',
'admin.plugins.dep.downloaded': 'Scaricato {id}',
'admin.plugins.dep.resolveTitle': 'Dipendenze mancanti',
'admin.plugins.dep.resolveBody': '“{name}” richiede questi plugin installati prima di poter essere abilitato.',
'admin.plugins.dep.requires': 'Richiede {version}',
'admin.plugins.dep.mismatch': 'Richiede {wanted} — è installato {installed}',
'admin.plugins.dep.download': 'Scarica',
'admin.plugins.dep.update': 'Aggiorna',
'admin.plugins.dep.resolveHint': 'Scarica la versione compatibile più recente, incluse le sue dipendenze.',
'admin.plugins.dep.trekIncompatible': 'Richiede TREK {range} — questo server esegue {host}',
'admin.plugins.dep.trekUnknown': 'Non indica quali versioni di TREK supporta',
'admin.plugins.installCompatible': 'Installa {version}',
'admin.plugins.incompatible': 'Non compatibile',
'admin.plugins.accessTitle': 'A cosa può accedere',
'admin.plugins.connectsTitle': 'Si connette a',
'admin.plugins.detailsTitle': 'Dettagli',
'admin.plugins.noAccess': 'Non richiede accessi speciali.',
'admin.plugins.metaVersion': 'Versione',
'admin.plugins.metaSize': 'Dimensione',
'admin.plugins.metaRequires': 'Richiede',
'admin.plugins.metaReviewed': 'Verificato il',
'admin.plugins.downloads': 'Download',
'admin.addons.title': 'Moduli',
'admin.addons.subtitle': 'Abilita o disabilita le funzionalità per personalizzare la tua esperienza TREK.',
'admin.addons.catalog.packing.name': 'Liste',
'admin.addons.catalog.packing.description': 'Liste di imballaggio e attività da svolgere per i tuoi viaggi',
'admin.addons.catalog.budget.name': 'Costi',
'admin.addons.catalog.budget.description': 'Tieni traccia delle spese del viaggio e dividile tra i viaggiatori',
'admin.addons.catalog.documents.name': 'Documenti',
'admin.addons.catalog.documents.description': 'Archivia e gestisci i documenti di viaggio',
'admin.addons.catalog.vacay.name': 'Ferie',
'admin.addons.catalog.vacay.description': 'Pianificatore personale delle ferie con vista calendario',
'admin.addons.catalog.atlas.name': 'Atlante',
'admin.addons.catalog.atlas.description': 'Mappa del mondo con paesi visitati e statistiche di viaggio',
'admin.addons.catalog.collab.name': 'Collaborazione',
'admin.addons.catalog.collab.description': 'Note, sondaggi, chat e suggerimenti per pianificare insieme',
'admin.addons.catalog.memories.name': 'Foto (Immich)',
'admin.addons.catalog.memories.description': 'Condividi le foto del viaggio tramite la tua istanza Immich',
'admin.addons.catalog.mcp.name': 'MCP',
'admin.addons.catalog.mcp.description': "Model Context Protocol per l'integrazione di assistenti AI",
'admin.addons.subtitleBefore': 'Abilita o disabilita le funzionalità per personalizzare la tua ',
'admin.addons.subtitleAfter': ' esperienza.',
'admin.addons.catalog.naver_list_import.name': 'Naver List Import',
'admin.addons.catalog.naver_list_import.description': 'Importa luoghi da un elenco condiviso di Naver Maps',
'admin.addons.catalog.airtrail.name': 'AirTrail',
'admin.addons.catalog.airtrail.description': 'Sincronizza i voli dalla tua istanza AirTrail',
'admin.addons.catalog.llm_parsing.name': 'Analisi con IA',
'admin.addons.catalog.llm_parsing.description': 'Legge le prenotazioni che l’analizzatore integrato non riesce a interpretare, con un modello di IA a tua scelta',
'admin.addons.enabled': 'Abilitato',
'admin.addons.disabled': 'Disabilitato',
'admin.addons.type.trip': 'Viaggio',
'admin.addons.type.global': 'Globale',
'admin.addons.type.integration': 'Integrazione',
'admin.addons.tripHint': "Disponibile come scheda all'interno di ciascun viaggio",
'admin.addons.globalHint': 'Disponibile come sezione autonoma nella navigazione principale',
'admin.addons.integrationHint': 'Servizi backend e integrazioni API senza pagina dedicata',
'admin.addons.toast.updated': 'Modulo aggiornato',
'admin.addons.toast.error': 'Impossibile aggiornare il modulo',
'admin.addons.group.count': '{enabled} di {total} attivi',
'admin.addons.noAddons': 'Nessun modulo disponibile',
'admin.weather.title': 'Dati meteo',
'admin.weather.badge': 'Dal 24 marzo 2026',
'admin.weather.description':
'TREK utilizza Open-Meteo come fonte dei dati meteo. Open-Meteo è un servizio meteo gratuito e open-source — non è richiesta alcuna chiave API.',
'admin.weather.forecast': 'Previsioni a 16 giorni',
'admin.weather.forecastDesc': 'In precedenza 5 giorni (OpenWeatherMap)',
'admin.weather.climate': 'Dati climatici storici',
'admin.weather.climateDesc': 'Medie degli ultimi 85 anni per i giorni oltre le previsioni a 16 giorni',
'admin.weather.requests': '10.000 richieste / giorno',
'admin.weather.requestsDesc': 'Gratis, nessuna chiave API richiesta',
'admin.weather.locationHint':
"Il meteo si basa sul primo luogo con coordinate di ogni giorno. Se a un giorno non è assegnato alcun luogo, viene utilizzato come riferimento un qualsiasi luogo dell'elenco.",
'admin.tabs.audit': 'Audit',
'admin.audit.subtitle': 'Eventi sensibili di sicurezza e amministrazione (backup, utenti, 2FA, impostazioni).',
'admin.audit.empty': 'Nessuna voce di audit.',
'admin.audit.refresh': 'Aggiorna',
'admin.audit.loadMore': 'Carica altro',
'admin.audit.showing': '{count} caricati · {total} totali',
'admin.audit.col.time': 'Ora',
'admin.audit.col.user': 'Utente',
'admin.audit.col.action': 'Azione',
'admin.audit.col.resource': 'Risorsa',
'admin.audit.col.ip': 'IP',
'admin.audit.col.details': 'Dettagli',
'admin.tabs.mcpTokens': 'Accesso MCP',
'admin.mcpTokens.title': 'Accesso MCP',
'admin.mcpTokens.subtitle': 'Gestisci le sessioni OAuth e i token API di tutti gli utenti',
'admin.mcpTokens.sectionTitle': 'Token API',
'admin.mcpTokens.owner': 'Proprietario',
'admin.mcpTokens.tokenName': 'Nome token',
'admin.mcpTokens.created': 'Creato',
'admin.mcpTokens.lastUsed': 'Ultimo utilizzo',
'admin.mcpTokens.never': 'Mai',
'admin.mcpTokens.empty': 'Non sono ancora stati creati token MCP',
'admin.mcpTokens.deleteTitle': 'Elimina token',
'admin.mcpTokens.deleteMessage':
"Questo token verrà revocato immediatamente. L'utente perderà l'accesso MCP tramite questo token.",
'admin.mcpTokens.deleteSuccess': 'Token eliminato',
'admin.mcpTokens.deleteError': 'Impossibile eliminare il token',
'admin.mcpTokens.loadError': 'Impossibile caricare i token',
'admin.oauthSessions.sectionTitle': 'Sessioni OAuth',
'admin.oauthSessions.clientName': 'Client',
'admin.oauthSessions.owner': 'Proprietario',
'admin.oauthSessions.scopes': 'Ambiti',
'admin.oauthSessions.created': 'Creato',
'admin.oauthSessions.empty': 'Nessuna sessione OAuth attiva',
'admin.oauthSessions.revokeTitle': 'Revoca sessione',
'admin.oauthSessions.revokeMessage':
"Questa sessione OAuth verrà revocata immediatamente. Il client perderà l'accesso MCP.",
'admin.oauthSessions.revokeSuccess': 'Sessione revocata',
'admin.oauthSessions.revokeError': 'Impossibile revocare la sessione',
'admin.oauthSessions.loadError': 'Impossibile caricare le sessioni OAuth',
'admin.tabs.github': 'GitHub',
'admin.github.title': 'Cronologia rilasci',
'admin.github.subtitle': 'Ultimi aggiornamenti da {repo}',
'admin.github.latest': 'Ultimo',
'admin.github.prerelease': 'Pre-release',
'admin.github.showDetails': 'Mostra dettagli',
'admin.github.hideDetails': 'Nascondi dettagli',
'admin.github.loadMore': 'Carica altro',
'admin.github.loading': 'Caricamento...',
'admin.github.error': 'Impossibile caricare i rilasci',
'admin.github.by': 'da',
'admin.github.support': 'Mi aiuta a continuare a sviluppare TREK',
'admin.update.available': 'Aggiornamento disponibile',
'admin.update.text': 'TREK {version} è disponibile. Stai eseguendo {current}.',
'admin.update.button': 'Vedi su GitHub',
'admin.update.install': 'Installa aggiornamento',
'admin.update.confirmTitle': "Installare l'aggiornamento?",
'admin.update.confirmText':
'TREK verrà aggiornato da {current} a {version}. Il server si riavvierà automaticamente in seguito.',
'admin.update.dataInfo':
'Tutti i tuoi dati (viaggi, utenti, chiavi API, caricamenti, Ferie, Atlante, budget) saranno preservati.',
'admin.update.warning': "L'app sarà temporaneamente non disponibile durante il riavvio.",
'admin.update.confirm': 'Aggiorna ora',
'admin.update.installing': 'Aggiornamento in corso…',
'admin.update.success': 'Aggiornamento installato! Il server si sta riavviando…',
'admin.update.failed': 'Aggiornamento non riuscito',
'admin.update.backupHint': 'Ti consigliamo di creare un backup prima di aggiornare.',
'admin.update.backupLink': 'Vai a Backup',
'admin.update.howTo': 'Come aggiornare',
'admin.update.dockerText':
'La tua istanza TREK è in esecuzione in Docker. Per aggiornare alla versione {version}, esegui i seguenti comandi sul tuo server:',
'admin.update.nonDockerText':
"Questa istanza TREK non è in esecuzione in Docker. Per aggiornare alla versione {version}, riesegui il metodo di installazione o aggiornamento che hai usato — ad esempio, su Proxmox Community Scripts esegui l'aggiornamento dalla console LXC:",
'admin.update.wikiLink': "Apri la guida all'aggiornamento",
'admin.update.reloadHint': 'Ricarica la pagina tra qualche secondo.',
'admin.tabs.permissions': 'Permessi',
'admin.notifications.emailPanel.title': 'Email (SMTP)',
'admin.notifications.webhookPanel.title': 'Webhook',
'admin.notifications.inappPanel.title': 'In-App',
'admin.notifications.inappPanel.hint':
'Le notifiche in-app sono sempre attive e non possono essere disabilitate globalmente.',
'admin.notifications.adminWebhookPanel.title': 'Webhook admin',
'admin.notifications.adminWebhookPanel.hint':
'Questo webhook viene usato esclusivamente per le notifiche admin (es. avvisi di versione). È separato dai webhook utente e si attiva automaticamente quando è configurato un URL.',
'admin.notifications.adminWebhookPanel.saved': 'URL webhook admin salvato',
'admin.notifications.adminWebhookPanel.testSuccess': 'Webhook di test inviato con successo',
'admin.notifications.adminWebhookPanel.testFailed': 'Invio webhook di test fallito',
'admin.notifications.adminWebhookPanel.alwaysOnHint':
'Il webhook admin si attiva automaticamente quando è configurato un URL',
'admin.notifications.ntfy': 'Ntfy',
'admin.ntfy.hint':
'Consente agli utenti di configurare i propri argomenti ntfy per le notifiche push. Imposta il server predefinito di seguito per precompilare le impostazioni utente.',
'admin.notifications.testNtfy': 'Invia Ntfy di test',
'admin.notifications.testNtfySuccess': 'Ntfy di test inviato con successo',
'admin.notifications.testNtfyFailed': 'Invio Ntfy di test fallito',
'admin.notifications.adminNtfyPanel.title': 'Ntfy admin',
'admin.notifications.adminNtfyPanel.hint':
'Questo argomento Ntfy viene usato esclusivamente per le notifiche admin (es. avvisi di versione). È separato dagli argomenti per utente e si attiva sempre quando è configurato.',
'admin.notifications.adminNtfyPanel.serverLabel': 'URL server Ntfy',
'admin.notifications.adminNtfyPanel.serverHint':
'Usato anche come server predefinito per le notifiche ntfy degli utenti. Lasciare vuoto per usare ntfy.sh. Gli utenti possono sovrascriverlo nelle proprie impostazioni.',
'admin.notifications.adminNtfyPanel.serverPlaceholder': 'https://ntfy.sh',
'admin.notifications.adminNtfyPanel.topicLabel': 'Argomento admin',
'admin.notifications.adminNtfyPanel.topicPlaceholder': 'trek-admin-alerts',
'admin.notifications.adminNtfyPanel.tokenLabel': 'Token di accesso (opzionale)',
'admin.notifications.adminNtfyPanel.tokenCleared': 'Token di accesso admin rimosso',
'admin.notifications.adminNtfyPanel.saved': 'Impostazioni Ntfy admin salvate',
'admin.notifications.adminNtfyPanel.test': 'Invia Ntfy di test',
'admin.notifications.adminNtfyPanel.testSuccess': 'Ntfy di test inviato con successo',
'admin.notifications.adminNtfyPanel.testFailed': 'Invio Ntfy di test fallito',
'admin.notifications.adminNtfyPanel.alwaysOnHint': 'Il Ntfy admin si attiva sempre quando un argomento è configurato',
'admin.notifications.adminNotificationsHint':
'Configura quali canali consegnano le notifiche admin (es. avvisi di versione). Il webhook si attiva automaticamente se è impostato un URL webhook admin.',
'admin.notifications.tripReminders.title': 'Promemoria viaggio',
'admin.notifications.tripReminders.hint':
"Invia una notifica promemoria prima dell'inizio di un viaggio (richiede giorni di promemoria impostati sul viaggio).",
'admin.notifications.tripReminders.enabled': 'Promemoria viaggio attivati',
'admin.notifications.tripReminders.disabled': 'Promemoria viaggio disattivati',
'admin.tabs.notifications': 'Notifiche',
'admin.addons.catalog.journey.name': 'Diario di viaggio',
'admin.addons.catalog.journey.description': 'Tracciamento viaggi e diario con check-in, foto e storie quotidiane',
'admin.addons.catalog.collections.name': 'Raccolte',
'admin.addons.catalog.collections.description': 'Raccogli luoghi da tutti i viaggi in elenchi con nome e riutilizzali',
'admin.passkey.title': 'Accesso con passkey',
'admin.passkey.cardHint':
'Consenti agli utenti di accedere con le passkey (WebAuthn). Disattivato per impostazione predefinita.',
'admin.passkey.login': 'Abilita accesso con passkey',
'admin.passkey.loginHint':
'Mostra un\'opzione "Accedi con una passkey" e consenti agli utenti di registrare le passkey nelle loro impostazioni.',
'admin.passkey.notConfigured':
'Nessun dominio WebAuthn è ancora risolto per questa installazione. Imposta APP_URL o il Relying Party ID qui sotto — le passkey restano nascoste fino ad allora.',
'admin.passkey.rpId': 'Relying Party ID (dominio)',
'admin.passkey.rpIdHint':
'Il dominio puro a cui le passkey sono associate, es. trek.example.org. Lascia vuoto per derivarlo da APP_URL. Modificarlo in seguito invalida le passkey esistenti.',
'admin.passkey.origins': 'Origini consentite',
'admin.passkey.originsHint':
'Origini complete separate da virgola, es. https://trek.example.org. Lascia vuoto per usare APP_URL.',
'admin.passkey.reset': 'Reimposta passkey',
'admin.passkey.resetHint':
'Rimuovi tutte le passkey di questo utente (es. in caso di dispositivo smarrito). Potrà comunque accedere con la sua password.',
'admin.passkey.resetConfirm': 'Rimuovere tutte le passkey di {name}?',
'admin.passkey.resetDone': 'Rimosse {count} passkey',
'admin.defaultSettings.mapProvider': 'Motore mappe',
'admin.defaultSettings.mapProviderHint':
'La mappa predefinita per tutti gli utenti di questa istanza. Ogni utente può comunque sostituirla nelle proprie impostazioni.',
'admin.defaultSettings.providerLeaflet': 'Standard (gratuito)',
'admin.defaultSettings.providerMapbox': 'Mapbox (3D)',
'admin.defaultSettings.providerMapLibre': 'MapLibre (OpenFreeMap)',
'admin.defaultSettings.mapboxToken': 'Token Mapbox condiviso',
'admin.defaultSettings.mapboxTokenHint':
"Usato per ogni utente che non ha inserito un proprio token — così tutta l'istanza ottiene Mapbox senza dover condividere la chiave individualmente. Archiviato in forma crittografata.",
'admin.defaultSettings.mapboxStyle': 'Stile mappa',
'admin.defaultSettings.mapboxStylePlaceholder': 'Scegli uno stile…',
'admin.defaultSettings.mapbox3d': 'Edifici & terreno in 3D',
'admin.defaultSettings.mapboxQuality': 'Modalità alta qualità',
'admin.defaultSettings.cartoKey': 'Chiave CARTO condivisa',
'admin.defaultSettings.cartoKeyHint':
"Usata per ogni utente che non ha inserito una propria chiave, così tutta l'istanza ottiene le tessere CARTO senza filigrana. Archiviata in forma crittografata.",
'admin.group.users': 'Users',
'admin.group.config': 'Configuration',
'admin.group.integration': 'Integrations',
'admin.group.maintenance': 'Maintenance',
'admin.invite.tripLabel': 'Aggiungi a un viaggio (opzionale)',
'admin.invite.tripNone': 'Nessun viaggio',
'admin.invite.tripHint':
'Il nuovo utente viene aggiunto automaticamente a questo viaggio quando si registra tramite il link.',
'admin.invite.boundTo': 'aggiunge a {trip}',
};
export default admin;