// This is a link to a webpage that describes how to contribute to the project.
// Error messages.
+// TODO: All error messages should be complete sentences with a period (full stop) in the end. Put them there.
// TODO: translate the following.
// 'error.access_denied' => 'Access denied.',
// 'error.sys' => 'System error.',
-
-// TODO: refactoring ongoing down from here.
'error.db' => '資料庫錯誤',
'error.field' => '不正確的"{0}"資料',
'error.empty' => '欄目"{0}"為空',
'error.not_equal' => '欄目"{0}"不等於欄目"{1}"',
-'error.interval' => '不正確的間隔',
-'error.project' => '選擇項目',
// 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.',
// 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' => '沒有該登錄資訊的使用者',
+// TODO: translate the following.
+// 'error.no_teams' => 'Your database is empty. Login as admin and create a new team.',
'error.upload' => '上傳文件出錯',
// TODO: translate the following.
// 'error.range_locked' => 'Date range is locked.',
// 'error.overlap' => 'Time interval overlaps with existing records.',
// 'error.future_date' => 'Date is in future.',
+
+
+// TODO: refactoring ongoing down from here.
+
// Labels for buttons.
'button.login' => '登錄',
'button.now' => '當前時間',