A bit of cleanup in localization files.
[timetracker.git] / WEB-INF / resources / ca.lang.php
index 16d0b44..d28d319 100644 (file)
@@ -26,7 +26,7 @@
 // | https://www.anuko.com/time_tracker/credits.htm
 // +----------------------------------------------------------------------+
 
-// Note: escape apostrophes with THREE backslashes, like here:  choisir l\\\'option 
+// Note: escape apostrophes with THREE backslashes, like here:  choisir l\\\'option.
 // Other characters (such as double-quotes in http links, etc.) do not have to be escaped.
 
 $i18n_language = 'Català';
@@ -41,7 +41,7 @@ $i18n_key_words = array(
 // Menus.
 'menu.login' => 'Iniciar sessió',
 'menu.logout' => 'Finalitzar sessió',
-// TODO: translate the following:
+// TODO: translate the following.
 // 'menu.forum' => 'Forum',
 'menu.help' => 'Ajuda',
 // Note to translators: menu.create_team needs to be translated more accurately.
@@ -49,31 +49,31 @@ $i18n_key_words = array(
 'menu.profile' => 'Perfil',
 // 'menu.time' => 'Time',
 'menu.time' => 'El meu temps', // TODO: menu.time is no longer "My time", just "Time".
-// TODO: translate the following:
+// TODO: translate the following.
 // 'menu.expenses' => 'Expenses',
 'menu.reports' => 'Informes',
-// TODO: translate the following:
+// TODO: translate the following.
 // 'menu.charts' => 'Charts',
 'menu.projects' => 'Projectes',
-// TODO: translate the following:
+// TODO: translate the following.
 // 'menu.tasks' => 'Tasks',
 // 'menu.users' => 'Users',
 'menu.teams' => 'Equips',
-// TODO: translate the following:
+// TODO: translate the following.
 // 'menu.export' => 'Export',
 // 'menu.clients' => 'Clients',
 // 'menu.options' => 'Options',
+
 // Footer - strings on the bottom of most pages.
-// TODO: translate the following:
+// TODO: translate the following.
 // 'footer.contribute_msg' => 'You can contribute to Time Tracker in different ways.',
 // 'footer.credits' => 'Credits',
 // 'footer.license' => 'License',
 // 'footer.improve' => 'Contribute', // Translators: this could mean "Improve", if it makes better sense in your language.
-                                  // This is a link to a webpage that describes how to contribute to the project.
-                                                                 
+                                     // This is a link to a webpage that describes how to contribute to the project.
+
 // Error messages.
-// TODO: translate the following:
+// TODO: translate the following.
 // 'error.access_denied' => 'Access denied.',
 // 'error.sys' => 'System error.',
 'error.db' => 'Error de la Base de Dades.',
@@ -82,87 +82,281 @@ $i18n_key_words = array(
 'error.not_equal' => 'L\\\'Arxiu "{0}" no és igual al arxiu "{1}".',
 'error.interval' => 'Interval incorrecte', // TODO: English string changed to 'Field "{0}" must be greater than "{1}".', re-translate.
 'error.project' => 'Selleccionar Projecte',
-// TODO: translate the following:
+// TODO: translate the following.
 // 'error.task' => 'Select task.',
 // 'error.client' => 'Select client.',
 // 'error.report' => 'Select report.'
-
-// Refactoring needs to be done down from here to sync with English file.      
 'error.auth' => 'Usuari o parula de pas incorrecta',
-// Note to translators: this string needs to be translated.
-// 'error.user_exists' => 'user with this login already exists',
-'error.project_exists' => 'Ja existeix un projecte amb aquest nom',
-'error.activity_exists' => 'Ja existeix una activitat amb aquest nom',
-// TODO: translate error.client_exists.
-// 'error.client_exists' => 'client with this name already exists',
-// Note to translators: error.no_login needs to be properly translated (e-mail replaced with login).
-// 'error.no_login' => 'No existeix cap usuari amb aquest e-mail',
-'error.upload' => 'Error pujant l\\\'arxiu',
-// Note to translators: the 5 strings below are missing from the translation and must be added.
-// 'error.period_locked' => 'can\\\'t complete the operation. records older than a certain number of days cannot be created or modified. team manager defines this in the "Lock interval in days" value on the "Profile" page. set it to 0 to remove locking. <br><br>uncompleted records (with 0 or empty duration) can be deleted.',
-// 'error.mail_send' => 'error sending mail',
-// 'error.no_email' => 'no email associated with this login',
-// 'error.uncompleted_exists' => 'uncompleted entry already exists. close or delete it.',
-// 'error.goto_uncompleted' => 'go to uncompleted entry.',
-
-// labels for various buttons
+// TODO: translate the following.
+// 'error.user_exists' => 'User with this login already exists.',
+'error.project_exists' => 'Ja existeix un projecte amb aquest nom.',
+// TODO: translate the following.
+// 'error.task_exists' => 'Task with this name already exists.',
+// 'error.client_exists' => 'Client with this name already exists.',
+// 'error.invoice_exists' => 'Invoice with this number already exists.',
+// 'error.no_invoiceable_items' => 'There are no invoiceable items.',
+// 'error.no_login' => 'No user with this login.',
+// 'error.no_teams' => 'Your database is empty. Login as admin and create a new team.',
+'error.upload' => 'Error pujant l\\\'arxiu.',
+// TODO: translate the following.
+// 'error.range_locked' => 'Date range is locked.',
+// 'error.mail_send' => 'Error sending mail.',
+// 'error.no_email' => 'No email associated with this login.',
+// 'error.uncompleted_exists' => 'Uncompleted entry already exists. Close or delete it.',
+// 'error.goto_uncompleted' => 'Go to uncompleted entry.',
+// 'error.overlap' => 'Time interval overlaps with existing records.',
+// 'error.future_date' => 'Date is in future.',
+
+// Labels for buttons.
 'button.login' => 'Iniciar sessió',
 'button.now' => 'Ara',
-// 'button.set' => 'Establir',
 'button.save' => 'Guardar',
-'button.delete' => 'Eliminar',
+// TODO: translate the following.
+// 'button.copy' => 'Copy',
 'button.cancel' => 'Cancel·lar',
 'button.submit' => 'Enviar',
 'button.add_user' => 'Agregar usuari ',
 'button.add_project' => 'Agregar projecte',
-'button.add_activity' => 'Agregar activitat',
+// TODO: translate the following.
+// 'button.add_task' => 'Add task',
 'button.add_client' => 'Agregar client',
+// TODO: translate the folllowing:
+// 'button.add_invoice' => 'Add invoice',
+// 'button.add_option' => 'Add option',
 'button.add' => 'Agregar',
 'button.generate' => 'Generar',
-// Note to translators: button.reset_password needs an improved translation.
-'button.reset_password' => 'Anar',
+// TODO: translate the following.
+// 'button.reset_password' => 'Reset password',
 'button.send' => 'Enviar',
 'button.send_by_email' => 'Enviar per correu',
-'button.save_as_new' => 'Guardar com a nou',
 'button.create_team' => 'Crear grup',
 'button.export' => 'Exportar grup',
 'button.import' => 'Importar grup',
-'button.apply' => 'Aplicar',
+// TODO: translate the following.
+// 'button.close' => 'Close',
+// 'button.stop' => 'Stop',
 
-// labels for controls on various forms
-// TODO: translate label.team_name.
-// 'label.team_name' => 'team name',
+// Labels for controls on forms. Labels in this section are used on multiple forms.
+// TODO: translate the following.
+// 'label.team_name' => 'Team name',
+// 'label.address' => 'Address',
 'label.currency' => 'Moneda',
-// TODO: translate these 2 strings below.
-// 'label.manager_name' => 'manager name',
-// 'label.manager_login' => 'manager login',
-'label.name' => 'Nom',
-
+// TODO: translate the following.
+// 'label.manager_name' => 'Manager name',
+// 'label.manager_login' => 'Manager login',
+// 'label.person_name' => 'Name',
+// 'label.thing_name' => 'Name',
+// 'label.login' => 'Login',
 'label.password' => 'Paraula de pas',
 'label.confirm_password' => 'Confirmar paraula de pas',
-'label.email' => 'e-mail',
-// Translate the following string.
+'label.email' => 'E-mail',
+'label.date' => 'Data',
+// TODO: translate the following.
+// 'label.start_date' => 'Start date',
+// 'label.end_date' => 'End date',
+// 'label.user' => 'User',
+// 'label.users' => 'Users',
+// 'label.client' => 'Client',
+// 'label.clients' => 'Clients',
+// 'label.option' => 'Option',
+// 'label.invoice' => 'Invoice',
+// 'label.project' => 'Project',
+// 'label.projects' => 'Projects',
+// 'label.task' => 'Task',
+// 'label.tasks' => 'Tasks',
+// 'label.description' => 'Description',
+// 'label.start' => 'Start',
+// 'label.finish' => 'Finish',
+// 'label.duration' => 'Duration',
+// 'label.note' => 'Note',
+// 'label.item' => 'Item',
+// 'label.cost' => 'Cost',
+// 'label.day_total' => 'Day total',
+// 'label.week_total' => 'Week total',
+// 'label.month_total' => 'Month total',
+// 'label.today' => 'Today',
+// 'label.total_hours' => 'Total hours',
+// 'label.total_cost' => 'Total cost',
+// 'label.view' => 'View',
+// 'label.edit' => 'Edit',
+'label.delete' => 'Eliminar',
+// TODO: translate the following.
+// 'label.configure' => 'Configure',
+// 'label.select_all' => 'Select all',
+// 'label.select_none' => 'Deselect all',
+// 'label.id' => 'ID',
+// 'label.language' => 'Language',
+// 'label.decimal_mark' => 'Decimal mark',
+// 'label.date_format' => 'Date format',
+// 'label.time_format' => 'Time format',
+// 'label.week_start' => 'First day of week',
+// 'label.comment' => 'Comment',
+// 'label.status' => 'Status',
+// 'label.tax' => 'Tax',
+// 'label.subtotal' => 'Subtotal',
+// 'label.total' => 'Total',
+// 'label.client_name' => 'Client name',
+// 'label.client_address' => 'Client address',
+// 'label.or' => 'or',
+// 'label.error' => 'Error',
+// 'label.ldap_hint' => 'Type your <b>Windows login</b> and <b>password</b> in the fields below.',
+// 'label.required_fields' => '* - required fields',
+// 'label.on_behalf' => 'on behalf of',
+// 'label.role_manager' => '(manager)',
+// 'label.role_comanager' => '(co-manager)',
+'label.role_admin' => '(administrador)',
+// TODO: translate the following.
 // 'label.page' => 'Page',
+// 'label.condition' => 'Condition',
+// Labels for plugins (extensions to Time Tracker that provide additional features).
+// 'label.custom_fields' => 'Custom fields',
+// 'label.monthly_quotas' => 'Monthly quotas',
+// 'label.type' => 'Type',
+// 'label.type_dropdown' => 'dropdown',
+// 'label.type_text' => 'text',
+// 'label.required' => 'Required',
+'label.fav_report' => 'Report favorit',
+// 'label.cron_schedule' => 'Cron schedule',
+// 'label.what_is_it' => 'What is it?',
 
-"form.filter.project" => 'Projecte',
-"form.filter.filter" => 'Report favorit',
-"form.filter.filter_new" => 'Guardar com a favorit',
+// Form titles.
+'title.login' => 'Sessió iniciada',
+// TODO: translate the following.
+// 'title.teams' => 'Teams',
+// 'title.create_team' => 'Creating Team',
+// 'title.edit_team' => 'Editing Team',
+// 'title.delete_team' => 'Deleting Team',
+'title.reset_password' => 'Restablir paraula de pas',
+// TODO: translate the following.
+// 'title.change_password' => 'Changing Password',
+// 'title.time' => 'Time',
+// 'title.edit_time_record' => 'Editing Time Record',
+// 'title.delete_time_record' => 'Deleting Time Record',
+// 'title.expenses' => 'Expenses',
+// 'title.edit_expense' => 'Editing Expense Item',
+// 'title.delete_expense' => 'Deleting Expense Item',
+// 'title.reports' => 'Reports',
+// 'title.report' => 'Report',
+// 'title.send_report' => 'Sending Report',
+// 'title.invoice' => 'Invoice',
+// 'title.send_invoice' => 'Sending Invoice',
+// 'title.charts' => 'Charts',
+// 'title.projects' => 'Projects',
+// 'title.add_project' => 'Adding Project',
+// 'title.edit_project' => 'Editing Project',
+// 'title.delete_project' => 'Deleting Project',
+// 'title.tasks' => 'Tasks',
+// 'title.add_task' => 'Adding Task',
+// 'title.edit_task' => 'Editing Task',
+// 'title.delete_task' => 'Deleting Task',
+// 'title.users' => 'Users',
+// 'title.add_user' => 'Adding User',
+// 'title.edit_user' => 'Editing User',
+// 'title.delete_user' => 'Deleting User',
+// 'title.clients' => 'Clients',
+// 'title.add_client' => 'Adding Client',
+// 'title.edit_client' => 'Editing Client',
+// 'title.delete_client' => 'Deleting Client',
+// 'title.invoices' => 'Invoices',
+// 'title.add_invoice' => 'Adding Invoice',
+// 'title.view_invoice' => 'Viewing Invoice',
+// 'title.delete_invoice' => 'Deleting Invoice',
+// 'title.notifications' => 'Notifications',
+// 'title.add_notification' => 'Adding Notification',
+// 'title.edit_notification' => 'Editing Notification',
+// 'title.delete_notification' => 'Deleting Notification',
+// 'title.monthly_quotas' => 'Monthly Quotas',
+// 'title.export' => 'Exporting Team Data',
+// 'title.import' => 'Importing Team Data',
+// 'title.options' => 'Options',
+// 'title.profile' => 'Profile',
+// 'title.cf_custom_fields' => 'Custom Fields',
+// 'title.cf_add_custom_field' => 'Adding Custom Field',
+// 'title.cf_edit_custom_field' => 'Editing Custom Field',
+// 'title.cf_delete_custom_field' => 'Deleting Custom Field',
+// 'title.cf_dropdown_options' => 'Dropdown Options',
+// 'title.cf_add_dropdown_option' => 'Adding Option',
+// 'title.cf_edit_dropdown_option' => 'Editing Option',
+// 'title.cf_delete_dropdown_option' => 'Deleting Option',
+// NOTE TO TRANSLATORS: Locking is a feature to lock records from modifications (ex: weekly on Mondays we lock all previous weeks).
+// It is also a name for the Locking plugin on the Team profile page.
+// 'title.locking' => 'Locking',
 
-// login form attributes
-"form.login.title" => 'Sessió iniciada',
-"form.login.login" => 'e-mail',
+// 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.
+// TODO: translate the following.
+// 'dropdown.all' => '--- all ---',
+// 'dropdown.no' => '--- no ---',
+// NOTE TO TRANSLATORS: dropdown.this_day does not necessarily means "today". It means a specific ("this") day selected on calendar. See Charts.
+// 'dropdown.this_day' => 'this day',
+// 'dropdown.this_week' => 'this week',
+// 'dropdown.last_week' => 'last week',
+// 'dropdown.this_month' => 'this month',
+// 'dropdown.last_month' => 'last month',
+// 'dropdown.this_year' => 'this year',
+// 'dropdown.all_time' => 'all time',
+// 'dropdown.projects' => 'projects',
+// 'dropdown.tasks' => 'tasks',
+// 'dropdown.clients' => 'clients',
+// 'dropdown.select' => '--- select ---',
+// 'dropdown.select_invoice' => '--- select invoice ---',
+// 'dropdown.status_active' => 'active',
+// 'dropdown.status_inactive' => 'inactive',
+// 'dropdown.delete'=>'delete',
+// 'dropdown.do_not_delete'=>'do not delete',
 
-// password reminder form attributes
-"form.fpass.title" => 'Restablir paraula de pas',
-"form.fpass.login" => 'e-mail',
-"form.fpass.send_pass_str" => 's\\\'ha enviat la petició de restablir paraula de pas',
-"form.fpass.send_pass_subj" => 'Sol·licitud de restabliment de la paraula de pas de Anuko Time Tracker',
-// Note to translators: this string needs to be translated.
-// "form.fpass.send_pass_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.fpass.reset_comment" => "Per restablir la paraula de pas, si us plau escrigui-la i faci clic en guardar",
+// Login form. See example at https://timetracker.anuko.com/login.php.
+// TODO: translate the following.
+// 'form.login.forgot_password' => 'Forgot password?',
+// '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.',
+
+// Resetting Password form. See example at https://timetracker.anuko.com/password_reset.php.
+'form.reset_password.message' => 'S\\\'ha enviat la petició de restablir paraula de pas.',
+'form.reset_password.email_subject' => 'Sol·licitud de restabliment de la paraula de pas de Anuko Time Tracker',
+// TODO: translate the following.
+// '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",
+
+// Changing Password form. See example at https://timetracker.anuko.com/password_change.php?ref=1.
+'form.change_password.tip' => 'Per restablir la paraula de pas, si us plau escrigui-la i faci clic en guardar.',
+
+// 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.billable' => 'Billable',
+// 'form.time.uncompleted' => 'Uncompleted',
+// 'form.time.remaining_quota' => 'Remaining quota',
+// 'form.time.over_quota' => 'Over quota',
+
+// Editing Time Record form. See example at https://timetracker.anuko.com/time_edit.php (get there by editing an uncompleted time record).
+// TODO: translate the following.
+// 'form.time_edit.uncompleted' => 'This record was saved with only start time. It is not an error.',
+
+// Reports form. See example at https://timetracker.anuko.com/reports.php
+'form.reports.save_as_favorite' => 'Guardar com a favorit',
+// TODO: translate the following.
+// 'form.reports.confirm_delete' => 'Are you sure you want to delete this favorite report?',
+// 'form.reports.include_records' => 'Include records',
+// 'form.reports.include_billable' => 'billable',
+// 'form.reports.include_not_billable' => 'not billable',
+// 'form.reports.include_invoiced' => 'invoiced',
+// 'form.reports.include_not_invoiced' => 'not invoiced',
+// 'form.reports.select_period' => 'Select time period',
+// 'form.reports.set_period' => 'or set dates',
+// 'form.reports.show_fields' => 'Show fields',
+// 'form.reports.group_by' => 'Group by',
+// 'form.reports.group_by_no' => '--- no grouping ---',
+'form.reports.group_by_date' => 'data',
+// TODO: translate the following.
+// 'form.reports.group_by_user' => 'user',
+// 'form.reports.group_by_client' => 'client',
+'form.reports.group_by_project' => 'projecte',
+// TODO: translate the following.
+// 'form.reports.group_by_task' => 'task',
+// 'form.reports.totals_only' => 'Totals only',
+
+// TODO: the entire section from here to bottom needs refactoring.
 
 // administrator form
-"form.admin.title" => 'Administrador',
 "form.admin.duty_text" => 'Crear un nou grup, creant un nou compte del manejador de l\\\'equip.<br>També pot importar dades de grups, d\\\'un arxiu xml d\\\'un altre servidor Anuko Time Tracker.(No està permès col·lisions de e-mail).',
 
 "form.admin.change_pass" => 'Canviar la paraula de pas de l\\\'administrador de compte',
@@ -174,7 +368,6 @@ $i18n_key_words = array(
 "form.admin.profile.th.edit" => 'Modificar',
 "form.admin.profile.th.del" => 'Eliminar',
 "form.admin.profile.th.active" => 'Actiu',
-"form.admin.lock.period" => 'interval de tancament en dies',
 
 // my time form attributes
 "form.mytime.title" => 'El meu temps',
@@ -209,6 +402,10 @@ $i18n_key_words = array(
 "form.profile.edit_title" => 'Modificant perfil',
 "form.profile.name" => 'Nom',
 // Note to translators: a few strings in this section a missing. Please check against the English file.
+// TODO: translate the following.
+// 'form.profile.uncompleted_indicators' => 'Uncompleted indicators',
+// 'form.profile.uncompleted_indicators_none' => 'do not show',
+// 'form.profile.uncompleted_indicators_show' => 'show',
 
 // people form attributes
 "form.people.ppl_str" => 'Persones',
@@ -303,9 +500,6 @@ $i18n_key_words = array(
 "form.invoice.date" => 'Data',
 "form.invoice.number" => 'Número de factura',
 "form.invoice.tax" => 'Impost',
-"form.invoice.daily_subtotals" => 'Subtotals diaris',
-"form.invoice.yourcoo" => 'El seu nom <br> i direcció',
-"form.invoice.custcoo" => 'Nom del client <br> i direcció',
 "form.invoice.comment" => 'Comentari ',
 "form.invoice.th.username" => 'Persona',
 "form.invoice.th.time" => 'Hores',
@@ -334,9 +528,6 @@ $i18n_key_words = array(
 "form.client.th.del" => 'Eliminar',
 "form.client.name" => 'Nom',
 "form.client.tax" => 'Impost',
-"form.client.daily_subtotals" => 'Subtotals diaris',
-"form.client.yourcoo" => 'El seu nou <br> i direcció a la factura',
-"form.client.custcoo" => 'Direcció',
 "form.client.comment" => 'Comentari ',
 
 // miscellaneous strings