X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=WEB-INF%2Fresources%2Fzh-cn.lang.php;h=a0b9cd999fe438955620cf3efd4af0a6a8494022;hb=7d955163ec01fc748d8618224ff777b1b7866593;hp=1e399a11b6ba2ca3bf18ac75e2a6839dc7246826;hpb=f4c1cd97de267662969a88850d2522678659ba56;p=timetracker.git diff --git a/WEB-INF/resources/zh-cn.lang.php b/WEB-INF/resources/zh-cn.lang.php index 1e399a11..a0b9cd99 100644 --- a/WEB-INF/resources/zh-cn.lang.php +++ b/WEB-INF/resources/zh-cn.lang.php @@ -38,13 +38,14 @@ $i18n_holidays = array('01/01', '01/02', '01/25', '01/26', '01/27', '01/28', '01 $i18n_key_words = array( -// Menus. +// Menus - short selection strings that are displayed on top of application web pages. +// Example: https://timetracker.anuko.com (black menu on top). 'menu.login' => '登录', 'menu.logout' => '注销', 'menu.forum' => '论坛', 'menu.help' => '帮助', -// Note to translators: menu.create_team needs a more accurate translation. -'menu.create_team' => '创建新管理账号', +// TODO: translate the following. +// 'menu.create_team' => 'Create Team', 'menu.profile' => '简介', 'menu.time' => '时间记录', 'menu.expenses' => '费用', @@ -59,39 +60,40 @@ $i18n_key_words = array( 'menu.options' => '选项', // Footer - strings on the bottom of most pages. -'footer.contribute_msg' => '你可以以不同的方式为Time Tracker提建议', +'footer.contribute_msg' => '你可以以不同的方式为Time Tracker提建议。', 'footer.credits' => '信用', 'footer.license' => '许可证', 'footer.improve' => '投稿', // Error messages. -'error.access_denied' => '拒绝访问', -'error.sys' => '系统错误', -'error.db' => '数据库错误', -'error.field' => '不正确的"{0}"数据', -'error.empty' => '栏目"{0}"为空', -'error.not_equal' => '栏目"{0}"不等于栏目"{1}"', -'error.interval' => '不正确的间隔', -'error.project' => '选择项目', +'error.access_denied' => '拒绝访问。', +'error.sys' => '系统错误。', +'error.db' => '数据库错误。', +'error.field' => '不正确的"{0}"数据。', +'error.empty' => '栏目"{0}"为空。', +'error.not_equal' => '栏目"{0}"不等于栏目"{1}"。', // TODO: translate the following. +// 'error.interval' => 'Field "{0}" must be greater than "{1}".', +// 'error.project' => 'Select project.', // 'error.task' => 'Select task.', // 'error.client' => 'Select client.', // 'error.report' => 'Select report.', -'error.auth' => '不正确的用户名或密码', -'error.user_exists' => '该用户登录信息已经存在', -'error.project_exists' => '该项目名称已经存在', +// 'error.record' => 'Select record.', +'error.auth' => '不正确的用户名或密码。', +'error.user_exists' => '该用户登录信息已经存在。', +'error.project_exists' => '该项目名称已经存在。', // TODO: translate the following. // 'error.task_exists' => 'Task with this name already exists.', -'error.client_exists' => '具有此名称的客户端已经存在', +'error.client_exists' => '具有此名称的客户端已经存在。', // TODO: translate the following. // 'error.invoice_exists' => 'Invoice with this number already exists.', // 'error.no_invoiceable_items' => 'There are no invoiceable items.', -'error.no_login' => '没有该登录信息的用户', +'error.no_login' => '没有该登录信息的用户。', // TODO: translate the following. // 'error.no_teams' => 'Your database is empty. Login as admin and create a new team.', -'error.upload' => '上传文件出错', -'error.range_locked' => '日期范围锁定', -'error.mail_send' => '发送邮件时出错', +'error.upload' => '上传文件出错。', +'error.range_locked' => '日期范围锁定。', +'error.mail_send' => '发送邮件时出错。', 'error.no_email' => '没有电子邮件与该用户名关联。', 'error.uncompleted_exists' => '未完成的条目已经存在。关闭或删除。', 'error.goto_uncompleted' => '进入未完成的条目。', @@ -107,16 +109,11 @@ $i18n_key_words = array( // 'button.copy' => 'Copy', 'button.cancel' => '取消', 'button.submit' => '提交', - - -// TODO: check / improve translation of all button.add... strings. -// Concern is that it used to be "add new something", now just "add something". -'button.add_user' => '添加新用户', -'button.add_project' => '添加新项目', // TODO: translate the following. +// 'button.add_user' => 'Add user', +// 'button.add_project' => 'Add project', // 'button.add_task' => 'Add task', -'button.add_client' => '添加新客户', -// TODO: translate the following. +// 'button.add_client' => 'Add client', // 'button.add_invoice' => 'Add invoice', // 'button.add_option' => 'Add option', 'button.add' => '添加', @@ -124,8 +121,8 @@ $i18n_key_words = array( 'button.reset_password' => '重置密码', 'button.send' => '发送', 'button.send_by_email' => '通过邮件发送', -// TODO: improve translation of button.create_team (used to be "Create new team", now just "Create team"). -'button.create_team' => '创建新团队', +// TODO: translate the following. +// 'button.create_team' => 'Create team', 'button.export' => '导出团队信息', 'button.import' => '导入团队信息', // TODO: translate the following. @@ -146,7 +143,11 @@ $i18n_key_words = array( 'label.password' => '密码', 'label.confirm_password' => '确认密码', 'label.email' => '电子邮件', -// Translate the following. +'label.cc' => '抄送', +// TODO: translate the following. +// 'label.bcc' => 'Bcc', +'label.subject' => '主题', +// TODO: translate the following. // 'label.date' => 'Date', // 'label.start_date' => 'Start date', // 'label.end_date' => 'End date', @@ -165,21 +166,25 @@ $i18n_key_words = array( // 'label.finish' => 'Finish', // 'label.duration' => 'Duration', // 'label.note' => 'Note', +// 'label.notes' => 'Notes', // '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.today' => '今天', +// TODO: translate the following. // 'label.total_hours' => 'Total hours', // 'label.total_cost' => 'Total cost', // 'label.view' => 'View', // 'label.edit' => 'Edit', 'label.delete' => '删除', -// TODO: Translate the following. +// TODO: translate the following. // 'label.configure' => 'Configure', // 'label.select_all' => 'Select all', // 'label.select_none' => 'Deselect all', +// 'label.day_view' => 'Day view', +// 'label.week_view' => 'Week view', // 'label.id' => 'ID', // 'label.language' => 'Language', // 'label.decimal_mark' => 'Decimal mark', @@ -191,45 +196,202 @@ $i18n_key_words = array( // 'label.tax' => 'Tax', // 'label.subtotal' => 'Subtotal', 'label.total' => '总计', -// TODO: Translate the following. +// TODO: translate the following. // 'label.client_name' => 'Client name', // 'label.client_address' => 'Client address', // 'label.or' => 'or', // 'label.error' => 'Error', // 'label.ldap_hint' => 'Type your Windows login and password 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' => '(administrator)', +'label.on_behalf' => '代表', +'label.role_manager' => '(经理)', +'label.role_comanager' => '(合作经理人)', +'label.role_admin' => '(管理员)', 'label.page' => '页码', +// TODO: translate the following. +// 'label.condition' => 'Condition', +// 'label.yes' => 'yes', +// 'label.no' => 'no', // Labels for plugins (extensions to Time Tracker that provide additional features). -// TODO: Translate the following. -'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' => 'Favorite report', -'label.cron_schedule' => 'Cron schedule', -'label.what_is_it' => 'What is it?', -'label.expense' => 'Expense', -'label.quantity' => 'Quantity', +// TODO: translate the following. +// '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' => 'Favorite report', +// 'label.cron_schedule' => 'Cron schedule', +// 'label.what_is_it' => 'What is it?', +// 'label.expense' => 'Expense', +// 'label.quantity' => 'Quantity', +// 'label.paid_status' => 'Paid status', +// 'label.paid' => 'Paid', +// 'label.mark_paid' => 'Mark paid', +// 'label.week_note' => 'Week note', +// 'label.week_list' => 'Week list', +// Form titles. +// TODO: translate the following. +// 'title.login' => 'Login', +// 'title.teams' => 'Teams', +// 'title.create_team' => 'Creating Team', +// 'title.edit_team' => 'Editing Team', +// 'title.delete_team' => 'Deleting Team', +'title.reset_password' => '重设密码', +// 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.predefined_expenses' => 'Predefined Expenses', +// 'title.add_predefined_expense' => 'Adding Predefined Expense', +// 'title.edit_predefined_expense' => 'Editing Predefined Expense', +// 'title.delete_predefined_expense' => 'Deleting Predefined Expense', +// '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', +// 'title.week_view' => 'Week View', + +// 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 ---', +// 'dropdown.current_day' => 'today', +// 'dropdown.previous_day' => 'yesterday', +// 'dropdown.selected_day' => 'day', +// 'dropdown.current_week' => 'this week', +// 'dropdown.previous_week' => 'previous week', +// 'dropdown.selected_week' => 'week', +// 'dropdown.current_month' => 'this month', +// 'dropdown.previous_month' => 'previous month', +// 'dropdown.selected_month' => 'month', +// 'dropdown.current_year' => 'this year', +// 'dropdown.previous_year' => 'previous year', +// 'dropdown.selected_year' => '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', +// 'dropdown.paid' => 'paid', +// 'dropdown.not_paid' => 'not paid', + +// 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 Time Tracker is a simple, easy to use, open source time tracking system.', + +// Resetting Password form. See example at https://timetracker.anuko.com/password_reset.php. +// TODO: translate the following. +// 'form.reset_password.message' => 'Password reset request sent by email.', +// '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", + +// 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.', + +// 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.', + +// Week view form. See example at https://timetracker.anuko.com/week.php. +// TODO: translate the following. +// 'form.week.new_entry' => 'New entry', + +// Reports form. See example at https://timetracker.anuko.com/reports.php +// TODO: translate the following. +// 'form.reports.save_as_favorite' => 'Save as favorite', +'form.reports.confirm_delete' => '您确认要删除收藏的这个报告吗?', +// TODO: translate the following. +// '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' => 'date', +// 'form.reports.group_by_user' => 'user', +// 'form.reports.group_by_client' => 'client', +// 'form.reports.group_by_project' => 'project', +// 'form.reports.group_by_task' => 'task', +// 'form.reports.totals_only' => 'Totals only', + + + +// TODO: refactoring ongoing down from here. // TODO: everything below needs serious work and be synchronized with the master English file. // For example, form.filter.project property no longer exists, and so on. // If you intend to improve perhaps go in small steps and coordinate with the maintainer if anything is unclear. - -// Form titles. -// TODO: the entire title section is missing here. See the English file. - "form.filter.project" => '项目', "form.filter.filter" => '收藏的报告', "form.filter.filter_new" => '保存到我的收藏夹', -"form.filter.filter_confirm_delete" => '您确认要删除收藏的这个报告吗?', // login form attributes "form.login.title" => '登录', @@ -269,16 +431,13 @@ $i18n_key_words = array( "form.mytime.time_form" => ' (时:分)', "form.mytime.date" => '日期', "form.mytime.project" => '项目', -"form.mytime.activity" => '活动', "form.mytime.start" => '开始', "form.mytime.finish" => '结束', "form.mytime.duration" => '持续时间', "form.mytime.note" => '备注', -"form.mytime.behalf" => '每日工作,人员:', "form.mytime.daily" => '每日工作', "form.mytime.total" => '总小时数: ', "form.mytime.th.project" => '项目', -"form.mytime.th.activity" => '活动', "form.mytime.th.start" => '开始', "form.mytime.th.finish" => '结束', "form.mytime.th.duration" => '持续时间', @@ -356,11 +515,8 @@ $i18n_key_words = array( "form.report.to" => '结束日期', "form.report.groupby_user" => '用户', "form.report.groupby_project" => '项目', -"form.report.groupby_activity" => '活动', "form.report.duration" => '持续时间', "form.report.start" => '开始', -"form.report.activity" => '活动', -"form.report.show_idle" => '显示空闲', "form.report.finish" => '结束', "form.report.note" => '备注', "form.report.project" => '项目', @@ -369,7 +525,6 @@ $i18n_key_words = array( "form.report.th.empllist" => '用户', "form.report.th.date" => '日期', "form.report.th.project" => '项目', -"form.report.th.activity" => '活动', "form.report.th.start" => '开始', "form.report.th.finish" => '结束', "form.report.th.duration" => '持续时间', @@ -378,8 +533,6 @@ $i18n_key_words = array( // mail form attributes "form.mail.from" => '从', "form.mail.to" => '到', -"form.mail.cc" => '抄送', -"form.mail.subject" => '主题', "form.mail.comment" => '留言', "form.mail.above" => '通过电子邮件发送该报告', // Note to translators: this string needs to be translated. @@ -462,14 +615,6 @@ $i18n_key_words = array( "label.chart.title2" => '项目用户', "label.chart.period" => '图表期限', -"label.pinfo" => '%s, %s', -"label.pinfo2" => '%s', -"label.pbehalf_info" => '%s %s 代表%s', -"label.pminfo" => ' (经理)', -"label.pcminfo" => ' (合作经理人)', -"label.painfo" => ' (管理员)', -"label.time_noentry" => '没有条目', -"label.today" => '今天', "label.req_fields" => '* 必填栏目', "label.sel_project" => '选择项目', "label.sel_activity" => '选择活动', @@ -485,7 +630,6 @@ $i18n_key_words = array( "label.or" => '或', "label.disable" => '禁用', "label.enable" => '启用', -"label.filter" => '过滤器', "label.timeweek" => '一周总计', "label.hrs" => '小时', "label.errors" => '错误',