Improved a comment for translators.
[timetracker.git] / WEB-INF / resources / it.lang.php
index 739dc7f..6df19a3 100644 (file)
@@ -31,7 +31,7 @@
 
 // Note to translators: Use proper capitalization rules for your language.
 
-$i18n_language = 'Italiano';
+$i18n_language = 'Italian (Italiano)';
 $i18n_months = array('Gennaio', 'Febbraio', 'Marzo', 'Aprile', 'Maggio', 'Giugno', 'Luglio', 'Agosto', 'Settembre', 'Ottobre', 'Novembre', 'Dicembre');
 $i18n_weekdays = array('Domenica', 'Lunedì', 'Martedì', 'Mercoledì', 'Giovedì', 'Venerdì', 'Sabato');
 $i18n_weekdays_short = array('Do', 'Lu', 'Ma', 'Me', 'Gi', 'Ve', 'Sa');
@@ -56,7 +56,7 @@ $i18n_key_words = array(
 'menu.tasks' => 'Compiti',
 'menu.users' => 'Utenti',
 'menu.teams' => 'Gruppi',
-'menu.export' => 'Esportazione', // TODO: is this correct? Also, I auto-translated some other terms in menu section. Check for accuracy.
+'menu.export' => 'Esportazione',
 'menu.clients' => 'Clienti',
 'menu.options' => 'Opzioni',
 
@@ -75,16 +75,20 @@ $i18n_key_words = array(
 'error.not_equal' => 'Il campo "{0}" non è uguale al campo "{1}".',
 'error.interval' => 'Il campo "{0}" deve essere maggiore di "{1}".',
 'error.project' => 'Seleziona il progetto.',
-'error.task' => 'Seleziona compito.', // TODO: is this correct?
+'error.task' => 'Seleziona compito.',
 'error.client' => 'Seleziona il cliente.',
 'error.report' => 'Seleziona rapporto.',
 'error.record' => 'Seleziona record.',
 'error.auth' => 'Login o password errati.',
 'error.user_exists' => 'Esiste già un utente con questo username.',
+// TODO: translate the following.
+// 'error.object_exists' => 'Object with this name already exists.',
 'error.project_exists' => 'Esiste già un progetto con questo nome.',
-'error.task_exists' => 'Esiste già un compito con questo nome.', // TODO: is this correct? "un compito"?
+'error.task_exists' => 'Esiste già un compito con questo nome.',
 'error.client_exists' => 'Esiste già un cliente con questo nome.',
 'error.invoice_exists' => 'Esiste già una fattura con questo numero.',
+// TODO: translate the following.
+// 'error.role_exists' => 'Role with this rank already exists.',
 'error.no_invoiceable_items' => 'Non ci sono voci fatturabili.',
 'error.no_login' => 'Non esiste un utente con questo username.',
 'error.no_teams' => 'Il database è vuoto. Loggati come amministratore e crea un nuovo gruppo.',
@@ -104,18 +108,13 @@ $i18n_key_words = array(
 'button.copy' => 'Copia',
 'button.cancel' => 'Cancella',
 'button.submit' => 'Invia',
-'button.add_user' => 'Aggiungi utente',
-'button.add_project' => 'Aggiungi progetto',
-'button.add_task' => 'Aggiungi compito',
-'button.add_client' => 'Aggiungi cliente',
-'button.add_invoice' => 'Aggiungi fattura',
-'button.add_option' => 'Aggiungi opzione',
 'button.add' => 'Aggiungi',
+'button.delete' => 'Elimina',
 'button.generate' => 'Genera',
 'button.reset_password' => 'Reset password',
 'button.send' => 'Invia',
 'button.send_by_email' => 'Invia tramite e-mail',
-'button.create_team' => 'Crea team',
+'button.create_team' => 'Crea gruppo',
 'button.export' => 'Esporta gruppo',
 'button.import' => 'Importa gruppo',
 'button.close' => 'Chiudi',
@@ -141,6 +140,8 @@ $i18n_key_words = array(
 'label.end_date' => 'Data fine',
 'label.user' => 'Utente',
 'label.users' => 'Utenti',
+// TODO: translate the following.
+// 'label.roles' => 'Roles',
 'label.client' => 'Cliente',
 'label.clients' => 'Clienti',
 'label.option' => 'Opzion',
@@ -157,6 +158,8 @@ $i18n_key_words = array(
 'label.notes' => 'Note',
 'label.item' => 'Voce',
 'label.cost' => 'Costo',
+// TODO: translate the following.
+// 'label.ip' => 'IP',
 'label.day_total' => 'Totale giornaliero',
 'label.week_total' => 'Totale settimanale',
 'label.month_total' => 'Totale mensile',
@@ -184,7 +187,7 @@ $i18n_key_words = array(
 'label.client_address' => 'Indirizzo cliente',
 'label.or' => 'o',
 'label.error' => 'Errore',
-'label.ldap_hint' => 'Digita il tuo <b>Login Windows</b> e la tua <b>password</b> nei campi qui sotto.', // TODO: il tuo and then la tua? Improve?
+'label.ldap_hint' => 'Digita il tuo <b>Login Windows</b> e la tua <b>password</b> nei campi qui sotto.',
 'label.required_fields' => '* campi obbligatori',
 'label.on_behalf' => 'a favore di',
 'label.role_manager' => '(manager)',
@@ -198,11 +201,11 @@ $i18n_key_words = array(
 'label.custom_fields' => 'Campi personalizzati',
 'label.monthly_quotas' => 'Quote mensili',
 'label.type' => 'Tipo',
-'label.type_dropdown' => 'scelta multipla', // TODO: translation looks incorrect, a dropdown control is a single choice.
+'label.type_dropdown' => 'menu a tendina',
 'label.type_text' => 'testo',
 'label.required' => 'Obbligatorio',
 'label.fav_report' => 'Rapporto preferito',
-// 'label.cron_schedule' => 'Cron schedule', // TODO: how about "Programma cron" here?
+'label.schedule' => 'Programma',
 'label.what_is_it' => 'Cosa è?',
 'label.expense' => 'Spesa',
 'label.quantity' => 'Quantità',
@@ -245,13 +248,18 @@ $i18n_key_words = array(
 'title.edit_project' => 'Modifica progetto',
 'title.delete_project' => 'Elimina progetto',
 'title.tasks' => 'Compiti',
-'title.add_task' => 'Aggiungi compito', // TODO: is this correct?
+'title.add_task' => 'Aggiungi compito',
 'title.edit_task' => 'Modifica compito',
 'title.delete_task' => 'Eliminazione compito',
 'title.users' => 'Utenti',
 'title.add_user' => 'Crea utente',
 'title.edit_user' => 'Modifica utente',
 'title.delete_user' => 'Elimina utente',
+// TODO: translate the following.
+// 'title.roles' => 'Roles',
+// 'title.add_role' => 'Adding Role',
+// 'title.edit_role' => 'Editing Role',
+// 'title.delete_role' => 'Deleting Role',
 'title.clients' => 'Clienti',
 'title.add_client' => 'Aggiungi cliente',
 'title.edit_client' => 'Modifica cliente',
@@ -281,6 +289,7 @@ $i18n_key_words = array(
 // It is also a name for the Locking plugin on the Team profile page.
 'title.locking' => 'Bloccaggio',
 'title.week_view' => 'Vista settimanale',
+// 'title.swap_roles' => 'Swapping Roles',
 
 // Section for common strings inside combo boxes on forms. Strings shared between forms shall be placed here.
 // Strings that are used in a single form must go to the specific form section.
@@ -296,24 +305,20 @@ $i18n_key_words = array(
 'dropdown.previous_month' => 'mese scorso',
 'dropdown.selected_month' => 'mese',
 'dropdown.current_year' => 'quest\\\'anno',
-// TODO: translate the following.
-// 'dropdown.previous_year' => 'previous year',
+'dropdown.previous_year' => 'anno precedente',
 'dropdown.selected_year' => 'anno',
 'dropdown.all_time' => 'tutto il tempo',
 'dropdown.projects' => 'progetti',
-// TODO: translate the following.
-// 'dropdown.tasks' => 'tasks',
+'dropdown.tasks' => 'compiti',
 'dropdown.clients' => 'clienti',
-// TODO: translate the following.
-// 'dropdown.select' => '--- select ---',
+'dropdown.select' => '--- seleziona ---',
 'dropdown.select_invoice' => '--- seleziona la fattura ---',
 'dropdown.status_active' => 'attivo',
 'dropdown.status_inactive' => 'inattivo',
-// TODO: translate the following.
-// 'dropdown.delete' => 'delete',
-// 'dropdown.do_not_delete' => 'do not delete',
-// 'dropdown.paid' => 'paid',
-// 'dropdown.not_paid' => 'not paid',
+'dropdown.delete' => 'elimina',
+'dropdown.do_not_delete' => 'non eliminare',
+'dropdown.paid' => 'pagato',
+'dropdown.not_paid' => 'non pagato',
 
 // Below is a section for strings that are used on individual forms. When a string is used only on one form it should be placed here.
 // One exception is for closely related forms such as "Time" and "Editing Time Record" with similar controls. In such cases
@@ -322,45 +327,39 @@ $i18n_key_words = array(
 
 // Login form. See example at https://timetracker.anuko.com/login.php.
 'form.login.forgot_password' => 'Password dimenticata?',
-// TODO: translate the following.
-// 'form.login.about' =>'Anuko <a href="https://www.anuko.com/lp/tt_2.htm" target="_blank">Time Tracker</a> is a simple, easy to use, open source time tracking system.',
+'form.login.about' => 'Anuko <a href="https://www.anuko.com/lp/tt_2.htm" target="_blank">Time Tracker</a> è un sistema semplice e open source per registrare i tempi di lavoro.',
 
 // Resetting Password form. See example at https://timetracker.anuko.com/password_reset.php.
-// TODO: improve form.reset_password.message by specifying that it was sent "by email".
-// English form: 'form.reset_password.message' => 'Password reset request sent by email.',
-'form.reset_password.message' => 'Richiesta di reset pasword inviata.',
-// TODO: translate the following.
-// 'form.reset_password.email_subject' => 'Anuko Time Tracker password reset request',
-// 'form.reset_password.email_body' => "Dear User,\n\nSomeone, possibly you, requested your Anuko Time Tracker password reset. Please visit this link if you want to reset your password.\n\n%s\n\nAnuko Time Tracker is a simple, easy to use, open source time tracking system. Visit https://www.anuko.com for more information.\n\n",
+'form.reset_password.message' => 'Richiesta di reset password inviata via mail.',
+'form.reset_password.email_subject' => 'Richiesta reset password per Anuko Time Tracker',
+// TODO: English string has changed. "from IP added. Re-translate the beginning.
+// 'form.reset_password.email_body' => "Dear User,\n\nSomeone from IP %s requested your Anuko Time Tracker password reset. Please visit this link if you want to reset your password.\n\n%s\n\nAnuko Time Tracker is a simple, easy to use, open source time tracking system. Visit https://www.anuko.com for more information.\n\n",
+// "IP %s" probably sounds awkward.
+'form.reset_password.email_body' => "Caro utente,\n\n qualcuno, IP %s, ha richiesto di reimpostare la tua password per Anuko Time Tracker. Per favore visita questo link per reimpostare la tua password.\n\n%s\n\nAnuko Time Tracker è un sistema semplice e open source per registrare i tempi di lavoro. Visita https://www.anuko.com per maggiori informazioni.\n\n",
 
 // Changing Password form. See example at https://timetracker.anuko.com/password_change.php?ref=1.
-// TODO: translate the following.
-// 'form.change_password.tip' => 'Type new password and click on Save.',
+'form.change_password.tip' => 'Digita una nuova password e clicca su Salva.',
 
 // Time form. See example at https://timetracker.anuko.com/time.php.
-// TODO: translate the following.
-// 'form.time.duration_format' => '(hh:mm or 0.0h)',
+'form.time.duration_format' => '(oo:mm o 0.0h)',
 'form.time.billable' => 'Fatturabile',
-// TODO: translate the following.
-// 'form.time.uncompleted' => 'Uncompleted',
-// 'form.time.remaining_quota' => 'Remaining quota',
-// 'form.time.over_quota' => 'Over quota',
+'form.time.uncompleted' => 'Incompleti',
+'form.time.remaining_quota' => 'Quota rimanente',
+'form.time.over_quota' => 'Sopra quota',
 
 // Editing Time Record form. See example at https://timetracker.anuko.com/time_edit.php (get there by editing an uncompleted time record).
 'form.time_edit.uncompleted' => 'Questo record è stato salvato con la sola ora di inzio attività. Non è un errore.',
 
 // Week view form. See example at https://timetracker.anuko.com/week.php.
-// TODO: translate the following.
-// 'form.week.new_entry' => 'New entry',
+'form.week.new_entry' => 'Nuova voce',
 
 // Reports form. See example at https://timetracker.anuko.com/reports.php
-// TODO: translate the following.
 'form.reports.save_as_favorite' => 'Salva nei preferiti',
 'form.reports.confirm_delete' => 'Sei sicuro di voler cancellare questo report dai preferiti?',
 'form.reports.include_billable' => 'fatturabile',
 'form.reports.include_not_billable' => 'non fatturabile',
-// 'form.reports.include_invoiced' => 'invoiced',
-// 'form.reports.include_not_invoiced' => 'not invoiced',
+'form.reports.include_invoiced' => 'fatturato',
+'form.reports.include_not_invoiced' => 'non fatturato',
 'form.reports.select_period' => 'Seleziona il periodo di tempo',
 'form.reports.set_period' => 'oppure setta le date',
 'form.reports.show_fields' => 'Mostra i campi',
@@ -370,15 +369,13 @@ $i18n_key_words = array(
 'form.reports.group_by_user' => 'utente',
 'form.reports.group_by_client' => 'cliente',
 'form.reports.group_by_project' => 'progetto',
-// TODO: translate the following.
-// 'form.reports.group_by_task' => 'task',
+'form.reports.group_by_task' => 'compito',
 'form.reports.totals_only' => 'Solo i totali',
 
 // Report form. See example at https://timetracker.anuko.com/report.php
 // (after generating a report at https://timetracker.anuko.com/reports.php).
 'form.report.export' => 'Esporta',
-// TODO: translate the following.
-// 'form.report.assign_to_invoice' => 'Assign to invoice',
+'form.report.assign_to_invoice' => 'Assegna alla fattura',
 
 // Invoice form. See example at https://timetracker.anuko.com/invoice.php
 // (you can get to this form after generating a report).
@@ -386,95 +383,122 @@ $i18n_key_words = array(
 'form.invoice.person' => 'Persona',
 
 // Deleting Invoice form. See example at https://timetracker.anuko.com/invoice_delete.php
-// TODO: translate the following.
-// 'form.invoice.invoice_to_delete' => 'Invoice to delete',
-// 'form.invoice.invoice_entries' => 'Invoice entries',
-// 'form.invoice.confirm_deleting_entries' => 'Please confirm deleting invoice entries from Time Tracker.',
+'form.invoice.invoice_to_delete' => 'Fattura da eliminare',
+'form.invoice.invoice_entries' => 'Voci fattura',
+'form.invoice.confirm_deleting_entries' => 'Per favore conferma di voler eliminare le voci fattura da Time Tracker.',
 
 // Charts form. See example at https://timetracker.anuko.com/charts.php
-// TODO: translate the following.
-// 'form.charts.interval' => 'Interval',
+'form.charts.interval' => 'Intervallo',
 'form.charts.chart' => 'Grafico',
 
 // Projects form. See example at https://timetracker.anuko.com/projects.php
-// TODO: translate the following.
-//'form.projects.active_projects' => 'Active Projects',
-// 'form.projects.inactive_projects' => 'Inactive Projects',
+'form.projects.active_projects' => 'Progetti attivi',
+'form.projects.inactive_projects' => 'Progetti inattivi',
 
 // Tasks form. See example at https://timetracker.anuko.com/tasks.php
-// TODO: translate the following.
-// 'form.tasks.active_tasks' => 'Active Tasks',
-// 'form.tasks.inactive_tasks' => 'Inactive Tasks',
+'form.tasks.active_tasks' => 'Compiti attivi',
+'form.tasks.inactive_tasks' => 'Compiti inattivi',
 
 // Users form. See example at https://timetracker.anuko.com/users.php
-// TODO: translate the following.
-// 'form.users.active_users' => 'Active Users',
-// 'form.users.inactive_users' => 'Inactive Users',
-// 'form.users.uncompleted_entry' => 'User has an uncompleted time entry',
-// 'form.users.role' => 'Role',
+'form.users.active_users' => 'Utenti attivi',
+'form.users.inactive_users' => 'Utenti inattivi',
+'form.users.uncompleted_entry' => 'Questo utente ha un record temporale incompleto',
+'form.users.role' => 'Ruolo',
 'form.users.manager' => 'Manager',
 'form.users.comanager' => 'Co-manager',
 'form.users.rate' => 'Costo',
 'form.users.default_rate' => 'Costo per ora di default',
 
-// Clients form. See example at https://timetracker.anuko.com/clients.php
+// Roles form. See example at https://timetracker.anuko.com/roles.php
 // TODO: translate the following.
-// 'form.clients.active_clients' => 'Active Clients',
-// 'form.clients.inactive_clients' => 'Inactive Clients',
+// 'form.roles.active_roles' => 'Active Roles',
+// 'form.roles.inactive_roles' => 'Inactive Roles',
+// 'form.roles.rank' => 'Rank',
+// 'form.roles.rights' => 'Rights',
+// 'form.roles.assigned' => 'Assigned',
+// 'form.roles.not_assigned' => 'Not assigned',
+
+// Clients form. See example at https://timetracker.anuko.com/clients.php
+'form.clients.active_clients' => 'Clienti attivi',
+'form.clients.inactive_clients' => 'Clienti inattivi',
 
 // Deleting Client form. See example at https://timetracker.anuko.com/client_delete.php
-// TODO: translate the following.
-// 'form.client.client_to_delete' => 'Client to delete',
-// 'form.client.client_entries' => 'Client entries',
+'form.client.client_to_delete' => 'Client da eliminare',
+'form.client.client_entries' => 'Voci client',
 
 // Exporting Team Data form. See example at https://timetracker.anuko.com/export.php
-// TODO: translate the following.
-'form.export.hint' => 'Puoi esporate tutti i dati dei team in un file xml. Questo può essere utile se devi trasferire i dati da un server ad un altro.',
+'form.export.hint' => 'Puoi esporate tutti i dati dei gruppo in un file xml. Questo può essere utile se devi trasferire i dati da un server ad un altro.',
 'form.export.compression' => 'Compressione',
-// TODO: translate the following.
-// 'form.export.compression_none' => 'none',
-// 'form.export.compression_bzip' => 'bzip',
+'form.export.compression_none' => 'niente',
+'form.export.compression_bzip' => 'bzip',
 
 // Importing Team Data form. See example at https://timetracker.anuko.com/imort.php (login as admin first).
-'form.import.hint' => 'Importa i dati del team da un file xml.',
+'form.import.hint' => 'Importa i dati del gruppo da un file xml.',
 'form.import.file' => 'Seleziona il file',
 'form.import.success' => 'Importazione eseguita con successo.',
 
 // Teams form. See example at https://timetracker.anuko.com/admin_teams.php (login as admin first).
-// TODO: translate the following.
-// 'form.teams.hint' =>  'Create a new team by creating a new team manager account.<br>You can also import team data from an xml file from another Anuko Time Tracker server (no login collisions are allowed).',
+'form.teams.hint' => 'Crea un nuovo gruppo creando un account gruppo manager.<br>Puoi anche importare i dati di un gruppo da un file xml esportato da un altro server Anuko Time Tracker (non sono ammessi login duplicati).',
 
 // Profile form. See example at https://timetracker.anuko.com/profile_edit.php.
+'form.profile.12_hours' => '12 ore',
+'form.profile.24_hours' => '24 ore',
+'form.profile.show_holidays' => 'Mostra vacanze',
+'form.profile.tracking_mode' => 'Modalità di registrazione',
+'form.profile.mode_time' => 'tempo',
+'form.profile.mode_projects' => 'progetti',
+'form.profile.mode_projects_and_tasks' => 'progetti e compiti',
+'form.profile.record_type' => 'Tipo di record',
+'form.profile.type_all' => 'tutto',
+'form.profile.type_start_finish' => 'inizio e fine',
+'form.profile.type_duration' => 'durata',
 // TODO: translate the following.
-// 'form.profile.12_hours' => '12 hours',
-// 'form.profile.24_hours' => '24 hours',
-// 'form.profile.tracking_mode' => 'Tracking mode',
-// 'form.profile.mode_time' => 'time',
-// 'form.profile.mode_projects' => 'projects',
-// 'form.profile.mode_projects_and_tasks' => 'projects and tasks',
-// 'form.profile.record_type' => 'Record type',
-// 'form.profile.type_all' => 'all',
-// 'form.profile.type_start_finish' => 'start and finish',
-// 'form.profile.type_duration' => 'duration',
-// 'form.profile.uncompleted_indicators' => 'Uncompleted indicators',
-// 'form.profile.uncompleted_indicators_none' => 'do not show',
-// 'form.profile.uncompleted_indicators_show' => 'show',
-// 'form.profile.plugins' => 'Plugins',
+// 'form.profile.punch_mode' => 'Punch mode',
+// 'form.profile.allow_overlap' => 'Allow overlap',
+// 'form.profile.future_entries' => 'Future entries',
+'form.profile.uncompleted_indicators' => 'Indicatori incompleti',
+'form.profile.plugins' => 'Plugin',
 
 // Mail form. See example at https://timetracker.anuko.com/report_send.php when emailing a report.
-// TODO: translate the following.
 'form.mail.from' => 'Da',
 'form.mail.to' => 'A',
-// 'form.mail.report_subject' => 'Time Tracker Report',
-// 'form.mail.footer' => 'Anuko Time Tracker is a simple, easy to use, open source<br>time tracking system. Visit <a href="https://www.anuko.com">www.anuko.com</a> for more information.',
-// 'form.mail.report_sent' => 'Report sent.',
+'form.mail.report_subject' => 'Rapporto Time Tracker',
+'form.mail.footer' => 'Anuko Time Tracker è un sistema semplice e open source <br>per registrare i tempi di lavoro. Visita <a href="https://www.anuko.com">www.anuko.com</a> per maggiori informazioni.',
+'form.mail.report_sent' => 'Rapporto inviato.',
 'form.mail.invoice_sent' => 'Fattura inviata.',
 
-// Quotas configuration form.
+// Quotas configuration form. See example at https://timetracker.anuko.com/quotas.php after enabling Monthly quotas plugin.
+'form.quota.year' => 'Anno',
+'form.quota.month' => 'Mese',
+'form.quota.quota' => 'Quota',
+'form.quota.workday_hours' => 'Ore lavorative in un giorno',
+'form.quota.hint' => 'Se i valori sono vuoti, le quote vengono calcolate automaticamente basandosi su ore giornaliere e vacanze.',
+
+// Swap roles form. See example at https://timetracker.anuko.com/swap_roles.php.
+// TODO: translate the following.
+// 'form.swap.swap_with' => 'Swap roles with',
+
+// Roles and rights. These strings are used in multiple places. Grouped here to provide consistent translations.
 // TODO: translate the following.
-// 'form.quota.year' => 'Year',
-// 'form.quota.month' => 'Month',
-// 'form.quota.quota' => 'Quota',
-// 'form.quota.workday_hours' => 'Hours in work day',
-// 'form.quota.hint' => 'If values are empty, quotas are calculated automatically based on workday hours and holidays.',
+// 'role.user.label' => 'User',
+// 'role.user.low_case_label' => 'user',
+// 'role.user.description' => 'A regular member without management rights.',
+// 'role.client.label' => 'Client',
+// 'role.client.low_case_label' => 'client',
+// 'role.client.description' => 'A client can view its own reports, charts, and invoices.',
+// 'role.supervisor.label' => 'Supervisor',
+// 'role.supervisor.low_case_label' => 'supervisor',
+// 'role.supervisor.description' => 'A person with a small set of management rights.',
+// 'role.comanager.label' => 'Co-manager',
+// 'role.comanager.low_case_label' => 'co-manager',
+// 'role.comanager.description' => 'A person with a big set of management functions.',
+// 'role.manager.label' => 'Manager',
+// 'role.manager.low_case_label' => 'manager',
+// 'role.manager.description' => 'Group manager. Can do most of things for a group.',
+// 'role.top_manager.label' => 'Top manager',
+// 'role.top_manager.low_case_label' => 'top manager',
+// 'role.top_manager.description' => 'Top group manager. Can do everything in a tree of groups.',
+// 'role.admin.label' => 'Administrator',
+// 'role.admin.low_case_label' => 'administrator',
+// 'role.admin.description' => 'Site adminsitrator.',
 );