X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=WEB-INF%2Fresources%2Fko.lang.php;h=6e0a7e2920daf8ef7983fd5c736d4dd55b4eec09;hb=62b36719d92eec21e5e132811c1ec88e5f495117;hp=3b87b2003671604091710344716c707ac4b347c7;hpb=59f683c39fc2fdcca12a94867543d0016e0f459a;p=timetracker.git diff --git a/WEB-INF/resources/ko.lang.php b/WEB-INF/resources/ko.lang.php index 3b87b200..6e0a7e29 100644 --- a/WEB-INF/resources/ko.lang.php +++ b/WEB-INF/resources/ko.lang.php @@ -29,7 +29,7 @@ // 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 = '한국어'; +$i18n_language = 'Korean (한국어)'; $i18n_months = array('1월', '2월', '3월', '4월', '5월', '6월', '7월', '8월', '9월', '10월', '11월', '12월'); $i18n_weekdays = array('일요일', '월요일', '화요일', '수요일', '목요일', '금요일', '토요일'); $i18n_weekdays_short = array('일', '월', '화', '수', '목', '금', '토'); @@ -48,8 +48,8 @@ $i18n_key_words = array( // TODO: translate the following. // 'menu.create_team' => 'Create Team', 'menu.profile' => '프로필', +'menu.time' => '시간', // TODO: translate the following. -// 'menu.time' => 'Time', // 'menu.expenses' => 'Expenses', 'menu.reports' => '보고서', // TODO: translate the following. @@ -77,6 +77,8 @@ $i18n_key_words = array( // 'error.access_denied' => 'Access denied.', // 'error.sys' => 'System error.', 'error.db' => '데이터베이스 오류.', +// TODO: translate the following. +// 'error.feature_disabled' => 'Feature is disabled.', 'error.field' => '부정확한 "{0}" 의 데이터.', 'error.empty' => '"{0}" 의 필드가 비어있습니다.', 'error.not_equal' => '"{0}" 의 필드가 "{1}" 의 필드와 같지 않습니다.', @@ -91,15 +93,17 @@ $i18n_key_words = array( // 'error.record' => 'Select record.', 'error.auth' => '부정확한 로그인 혹은 암호가 틀립니다.', 'error.user_exists' => '본 로그인과 연계된 사용자가 이미 있습니다.', +// TODO: translate the following. +// 'error.object_exists' => 'Object with this name already exists.', 'error.project_exists' => '본 이름과 연계된 프로젝트가 이미 있습니다.', // 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.role_exists' => 'Role with this rank already exists.', // 'error.no_invoiceable_items' => 'There are no invoiceable items.', 'error.no_login' => '본 로그인과 연계된 사용자가 없습니다.', -// TODO: translate the following. -// 'error.no_teams' => 'Your database is empty. Login as admin and create a new team.', +'error.no_teams' => '당신의 데이터베이스는 비어있습니다. 관리자로 로그인하여 새로운 팀을 생성하십시오.', 'error.upload' => '파일 업로드 오류.', // TODO: translate the following. // 'error.range_locked' => 'Date range is locked.', @@ -119,14 +123,8 @@ $i18n_key_words = array( // 'button.copy' => 'Copy', 'button.cancel' => '취소', 'button.submit' => '발송', -// TODO: translate the following. -// 'button.add_user' => 'Add user', -// 'button.add_project' => 'Add project', -// 'button.add_task' => 'Add task', -// 'button.add_client' => 'Add client', -// 'button.add_invoice' => 'Add invoice', -// 'button.add_option' => 'Add option', 'button.add' => '추가', +'button.delete' => '삭제', 'button.generate' => '생성', // TODO: translate the following. // 'button.reset_password' => 'Reset password', @@ -163,6 +161,8 @@ $i18n_key_words = array( 'label.end_date' => '마감 날짜', 'label.user' => '사용자', 'label.users' => '사용자', +// TODO: translate the following. +// 'label.roles' => 'Roles', 'label.client' => '클라이언트', 'label.clients' => '클라이언트', 'label.option' => '옵션', @@ -181,14 +181,13 @@ $i18n_key_words = array( // TODO: translate the following. // 'label.item' => 'Item', // 'label.cost' => 'Cost', +// 'label.ip' => 'IP', // 'label.day_total' => 'Day total', 'label.week_total' => '주별 합계', // TODO: translate the following. // 'label.month_total' => 'Month total', 'label.today' => '오늘', // TODO: translate the following. -// 'label.total_hours' => 'Total hours', -// 'label.total_cost' => 'Total cost', // 'label.view' => 'View', 'label.edit' => '편집', 'label.delete' => '삭제', @@ -199,7 +198,7 @@ $i18n_key_words = array( // TODO: translate the following. // 'label.day_view' => 'Day view', // 'label.week_view' => 'Week view', -// 'label.id' => 'ID', +'label.id' => '식별자', 'label.language' => '언어', // TODO: translate the following. // 'label.decimal_mark' => 'Decimal mark', @@ -240,7 +239,7 @@ $i18n_key_words = array( // 'label.required' => 'Required', 'label.fav_report' => '좋아하는 보고서', // TODO: translate the following. -// 'label.cron_schedule' => 'Cron schedule', +// 'label.schedule' => 'Schedule', // 'label.what_is_it' => 'What is it?', // 'label.expense' => 'Expense', 'label.quantity' => '수량', @@ -253,17 +252,18 @@ $i18n_key_words = array( // Form titles. 'title.login' => '로그인', +'title.teams' => '팀', // TODO: translate the following. -// 'title.teams' => 'Teams', // 'title.create_team' => 'Creating Team', // 'title.edit_team' => 'Editing Team', -// 'title.delete_team' => 'Deleting Team', +'title.delete_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.time' => '시간', +'title.edit_time_record' => '시간기록을 편집하기', +'title.delete_time_record' => '시간기록을 삭제하기', +// TODO: translate the following. // 'title.expenses' => 'Expenses', // 'title.edit_expense' => 'Editing Expense Item', // 'title.delete_expense' => 'Deleting Expense Item', @@ -271,7 +271,7 @@ $i18n_key_words = array( // '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.reports' => '보고서', 'title.report' => '보고서', // TODO: translate the following. // 'title.send_report' => 'Sending Report', @@ -288,11 +288,16 @@ $i18n_key_words = array( // 'title.add_task' => 'Adding Task', // 'title.edit_task' => 'Editing Task', // 'title.delete_task' => 'Deleting Task', -'title.users' => '사용자', -// TODO: translate the following. -// 'title.add_user' => 'Adding User', -// 'title.edit_user' => 'Editing User', -// 'title.delete_user' => 'Deleting User', +'title.users' => '사용자', // TODO: is this correct? Not 사용자를 as below? title.users is for many (plural) users. + // title.add, title.edit, and title.delete are for a single user. +'title.add_user' => '사용자를 추가하기', // TODO: is this correct? +'title.edit_user' => '사용자를 편집하기', +'title.delete_user' => '사용자를 삭제하기', +// TODO: translate the following. +// 'title.roles' => 'Roles', +// 'title.add_role' => 'Adding Role', +// 'title.edit_role' => 'Editing Role', +// 'title.delete_role' => 'Deleting Role', 'title.clients' => '클라이언트', 'title.add_client' => '클라이언트 추가', 'title.edit_client' => '클라이언트 편집', @@ -324,6 +329,7 @@ $i18n_key_words = array( // It is also a name for the Locking plugin on the Team profile page. // 'title.locking' => 'Locking', // 'title.week_view' => 'Week View', +// '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. @@ -353,38 +359,36 @@ $i18n_key_words = array( // 'dropdown.select_invoice' => '--- select invoice ---', // 'dropdown.status_active' => 'active', // 'dropdown.status_inactive' => 'inactive', -// 'dropdown.delete'=>'delete', -// 'dropdown.do_not_delete'=>'do not delete', +// '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. 'form.login.forgot_password' => '암호를 잊으셨습니까?', // TODO: translate the following. -// 'form.login.about' =>'Anuko Time Tracker is a simple, easy to use, open source time tracking system.', +// '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. 'form.reset_password.message' => '송신한 암호 재설정 요청.', // TODO: add "by email" to match the English string. 'form.reset_password.email_subject' => 'Anuko Time Tracker 암호 재설정 요청', -// TODO: translate the ending of the following. -'form.reset_password.email_body' => "사용자님께,\n\n누군가 (아마 당신) 가 당신의 Anuko Time Tracker 암호 재설정을 요청하였습니다. 당신의 암호를 재설정하기 바란다면 이 링크를 찾아주십시오. \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", +// TODO: translate the following. +// '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", // 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.duration_format' => '(hh:mm 혹은 0.0h)', // TODO: is there a better term for hh:mm as a hint to user what to enter? 'form.time.billable' => '청구가능', +'form.time.uncompleted' => '완성되지 않은', // TODO: translate the following. -// '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.', +'form.time_edit.uncompleted' => '이 기록은 시작 시간으로만 저장되었습니다. 이것은 오류는 아닙니다.', // Week view form. See example at https://timetracker.anuko.com/week.php. // TODO: translate the following. @@ -448,11 +452,20 @@ $i18n_key_words = array( // '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.manager' => 'Manager', -// 'form.users.comanager' => 'Co-manager', -// 'form.users.rate' => 'Rate', -// 'form.users.default_rate' => 'Default hourly rate', +'form.users.role' => '직위', // TODO: is this correct? The term "role" describes user function, as in "team manager role". +'form.users.manager' => '관리자', +'form.users.comanager' => '공동관리자', +'form.users.rate' => '급여', +'form.users.default_rate' => '디폴트 시간당 급여', + +// Roles form. See example at https://timetracker.anuko.com/roles.php +// TODO: translate the following. +// '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 // TODO: translate the following. @@ -480,8 +493,10 @@ $i18n_key_words = array( // Profile form. See example at https://timetracker.anuko.com/profile_edit.php. // TODO: translate the following. +// 'form.profile.swap_roles' => 'Swap roles', // 'form.profile.12_hours' => '12 hours', // 'form.profile.24_hours' => '24 hours', +// 'form.profile.show_holidays' => 'Show holidays', // 'form.profile.tracking_mode' => 'Tracking mode', // 'form.profile.mode_time' => 'time', // 'form.profile.mode_projects' => 'projects', @@ -490,21 +505,22 @@ $i18n_key_words = array( // 'form.profile.type_all' => 'all', // 'form.profile.type_start_finish' => 'start and finish', // 'form.profile.type_duration' => 'duration', +// 'form.profile.punch_mode' => 'Punch mode', +// 'form.profile.allow_overlap' => 'Allow overlap', +// 'form.profile.future_entries' => 'Future entries', // 'form.profile.uncompleted_indicators' => 'Uncompleted indicators', -// 'form.profile.uncompleted_indicators_none' => 'do not show', -// 'form.profile.uncompleted_indicators_show' => 'show', // 'form.profile.plugins' => 'Plugins', // Mail form. See example at https://timetracker.anuko.com/report_send.php when emailing a report. +'form.mail.from' => '부터', +'form.mail.to' => '까지', // TODO: is this correct? The meaning is that we send an email TO this person. // TODO: translate the following. -// 'form.mail.from' => 'From', -// 'form.mail.to' => 'To', // 'form.mail.report_subject' => 'Time Tracker Report', // 'form.mail.footer' => 'Anuko Time Tracker is a simple, easy to use, open source
time tracking system. Visit www.anuko.com for more information.', // 'form.mail.report_sent' => 'Report sent.', -// 'form.mail.invoice_sent' => 'Invoice sent.', +'form.mail.invoice_sent' => '송신한 송장.', -// Quotas configuration form. +// Quotas configuration form. See example at https://timetracker.anuko.com/quotas.php after enabling Monthly quotas plugin. // TODO: translate the following. // 'form.quota.year' => 'Year', // 'form.quota.month' => 'Month', @@ -512,59 +528,32 @@ $i18n_key_words = array( // '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.', - - -// TODO: refactoring ongoing down from here. - -// administrator form -"form.admin.profile.title" => '팀', -"form.admin.profile.noprofiles" => '당신의 데이터베이스는 비어있습니다. 관리자로 로그인하여 새로운 팀을 생성하십시오.', -"form.admin.profile.comment" => '팀 삭제', -"form.admin.profile.th.id" => '식별자', -"form.admin.profile.th.active" => '활동내용', - -// my time form attributes -"form.mytime.title" => '나의 시간', -"form.mytime.edit_title" => '시간기록을 편집하기', -"form.mytime.del_str" => '시간기록을 삭제하기', -"form.mytime.time_form" => ' (hh:mm)', -"form.mytime.total" => '전체 시간: ', -"form.mytime.del_yes" => '성과적으로 삭제된 시간기록', -"form.mytime.no_finished_rec" => '이 기록은 시작 시간으로만 저장되었습니다. 이것은 오류는 아닙니다. 필요하면 로그아웃 하십시오.', -"form.mytime.warn_tozero_rec" => '이 시간기간이 로크되었으므로 이 시간기록은 삭제되어야 합니다', -"form.mytime.uncompleted" => '완성되지 않은', - -// profile form attributes -// Note to translators: we need a more accurate translation of form.profile.create_title -"form.profile.create_title" => '신규 관리자 계정을 생성', -"form.profile.edit_title" => '프로필을 편집하기', -"form.profile.showchart" => '원 그래프를 보기', - -// people form attributes -"form.people.ppl_str" => '멤버', -"form.people.createu_str" => '신규 사용자를 만들기', -"form.people.edit_str" => '사용자를 편집하기', -"form.people.del_str" => '사용자를 삭제하기', -"form.people.th.role" => '직위', -"form.people.th.rate" => '급여', -"form.people.manager" => '관리자', -"form.people.comanager" => '공동관리자', - -"form.people.rate" => '디폴트 시간당 급여', -"form.people.comanager" => '공동관리자', - -// report attributes -"form.report.title" => '보고서', -"form.report.total" => '시간 총합', - -// mail form attributes -"form.mail.from" => '부터', -"form.mail.to" => '까지', -"form.mail.above" => '이 보고서를 이메일로 송신', -// Note to translators: this string needs to be translated. -// "form.mail.footer_str" => 'Anuko Time Tracker is a simple, easy to use, open source
time tracking system. Visit www.anuko.com for more information.', -"form.mail.sending_str" => '송신된 메시지', - -// invoice attributes -"form.invoice.sending_str" => '송신한 송장', +// Swap roles form. See example at https://timetracker.anuko.com/swap_roles.php. +// TODO: translate the following. +// 'form.swap.hint' => 'Demote yourself to a lower role by swapping roles with someone else. This cannot be undone.', +// '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. +// '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.', );