From ca4276f192a340b9036cb1f5eefef9e6b8b9d138 Mon Sep 17 00:00:00 2001 From: Darko Gjorgjijoski <5760249+gdarko@users.noreply.github.com> Date: Fri, 12 Jun 2026 14:49:14 +0200 Subject: [PATCH] New translations en.json (Italian) [ci skip] --- lang/it.json | 322 ++++++++++++++++++++++++++++++++++++++++++++------- 1 file changed, 277 insertions(+), 45 deletions(-) diff --git a/lang/it.json b/lang/it.json index 2e8da8f4..8df0c2f9 100644 --- a/lang/it.json +++ b/lang/it.json @@ -12,7 +12,13 @@ "settings": "Configurazione", "logout": "Disconnessione", "users": "Utenti", - "modules": "Moduli" + "members": "Members", + "modules": "Moduli", + "documents": "Documents", + "admin": "Administration", + "administration": "Administration", + "companies": "Companies", + "all_users": "Users" }, "general": { "add_company": "Aggiungi azienda", @@ -22,15 +28,16 @@ "save": "Salva", "create": "Crea", "cancel": "Elimina", + "accept": "Accept", + "decline": "Decline", + "welcome": "Welcome", + "no_company_description": "You are not a member of any company yet. Accept an invitation below or contact your administrator.", + "app_version": "Application Version", + "database": "Database", + "collapse": "Collapse", "update": "Aggiorna", "deselect": "Deseleziona", "download": "Scarica", - "export": "Export", - "export_csv": "Export CSV", - "export_one_line_per_invoice": "One line per invoice", - "export_one_line_per_invoice_item": "One line per invoice item", - "export_one_line_per_estimate": "One line per estimate", - "export_one_line_per_estimate_item": "One line per estimate item", "from_date": "Dalla Data", "to_date": "Alla Data", "from": "Da", @@ -97,6 +104,7 @@ "street_2": "Indirizzo 2", "action_failed": "Errore", "retry": "Riprova", + "unable_to_load_pdf": "Unable to load document preview", "choose_note": "Scegli Nota", "no_note_found": "Nessuna Nota Trovata", "insert_note": "Inserisci Nota", @@ -446,6 +454,7 @@ "update_expense": "Aggiorna Costo", "edit_invoice": "Modifica Fattura", "new_invoice": "Nuova Fattura", + "one_time": "One-time", "save_invoice": "Salva fattura", "update_invoice": "Aggiorna Fattura", "add_new_tax": "Aggiungi tassa/imposta", @@ -460,6 +469,8 @@ "cloned_successfully": "Fattura copiata con successo", "clone_invoice": "Clona Fattura", "confirm_clone": "Questa fattura verrà clonata in una nuova fattura", + "convert_to_estimate": "Convert to Estimate", + "confirm_convert_to_estimate": "This invoice will be converted into a new Estimate", "item": { "title": "Titolo Commessa", "description": "Descrizione", @@ -545,6 +556,7 @@ "update_expense": "Aggiorna Spesa", "edit_invoice": "Modifica Fattura Ricorrente", "new_invoice": "Nuova Fattura Ricorrente", + "recurring": "Recurring", "send_automatically": "Invia automaticamente", "send_automatically_desc": "Abilitare questa opzione, se si desidera inviare automaticamente la fattura al cliente quando viene creata.", "save_invoice": "Salva Fattura Ricorrente", @@ -589,7 +601,13 @@ "every_hour": "Ogni ora", "every_2_hour": "Ogni 2 ore", "every_day_at_midnight": "Ogni giorno a mezzanotte", + "every_day": "Every Day", "every_week": "Ogni Settimana", + "every_2_weeks": "Every 2 Weeks", + "every_month": "Every Month", + "every_2_months": "Every 2 Months", + "every_quarter": "Every 3 Months (Quarterly)", + "every_year": "Every Year", "every_15_days_at_midnight": "Ogni 15 giorni a mezzanotte", "on_the_first_day_of_every_month_at_midnight": "Il primo giorno di ogni mese alle 00:00", "every_6_month": "Ogni 6 mesi", @@ -608,7 +626,8 @@ "none": "Nessuno", "date": "Data", "count": "Quantità" - } + }, + "make_recurring": "Make Recurring" }, "payments": { "title": "Pagamenti", @@ -683,10 +702,6 @@ "no_expenses": "Ancora nessuna spesa!", "list_of_expenses": "Questa sezione conterrà la lista delle Spese.", "confirm_delete": "Non potrai recuperare questa spesa | Non potrai recuperare queste spese", - "duplicate_expense": "Duplicate", - "duplicate_expense_title": "Duplicate expense", - "duplicate_expense_modal_hint": "Change the date if you need to. (copy) is added to the note.", - "duplicated_message": "Expense duplicated successfully", "created_message": "Spesa creata con successo", "updated_message": "Spesa modificata con successo", "deleted_message": "Spesa cancellata con successo | Spese cancellate con successo", @@ -760,35 +775,61 @@ "no_modules_installed": "Nessun modulo installato ancora!", "disable_warning": "Tutte le impostazioni per questo particolare verranno ripristinate.", "what_you_get": "Cosa puoi ottenere", - "sign_up_and_get_token": "Registrati & Ottieni Gettone" + "screenshots": "Screenshots", + "sign_up_and_get_token": "Registrati & Ottieni Gettone", + "index": { + "description": "Modules activated by your administrator on this instance. Each company configures its own settings independently.", + "empty_title": "No active modules", + "empty_description": "Your administrator hasn't activated any modules on this instance yet. Once they do, modules will appear here with a settings shortcut." + }, + "settings": { + "title": "Module Settings", + "open": "Settings", + "saved": "Module settings saved successfully.", + "not_found": "This module has not registered a settings schema.", + "none": "No settings" + }, + "sidebar": { + "section_title": "Modules" + } }, - "users": { - "title": "Utenti", - "users_list": "Lista Utenti", - "name": "Nome", - "description": "Descrizione", - "added_on": "Aggiunto il", - "date_of_creation": "Data di creazione", - "action": "Azione", - "add_user": "Aggiungi Utente", - "save_user": "Salva Utente", - "update_user": "Aggiorna Utente", - "user": "Utente | Utenti", - "add_new_user": "Aggiungi Nuovo Utente", - "new_user": "Nuovo Utente", - "edit_user": "Modifica Utente", - "no_users": "Ancora nessun utente!", - "list_of_users": "Questa sezione conterrà l'elenco degli utenti.", + "members": { + "title": "Members", + "members_list": "Members List", + "name": "Name", + "description": "Description", + "added_on": "Added On", + "date_of_creation": "Date Of Creation", + "action": "Action", + "invite_member": "Invite Member", + "select_role": "Select Role", + "add_member": "Add Member", + "save_member": "Save Member", + "update_member": "Update Member", + "member": "Member | Members", + "add_new_member": "Add New Member", + "new_member": "New Member", + "edit_member": "Edit Member", + "no_members": "No members yet!", + "list_of_members": "This section will contain the list of company members.", "email": "Email", - "phone": "Telefono", + "phone": "Phone", "password": "Password", - "user_attached_message": "Non puoi eliminare una Commessa che è già attiva", - "confirm_delete": "Non sarai in grado di recuperare questo utente | Non sarai in grado di recuperare questi utenti", - "created_message": "Utente creato correttamente", - "updated_message": "Utente aggiornato correttamente", - "deleted_message": "Utente eliminato con successo | Utenti eliminati con successo", - "select_company_role": "Seleziona ruolo per {company}", - "companies": "Aziende" + "member_attached_message": "Cannot delete an item which is already in use", + "confirm_delete": "You will not be able to recover this Member | You will not be able to recover these Members", + "created_message": "Member added successfully", + "updated_message": "Member updated successfully", + "deleted_message": "Member removed successfully | Members removed successfully", + "invited_message": "Invitation sent successfully", + "invitation_cancelled": "Invitation cancelled", + "select_company_role": "Select Role for {company}", + "companies": "Companies", + "pending_invitations": "Pending Invitations", + "no_pending_invitations": "No pending invitations", + "cancel_invitation": "Cancel Invitation", + "role": "Role", + "invited_by": "Invited By", + "sent_at": "Sent At" }, "reports": { "title": "Segnala", @@ -867,12 +908,65 @@ "update_app": "Aggiorna App", "backup": "Backup", "file_disk": "Disco File", + "fonts": "Font Packages", "custom_fields": "Campi personalizzati", "payment_modes": "Modalità di Pagamento", "notes": "Note", "exchange_rate": "Tasso di cambio", "address_information": "Indirizzo", - "pdf_generation": "Generazione PDF" + "pdf_generation": "Generazione PDF", + "appearance": "Appearance", + "module_configuration": "Module Configuration", + "ai_configuration": "AI Configuration" + }, + "appearance": { + "title": "Appearance", + "description": "Customize how the application looks and feels.", + "sidebar_group_labels": "Show sidebar group labels", + "sidebar_group_labels_desc": "Display section headers like Documents, Administration, and Modules in the sidebar navigation." + }, + "ai": { + "title": "AI Configuration", + "description": "Configure the AI provider used for chat assistance and text generation. AI is opt-in — leave disabled if you don't want these features.", + "openrouter": "OpenRouter", + "enable": "Enable AI features", + "enable_help": "When disabled, the AI chat drawer and WYSIWYG text-generation button are hidden everywhere in the app.", + "driver": "AI Provider", + "api_key": "API Key", + "api_key_help": "Your API key is encrypted before being stored.", + "base_url": "Base URL", + "base_url_help": "Leave blank to use the provider's default endpoint.", + "roles": "AI Roles", + "roles_help": "Pick which AI capabilities are available. Each role uses a specific model.", + "chat": "Chat Assistant", + "chat_help": "Natural-language Q&A over your company's data via tool-calling.", + "chat_model": "Chat model", + "text_generation": "Text Generation", + "text_generation_help": "One-shot text generation for invoice notes and email bodies.", + "text_generation_model": "Text generation model", + "suggested_models": "Suggested models", + "test_connection": "Test Connection", + "test_success": "Connection successful.", + "test_failed": "Connection test failed: {error}", + "saved": "AI configuration saved successfully.", + "use_custom_ai_config": "Use custom AI configuration", + "use_custom_ai_config_desc": "Enable this to override the global AI configuration for this company.", + "using_global_ai_config": "This company is using the global AI configuration. Enable the toggle above to configure a custom provider.", + "company_enabled": "AI enabled for this company", + "company_enabled_desc": "Turn off to disable all AI features for this company regardless of the global setting.", + "installer_title": "AI Assistant", + "installer_description": "Optionally enable AI chat and text generation now. You can change this later in Admin → Settings → AI Configuration.", + "errors": { + "invalid_key": "The API key is invalid.", + "rate_limited": "The provider rate limit was hit. Please try again shortly.", + "server_error": "The AI provider returned an error. Check your configuration and try again.", + "model_not_found": "The requested model is not available on this provider.", + "missing_api_key": "An API key is required to test the connection.", + "ai_disabled": "AI is not enabled for this company.", + "chat_disabled": "The chat assistant is not enabled for this company.", + "text_generation_disabled": "Text generation is not enabled for this company.", + "missing_model": "No model is configured." + } }, "address_information": { "section_description": " Puoi aggiornare le informazioni sul tuo indirizzo utilizzando il modulo sottostante." @@ -908,19 +1002,48 @@ "port": "Mail - Porta", "driver": "Driver Mail", "secret": "Segreto", + "scheme": "Scheme", + "url": "URL", + "timeout": "Timeout", + "local_domain": "EHLO Domain", "mailgun_secret": "Mailgun Secret", "mailgun_domain": "Dominio", "mailgun_endpoint": "Endpoint Mailgun", + "mailgun_scheme": "Mailgun Scheme", "ses_secret": "Segreto SES", "ses_key": "Chiave SES", "ses_region": "Regione AWS", + "postmark_token": "Postmark Token", + "postmark_message_stream_id": "Message Stream ID", + "sendmail_path": "Sendmail Path", "password": "Password Email", "username": "Nome Utente Email", "mail_config": "Configurazione Mail", + "mail_config_updated": "Mail configuration updated successfully", "from_name": "Nome Mittente Mail", "from_mail": "Indirizzo Mittente Mail", "encryption": "Tipo di cifratura Mail", - "mail_config_desc": "Di seguito è riportato il modulo per Configurare il driver di posta elettronica per l'invio di e-mail dall'app. È anche possibile configurare fornitori di terze parti come Sendgrid, SES ecc." + "mail_config_desc": "Di seguito è riportato il modulo per Configurare il driver di posta elettronica per l'invio di e-mail dall'app. È anche possibile configurare fornitori di terze parti come Sendgrid, SES ecc.", + "company_mail_config": "Mail Configuration", + "company_mail_config_desc": "Configure a custom mail driver for this company. When enabled, this overrides the global mail configuration.", + "company_mail_config_updated": "Company mail configuration updated successfully", + "use_custom_mail_config": "Use Custom Mail Configuration", + "use_custom_mail_config_desc": "Enable this to use a company-specific mail configuration instead of the global settings.", + "using_global_mail_config": "This company is using the global mail configuration. Enable the toggle above to configure a custom mail driver.", + "basic_settings": "Basic Settings", + "advanced_settings": "Advanced Settings", + "show_advanced_settings": "Show Advanced Settings", + "hide_advanced_settings": "Hide Advanced Settings", + "native_mail_desc": "Use PHP's native mail transport. Delivery is handled by the server's PHP mail configuration.", + "sendmail_desc": "Use the system sendmail binary for delivery. You can override the command path in Advanced Settings.", + "drivers": { + "smtp": "SMTP", + "mail": "PHP Mail", + "sendmail": "Sendmail", + "ses": "Amazon SES", + "mailgun": "Mailgun", + "postmark": "Postmark" + } }, "pdf": { "title": "Configurazione PDF", @@ -953,6 +1076,7 @@ "updated_message": "Informazioni azienda aggiornate con successo.", "delete_company": "Elimina Azienda", "delete_company_description": "Una volta eliminata la tua azienda, perderai tutti i dati e i file associati in modo permanente.", + "danger_zone": "Danger Zone", "are_you_absolutely_sure": "Sei assolutamente sicuro?", "delete_company_modal_desc": "Questa azione non può essere annullata. Questo eliminerà definitivamente {company} e tutti i suoi dati associati.", "delete_company_modal_label": "Digita {company} per confermare" @@ -1141,9 +1265,15 @@ "password": "Password", "confirm_password": "Conferma Password", "account_settings": "Impostazioni Account", + "general": "General", + "general_description": "Update your name, email and language preference.", + "security": "Security", + "security_description": "Change your password.", + "profile_picture_description": "Upload or remove your profile photo.", "save": "Salva", "section_description": "Puoi aggiornare nome email e password utilizzando il modulo qui sotto.", - "updated_message": "Impostazioni account aggiornate con successo" + "updated_message": "Impostazioni account aggiornate con successo", + "default_language": "Default (Company Language)" }, "user_profile": { "name": "Nome", @@ -1168,6 +1298,7 @@ "description": "Gestisci i ruoli e i permessi di questa azienda", "save": "Salva", "add_new_role": "Aggiungi Nuovo Ruolo", + "system_role": "System Role", "role_name": "Nome Ruolo", "added_on": "Aggiunto il", "add_role": "Aggiungi Ruolo", @@ -1315,6 +1446,19 @@ "december_november": "Dicembre - Novembre" } }, + "fonts": { + "title": "Font Packages", + "description": "These font packages are used exclusively when generating PDF documents. The bundled Noto Sans covers Latin, Greek and Cyrillic scripts. Install the packages below to render Hebrew, Arabic, Persian, Urdu, Hindi (Devanagari), Thai or East Asian (CJK) characters in your PDFs.", + "bundled_info": "Bundled font: Noto Sans (Latin / Greek / Cyrillic). Install additional packages below for Hebrew, Arabic, Persian, Hindi, Thai or CJK support.", + "installed": "Installed", + "bundled": "Bundled", + "install": "Install", + "downloading": "Downloading...", + "download_started": "Downloading {name}. This may take a moment.", + "download_complete": "{name} installed successfully. PDFs will now use this font.", + "download_failed": "Failed to download {name}. Please try again.", + "no_packages": "No additional font packages available." + }, "update_app": { "title": "Aggiorna App", "description": "Puoi facilmente aggiornare l'app. Aggiorna cliccando sul bottone qui sotto", @@ -1333,6 +1477,7 @@ "unzipping_package": "Pacchetto di decompressione", "copying_files": "Copia dei file", "deleting_files": "Eliminazione dei file inutilizzati", + "cleaning_stale_files": "Cleaning stale files", "running_migrations": "Esecuzione delle migrazioni", "finishing_update": "Aggiornamento di finitura", "update_failed": "Aggiornamento non riuscito", @@ -1425,7 +1570,18 @@ "deleted_message": "Disco file eliminato con successo", "disk_variables_save_successfully": "Disco Configurato Con successo", "disk_variables_save_error": "Configurazione disco fallita.", - "invalid_disk_credentials": "Credenziali del disco selezionato non valide" + "invalid_disk_credentials": "Credenziali del disco selezionato non valide", + "disk_assignments": "Disk Assignments", + "disk_assignments_description": "Configure which disk is used for different types of file storage.", + "media_storage": "Media Storage", + "media_storage_description": "Used for expense receipts, avatars, and company logos.", + "pdf_storage": "PDF Storage", + "pdf_storage_description": "Used for generated invoice, estimate, and payment PDFs.", + "backup_storage": "Backup Storage", + "backup_storage_description": "Used for application backups.", + "purposes_saved": "Disk assignments saved successfully", + "local_root_hint": "Path is relative to storage/app/. For example, entering \"backups\" will store files in storage/app/backups/.", + "change_disk_warning": "Changing disk assignments will only affect new uploads. Existing files will remain on their original disk and will continue to be accessible. If you need to move existing files, use the command: php artisan media:secure" }, "taxations": { "add_billing_address": "Inserisci l'indirizzo di Fatturazione", @@ -1491,6 +1647,7 @@ "db_name": "Database Nome", "db_path": "Percorso del database", "overwrite": "Sovrascrivi database esistente e procedi", + "overwrite_confirm_desc": "This will permanently wipe the selected database before installation continues. Make sure you do not need any existing data.", "desc": "Crea un database sul tuo server e imposta le credenziali utilizzando il modulo sottostante." }, "permissions": { @@ -1520,18 +1677,41 @@ "port": "Mail - Porta", "driver": "Driver Mail", "secret": "Segreto", + "scheme": "Scheme", + "url": "URL", + "timeout": "Timeout", + "local_domain": "EHLO Domain", "mailgun_secret": "Segreto Mailgun", "mailgun_domain": "Dominio", "mailgun_endpoint": "Endpoint Mailgun", + "mailgun_scheme": "Mailgun Scheme", "ses_secret": "Segreto SES", + "ses_region": "AWS Region", "ses_key": "Chiave SES", + "postmark_token": "Postmark Token", + "postmark_message_stream_id": "Message Stream ID", + "sendmail_path": "Sendmail Path", "password": "Password Email", "username": "Nome Utente Email", "mail_config": "Configurazione Mail", "from_name": "Nome mittente mail", "from_mail": "Indirizzo mittente mail", "encryption": "Tipo di cifratura Mail", - "mail_config_desc": "Di seguito è riportato il modulo per la configurazione del driver di posta elettronica per l'invio di email dall'app. È anche possibile configurare provider di terze parti come Sendgrid, SES ecc." + "mail_config_desc": "Di seguito è riportato il modulo per la configurazione del driver di posta elettronica per l'invio di email dall'app. È anche possibile configurare provider di terze parti come Sendgrid, SES ecc.", + "basic_settings": "Basic Settings", + "advanced_settings": "Advanced Settings", + "show_advanced_settings": "Show Advanced Settings", + "hide_advanced_settings": "Hide Advanced Settings", + "native_mail_desc": "Use PHP's native mail transport. Delivery is handled by the server's PHP mail configuration.", + "sendmail_desc": "Use the system sendmail binary for delivery. You can override the command path in Advanced Settings.", + "drivers": { + "smtp": "SMTP", + "mail": "PHP Mail", + "sendmail": "Sendmail", + "ses": "Amazon SES", + "mailgun": "Mailgun", + "postmark": "Postmark" + } }, "req": { "system_req": "Requisiti di Sistema", @@ -1660,7 +1840,7 @@ "pdf_total_tax_label": "TOTALE IMPOSTA", "pdf_tax_types_label": "Tipi di Tasse", "pdf_expenses_label": "Uscite", - "pdf_expense_group_total_label": "Totale gruppo:", + "pdf_expense_group_total_label": "Group total:", "pdf_bill_to": "Fattura a,", "pdf_ship_to": "Invia a,", "pdf_received_from": "Ricevuto da:", @@ -1677,5 +1857,57 @@ "mail_view_payment": "Mostra pagamento", "notification_view_estimate": "[Notification] Preventivo visualizzato", "notification_view_invoice": "[Notification] Fattura visualizzata", - "You have received a new invoice from {COMPANY_NAME}.
Please download using the button below:": "Hai ricevuto una nuova fattura da {COMPANY_NAME}.
Si prega di scaricare utilizzando il pulsante sottostante:" + "You have received a new invoice from {COMPANY_NAME}.
Please download using the button below:": "Hai ricevuto una nuova fattura da {COMPANY_NAME}.
Si prega di scaricare utilizzando il pulsante sottostante:", + "administration": { + "companies": { + "title": "All Companies", + "edit_company": "Edit Company", + "company_name": "Company Name", + "owner": "Owner", + "address": "Address", + "updated_message": "Company updated successfully", + "no_companies": "No companies found", + "list_description": "Manage all companies across the system" + }, + "settings": { + "title": "Global Settings" + }, + "users": { + "title": "All Users", + "edit_user": "Edit User", + "role": "Role", + "no_users": "No users found", + "list_description": "View all users across the system", + "updated_message": "User updated successfully", + "impersonate": "Impersonate", + "impersonate_confirm": "You are about to impersonate {name}. You will be logged in as this user with a temporary session that expires in 2 hours. This action is logged.", + "impersonating_banner": "You are currently impersonating a user. All actions are logged.", + "stop_impersonating": "Stop Impersonating" + } + }, + "ai": { + "chat": { + "title": "AI Assistant", + "new_conversation": "New conversation", + "no_conversations": "No conversations yet.", + "untitled": "Untitled", + "empty_state": "Ask me anything about your invoices, customers, payments, or expenses.", + "thinking": "Thinking…", + "send": "Send", + "sending": "Sending…", + "input_placeholder": "Ask about your invoices, customers, or payments…" + }, + "generate": { + "title": "AI Text Generation", + "prompt_label": "What should the AI write?", + "prompt_placeholder": "e.g. a polite late-payment reminder for an invoice that's 10 days overdue", + "use_current_as_context": "Use current content as context", + "use_context_help": "When enabled, the AI will see the editor's current text and can rewrite or extend it.", + "preview": "Preview", + "generate": "Generate", + "regenerate": "Regenerate", + "insert": "Insert", + "replace": "Replace" + } + } }