2 // +----------------------------------------------------------------------+
3 // | Anuko Time Tracker
4 // +----------------------------------------------------------------------+
5 // | Copyright (c) Anuko International Ltd. (https://www.anuko.com)
6 // +----------------------------------------------------------------------+
7 // | LIBERAL FREEWARE LICENSE: This source code document may be used
8 // | by anyone for any purpose, and freely redistributed alone or in
9 // | combination with other software, provided that the license is obeyed.
11 // | There are only two ways to violate the license:
13 // | 1. To redistribute this code in source form, with the copyright
14 // | notice or license removed or altered. (Distributing in compiled
15 // | forms without embedded copyright notices is permitted).
17 // | 2. To redistribute modified versions of this code in *any* form
18 // | that bears insufficient indications that the modifications are
19 // | not the work of the original author(s).
21 // | This license applies to this document only, not any other software
22 // | that it may be combined with.
24 // +----------------------------------------------------------------------+
26 // | https://www.anuko.com/time_tracker/credits.htm
27 // +----------------------------------------------------------------------+
29 // Note: escape apostrophes with THREE backslashes, like here: choisir l\\\'option.
30 // Other characters (such as double-quotes in http links, etc.) do not have to be escaped.
32 // Note to translators: Please use proper capitalization rules for your language.
34 $i18n_language = 'Português';
35 $i18n_months = array('Janeiro', 'Fevereiro', 'Março', 'Abril', 'Maio', 'Junho', 'Julho', 'Augosto', 'Setembro', 'Outubro', 'Novembro', 'Dezembro');
36 $i18n_weekdays = array('Domingo', 'Segunda-feira', 'Terça-feira', 'Quarta-feira', 'Quinta-feira', 'Sexta-feira', 'Sábado');
37 $i18n_weekdays_short = array('Dom', 'Seg', 'Ter', 'Qua', 'Qui', 'Sex', 'Sab');
39 $i18n_holidays = array('01/01', '02/24', '04/10', '04/12', '04/25', '05/01', '06/10', '06/11', '08/15', '10/05', '01/11', '12/01', '12/08', '12/25');
41 $i18n_key_words = array(
43 // Menus - short selection strings that are displayed on top of application web pages.
44 // Example: https://timetracker.anuko.com (black menu on top).
45 'menu.login' => 'Login',
46 'menu.logout' => 'Logout',
47 // TODO: translate the following.
48 // 'menu.forum' => 'Forum',
49 'menu.help' => 'Ajuda',
50 // TODO: translate the following.
51 // 'menu.create_team' => 'Create Team',
52 'menu.profile' => 'Perfil',
53 'menu.time' => 'Tempo',
54 // TODO: translate the following.
55 // 'menu.expenses' => 'Expenses',
56 'menu.reports' => 'Relatórios',
57 // TODO: translate the following.
58 'menu.charts' => 'Charts',
59 'menu.projects' => 'Projetos',
60 // TODO: translate the following.
61 // 'menu.tasks' => 'Tasks',
62 // 'menu.users' => 'Users',
63 // 'menu.teams' => 'Teams',
64 // 'menu.export' => 'Export',
65 // 'menu.clients' => 'Clients',
66 'menu.options' => 'Opções',
68 // Footer - strings on the bottom of most pages.
69 // TODO: translate the following.
70 // 'footer.contribute_msg' => 'You can contribute to Time Tracker in different ways.',
71 // 'footer.credits' => 'Credits',
72 // 'footer.license' => 'License',
73 // 'footer.improve' => 'Contribute', // Translators: this could mean "Improve", if it makes better sense in your language.
74 // This is a link to a webpage that describes how to contribute to the project.
77 // TODO: translate the following.
78 // 'error.access_denied' => 'Access denied.',
79 // 'error.sys' => 'System error.',
80 // 'error.db' => 'Database error.',
81 // 'error.field' => 'Incorrect "{0}" data.',
82 // 'error.empty' => 'Field "{0}" is empty.',
83 // 'error.not_equal' => 'Field "{0}" is not equal to field "{1}".',
84 // 'error.interval' => 'Field "{0}" must be greater than "{1}".',
85 // 'error.project' => 'Select project.',
86 // 'error.task' => 'Select task.',
87 // 'error.client' => 'Select client.',
88 // 'error.report' => 'Select report.',
89 // 'error.record' => 'Select record.',
90 // 'error.auth' => 'Incorrect login or password.',
91 // 'error.user_exists' => 'User with this login already exists.',
92 // 'error.project_exists' => 'Project with this name already exists.',
93 // 'error.task_exists' => 'Task with this name already exists.',
94 // 'error.client_exists' => 'Client with this name already exists.',
95 // 'error.invoice_exists' => 'Invoice with this number already exists.',
96 // 'error.no_invoiceable_items' => 'There are no invoiceable items.',
97 // 'error.no_login' => 'No user with this login.',
98 // 'error.no_teams' => 'Your database is empty. Login as admin and create a new team.',
99 // 'error.upload' => 'File upload error.',
100 // 'error.range_locked' => 'Date range is locked.',
101 // 'error.mail_send' => 'Error sending mail.',
102 // 'error.no_email' => 'No email associated with this login.',
103 // 'error.uncompleted_exists' => 'Uncompleted entry already exists. Close or delete it.',
104 // 'error.goto_uncompleted' => 'Go to uncompleted entry.',
105 // 'error.overlap' => 'Time interval overlaps with existing records.',
106 // 'error.future_date' => 'Date is in future.',
108 // Labels for buttons.
109 'button.login' => 'Login',
110 'button.now' => 'Hoje',
111 'button.save' => 'Salvar',
112 // TODO: translate the following.
113 // 'button.copy' => 'Copy',
114 'button.cancel' => 'Cancelar',
115 'button.submit' => 'Submeter',
116 // TODO: translate the following.
117 // 'button.add_user' => 'Add user',
118 'button.add_project' => 'Adicionar projeto',
119 // TODO: translate the following.
120 // 'button.add_task' => 'Add task',
121 // 'button.add_client' => 'Add client',
122 // 'button.add_invoice' => 'Add invoice',
123 // 'button.add_option' => 'Add option',
124 'button.add' => 'Adicionar',
125 // TODO: translate the following.
126 // 'button.generate' => 'Generate',
127 // 'button.reset_password' => 'Reset password',
128 'button.send' => 'Enviar',
129 'button.send_by_email' => 'Enviar por e-mail',
130 // TODO: translate the following.
131 // 'button.create_team' => 'Create team',
132 // 'button.export' => 'Export team',
133 // 'button.import' => 'Import team',
134 // 'button.close' => 'Close',
135 // 'button.stop' => 'Stop',
137 // Labels for controls on forms. Labels in this section are used on multiple forms.
138 // TODO: translate the following.
139 // 'label.team_name' => 'Team name',
140 // 'label.address' => 'Address',
141 // 'label.currency' => 'Currency',
142 // 'label.manager_name' => 'Manager name',
143 // 'label.manager_login' => 'Manager login',
144 'label.person_name' => 'Nome',
145 'label.thing_name' => 'Nome',
146 // TODO: translate the following.
147 // 'label.login' => 'Login',
148 'label.password' => 'Senha',
149 'label.confirm_password' => 'Confirme a senha',
150 'label.email' => 'E-mail',
151 // TODO: translate the following.
152 // 'label.cc' => 'Cc',
153 // 'label.bcc' => 'Bcc',
154 'label.subject' => 'Assunto',
155 // TODO: translate the following.
156 // 'label.date' => 'Date',
157 // 'label.start_date' => 'Start date',
158 // 'label.end_date' => 'End date',
159 // 'label.user' => 'User',
160 // 'label.users' => 'Users',
161 // 'label.client' => 'Client',
162 // 'label.clients' => 'Clients',
163 // 'label.option' => 'Option',
164 // 'label.invoice' => 'Invoice',
165 // 'label.project' => 'Project',
166 // 'label.projects' => 'Projects',
167 // 'label.task' => 'Task',
168 // 'label.tasks' => 'Tasks',
169 // 'label.description' => 'Description',
170 // 'label.start' => 'Start',
171 // 'label.finish' => 'Finish',
172 'label.duration' => 'Duração',
173 // TODO: translate the following.
174 // 'label.note' => 'Note',
175 // 'label.notes' => 'Notes',
176 // 'label.item' => 'Item',
177 // 'label.cost' => 'Cost',
178 // 'label.day_total' => 'Day total',
179 // 'label.week_total' => 'Week total',
180 // 'label.month_total' => 'Month total',
181 // 'label.today' => 'Today',
182 // 'label.total_hours' => 'Total hours',
183 // 'label.total_cost' => 'Total cost',
184 // 'label.view' => 'View',
185 'label.edit' => 'Editar',
186 'label.delete' => 'Apagar',
187 // TODO: translate the following.
188 // 'label.configure' => 'Configure',
189 // 'label.select_all' => 'Select all',
190 // 'label.select_none' => 'Deselect all',
191 // 'label.day_view' => 'Day view',
192 // 'label.week_view' => 'Week view',
193 // 'label.id' => 'ID',
194 // 'label.language' => 'Language',
195 // 'label.decimal_mark' => 'Decimal mark',
196 // 'label.date_format' => 'Date format',
197 // 'label.time_format' => 'Time format',
198 // 'label.week_start' => 'First day of week',
199 // 'label.comment' => 'Comment',
200 // 'label.status' => 'Status',
201 // 'label.tax' => 'Tax',
202 // 'label.subtotal' => 'Subtotal',
203 // 'label.total' => 'Total',
204 // 'label.client_name' => 'Client name',
205 // 'label.client_address' => 'Client address',
206 // 'label.or' => 'or',
207 // 'label.error' => 'Error',
208 // 'label.ldap_hint' => 'Type your <b>Windows login</b> and <b>password</b> in the fields below.',
209 // 'label.required_fields' => '* - required fields',
210 // 'label.on_behalf' => 'on behalf of',
211 'label.role_manager' => '(gerente)',
212 // TODO: translate the following.
213 // 'label.role_comanager' => '(co-manager)',
214 // 'label.role_admin' => '(administrator)',
215 // 'label.page' => 'Page',
216 // 'label.condition' => 'Condition',
217 // 'label.yes' => 'yes',
218 // 'label.no' => 'no',
219 // Labels for plugins (extensions to Time Tracker that provide additional features).
220 // TODO: translate the following.
221 // 'label.custom_fields' => 'Custom fields',
222 // 'label.monthly_quotas' => 'Monthly quotas',
223 // 'label.type' => 'Type',
224 // 'label.type_dropdown' => 'dropdown',
225 // 'label.type_text' => 'text',
226 // 'label.required' => 'Required',
227 // 'label.fav_report' => 'Favorite report',
228 // 'label.cron_schedule' => 'Cron schedule',
229 // 'label.what_is_it' => 'What is it?',
230 // 'label.expense' => 'Expense',
231 // 'label.quantity' => 'Quantity',
232 // 'label.paid_status' => 'Paid status',
233 // 'label.paid' => 'Paid',
234 // 'label.mark_paid' => 'Mark paid',
237 'title.login' => 'Login',
238 // TODO: translate the following.
239 // 'title.teams' => 'Teams',
240 // 'title.create_team' => 'Creating Team',
241 // 'title.edit_team' => 'Editing Team',
242 // 'title.delete_team' => 'Deleting Team',
243 // 'title.reset_password' => 'Resetting Password',
244 // 'title.change_password' => 'Changing Password',
245 // 'title.time' => 'Time',
246 // 'title.edit_time_record' => 'Editing Time Record',
247 // 'title.delete_time_record' => 'Deleting Time Record',
248 // 'title.expenses' => 'Expenses',
249 // 'title.edit_expense' => 'Editing Expense Item',
250 // 'title.delete_expense' => 'Deleting Expense Item',
251 // 'title.predefined_expenses' => 'Predefined Expenses',
252 // 'title.add_predefined_expense' => 'Adding Predefined Expense',
253 // 'title.edit_predefined_expense' => 'Editing Predefined Expense',
254 // 'title.delete_predefined_expense' => 'Deleting Predefined Expense',
255 'title.reports' => 'Relatórios',
256 // TODO: translate the following.
257 // 'title.report' => 'Report',
261 // TODO: refactoring ongoing down from here.
263 // password reminder form attributes
264 "form.fpass.send_pass_str" => 'senha foi enviada',
265 "form.fpass.send_pass_subj" => 'Sua senha do Anuko Time Tracker',
267 // administrator form
268 "form.admin.options" => 'opções',
270 // my time form attributes
271 "form.mytime.title" => 'adicionar período',
272 "form.mytime.date" => 'data',
273 "form.mytime.project" => 'projeto',
274 "form.mytime.start" => 'início',
275 "form.mytime.finish" => 'fim',
276 "form.mytime.note" => 'anotação',
277 "form.mytime.daily" => 'trabalho diário',
278 "form.mytime.total" => 'horas totais: ',
279 "form.mytime.th.project" => 'projeto',
280 "form.mytime.th.activity" => 'actividade',
281 "form.mytime.th.start" => 'início',
282 "form.mytime.th.finish" => 'finish',
283 "form.mytime.th.duration" => 'duração',
284 "form.mytime.th.note" => 'fim',
285 "form.mytime.del_yes" => 'o período registrado foi apagado com sucesso',
286 // Note to translators: the strings below are missing and must be added and translated
287 // "form.mytime.no_finished_rec" => 'this record was saved with only start time. it is not an error. logout if you need to.',
288 // "form.mytime.billable" => 'billable',
289 // "form.mytime.warn_tozero_rec" => 'this time record must be deleted because this time period is locked',
290 // "form.mytime.uncompleted" => 'uncompleted',
292 // profile form attributes
293 // Note to translators: we need a more accurate translation of form.profile.create_title
294 "form.profile.create_title" => 'criar nova conta de gerência',
295 "form.profile.edit_title" => 'editando perfil',
297 // people form attributes
298 "form.people.ppl_str" => 'pessoas',
299 "form.people.createu_str" => 'adicionar novo usuário',
300 "form.people.edit_str" => 'editando usuário',
301 "form.people.del_str" => 'apagando usuário',
303 // Note to translators: "form.people.th.login" => 'e-mail', // email has been changed to login
304 "form.people.th.role" => 'regra',
305 "form.people.th.status" => 'status',
306 // Note to translators: the strings below are missing and must be added and translated
307 // "form.people.th.project" => 'project',
308 // "form.people.th.rate" => 'rate',
309 "form.people.manager" => 'gerente',
310 // Note to translators: the string below is missing and must be added and translated
311 // "form.people.comanager" => 'comanager',
312 "form.people.empl" => 'usuário',
314 // projects form attributes
315 "form.project.proj_title" => 'projetos',
316 "form.project.edit_str" => 'editando projeto',
317 "form.project.add_str" => 'adicionando novo projeto',
318 "form.project.del_str" => 'apagando projeto',
320 // activities form attributes
321 "form.activity.project" => 'project',
324 "form.report.title" => 'relatórios',
325 "form.report.from" => 'data inicial',
326 "form.report.to" => 'data final',
327 "form.report.duration" => 'duração',
328 "form.report.start" => 'início',
329 "form.report.finish" => 'fim',
330 "form.report.note" => 'anotação',
331 "form.report.project" => 'projeto',
332 // Note to translators: the string below is missing and must be added and translated
333 // "form.report.totals_only" => 'totals only',
334 "form.report.total" => 'horas totais',
335 "form.report.th.empllist" => 'usuário',
336 // Note to translators: the strings below must be translated
337 // "form.report.th.date" => 'data',
339 // mail form attributes
340 "form.mail.from" => 'de',
341 "form.mail.to" => 'para',
342 "form.mail.comment" => 'comentário',
343 "form.mail.above" => 'enviar este relatório por e-mail',
344 // Note to translators: the strings below must be translated
345 // "form.mail.footer_str" => '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.',
346 // "form.mail.sending_str" => '<b>the message has been sent</b>',
348 // miscellaneous strings
349 "forward.forgot_password" => 'esqueceu a senha?',
351 // strings inside contols on forms
352 "controls.select.project" => '--- selecione projeto ---',
353 "controls.per_tm" => 'este mês',
354 "controls.per_lm" => 'último mês',
355 "controls.per_tw" => 'esta semana',
356 "controls.per_lw" => 'última semana',
357 "controls.sel_period" => '--- selecione o período de tempo ---',
360 "label.pbehalf_info" => '%s %s <b>on behalf of %s</b>',
361 "label.time_noentry" => 'sem registro',
362 "label.req_fields" => '* campos obrigatórios',
363 "label.sel_tp" => 'selecione o período de tempo',
364 "label.set_tp" => 'ou selecionar datas',
365 "label.fields" => 'exibir campos',