##// END OF EJS Templates
Traditional Chinese "label_total_time" translation changed by ChunChang Lo (#13528)...
Toshi MARUYAMA -
r11438:75050f767a6d
parent child
Show More
@@ -1,1170 +1,1170
1 # Chinese (Taiwan) translations for Ruby on Rails
1 # Chinese (Taiwan) translations for Ruby on Rails
2 # by tsechingho (http://github.com/tsechingho)
2 # by tsechingho (http://github.com/tsechingho)
3 # See http://github.com/svenfuchs/rails-i18n/ for details.
3 # See http://github.com/svenfuchs/rails-i18n/ for details.
4
4
5 "zh-TW":
5 "zh-TW":
6 direction: ltr
6 direction: ltr
7 date:
7 date:
8 formats:
8 formats:
9 # Use the strftime parameters for formats.
9 # Use the strftime parameters for formats.
10 # When no format has been given, it uses default.
10 # When no format has been given, it uses default.
11 # You can provide other formats here if you like!
11 # You can provide other formats here if you like!
12 default: "%Y-%m-%d"
12 default: "%Y-%m-%d"
13 short: "%b%d日"
13 short: "%b%d日"
14 long: "%Y年%b%d日"
14 long: "%Y年%b%d日"
15
15
16 day_names: [星期日, 星期一, 星期二, 星期三, 星期四, 星期五, 星期六]
16 day_names: [星期日, 星期一, 星期二, 星期三, 星期四, 星期五, 星期六]
17 abbr_day_names: [, , , , , , ]
17 abbr_day_names: [, , , , , , ]
18
18
19 # Don't forget the nil at the beginning; there's no such thing as a 0th month
19 # Don't forget the nil at the beginning; there's no such thing as a 0th month
20 month_names: [~, 一月, 二月, 三月, 四月, 五月, 六月, 七月, 八月, 九月, 十月, 十一月, 十二月]
20 month_names: [~, 一月, 二月, 三月, 四月, 五月, 六月, 七月, 八月, 九月, 十月, 十一月, 十二月]
21 abbr_month_names: [~, 1月, 2月, 3月, 4月, 5月, 6月, 7月, 8月, 9月, 10月, 11月, 12月]
21 abbr_month_names: [~, 1月, 2月, 3月, 4月, 5月, 6月, 7月, 8月, 9月, 10月, 11月, 12月]
22 # 使用於 date_select 與 datime_select.
22 # 使用於 date_select 與 datime_select.
23 order:
23 order:
24 - :year
24 - :year
25 - :month
25 - :month
26 - :day
26 - :day
27
27
28 time:
28 time:
29 formats:
29 formats:
30 default: "%Y年%b%d日 %A %H:%M:%S %Z"
30 default: "%Y年%b%d日 %A %H:%M:%S %Z"
31 time: "%H:%M"
31 time: "%H:%M"
32 short: "%b%d日 %H:%M"
32 short: "%b%d日 %H:%M"
33 long: "%Y年%b%d日 %H:%M"
33 long: "%Y年%b%d日 %H:%M"
34 am: "AM"
34 am: "AM"
35 pm: "PM"
35 pm: "PM"
36
36
37 # 使用於 array.to_sentence.
37 # 使用於 array.to_sentence.
38 support:
38 support:
39 array:
39 array:
40 words_connector: ", "
40 words_connector: ", "
41 two_words_connector: " "
41 two_words_connector: " "
42 last_word_connector: ", "
42 last_word_connector: ", "
43 sentence_connector: "且"
43 sentence_connector: "且"
44 skip_last_comma: false
44 skip_last_comma: false
45
45
46 number:
46 number:
47 # 使用於 number_with_delimiter()
47 # 使用於 number_with_delimiter()
48 # 同時也是 'currency', 'percentage', 'precision', 與 'human' 的預設值
48 # 同時也是 'currency', 'percentage', 'precision', 與 'human' 的預設值
49 format:
49 format:
50 # 設定小數點分隔字元,以使用更高的準確度 (例如: 1.0 / 2.0 == 0.5)
50 # 設定小數點分隔字元,以使用更高的準確度 (例如: 1.0 / 2.0 == 0.5)
51 separator: "."
51 separator: "."
52 # 千分位符號 (例如:一百萬是 1,000,000) (均以三個位數來分組)
52 # 千分位符號 (例如:一百萬是 1,000,000) (均以三個位數來分組)
53 delimiter: ","
53 delimiter: ","
54 # 小數點分隔字元後之精確位數 (數字 1 搭配 2 位精確位數為: 1.00)
54 # 小數點分隔字元後之精確位數 (數字 1 搭配 2 位精確位數為: 1.00)
55 precision: 3
55 precision: 3
56
56
57 # 使用於 number_to_currency()
57 # 使用於 number_to_currency()
58 currency:
58 currency:
59 format:
59 format:
60 # 貨幣符號的位置? %u 是貨幣符號, %n 是數值 (預設值: $5.00)
60 # 貨幣符號的位置? %u 是貨幣符號, %n 是數值 (預設值: $5.00)
61 format: "%u%n"
61 format: "%u%n"
62 unit: "NT$"
62 unit: "NT$"
63 # 下列三個選項設定, 若有設定值將會取代 number.format 成為預設值
63 # 下列三個選項設定, 若有設定值將會取代 number.format 成為預設值
64 separator: "."
64 separator: "."
65 delimiter: ","
65 delimiter: ","
66 precision: 2
66 precision: 2
67
67
68 # 使用於 number_to_percentage()
68 # 使用於 number_to_percentage()
69 percentage:
69 percentage:
70 format:
70 format:
71 # 下列三個選項設定, 若有設定值將會取代 number.format 成為預設值
71 # 下列三個選項設定, 若有設定值將會取代 number.format 成為預設值
72 # separator:
72 # separator:
73 delimiter: ""
73 delimiter: ""
74 # precision:
74 # precision:
75
75
76 # 使用於 number_to_precision()
76 # 使用於 number_to_precision()
77 precision:
77 precision:
78 format:
78 format:
79 # 下列三個選項設定, 若有設定值將會取代 number.format 成為預設值
79 # 下列三個選項設定, 若有設定值將會取代 number.format 成為預設值
80 # separator:
80 # separator:
81 delimiter: ""
81 delimiter: ""
82 # precision:
82 # precision:
83
83
84 # 使用於 number_to_human_size()
84 # 使用於 number_to_human_size()
85 human:
85 human:
86 format:
86 format:
87 # 下列三個選項設定, 若有設定值將會取代 number.format 成為預設值
87 # 下列三個選項設定, 若有設定值將會取代 number.format 成為預設值
88 # separator:
88 # separator:
89 delimiter: ""
89 delimiter: ""
90 precision: 3
90 precision: 3
91 # 儲存單位輸出格式.
91 # 儲存單位輸出格式.
92 # %u 是儲存單位, %n 是數值 (預設值: 2 MB)
92 # %u 是儲存單位, %n 是數值 (預設值: 2 MB)
93 storage_units:
93 storage_units:
94 format: "%n %u"
94 format: "%n %u"
95 units:
95 units:
96 byte:
96 byte:
97 one: "位元組 (B)"
97 one: "位元組 (B)"
98 other: "位元組 (B)"
98 other: "位元組 (B)"
99 kb: "KB"
99 kb: "KB"
100 mb: "MB"
100 mb: "MB"
101 gb: "GB"
101 gb: "GB"
102 tb: "TB"
102 tb: "TB"
103
103
104 # 使用於 distance_of_time_in_words(), distance_of_time_in_words_to_now(), time_ago_in_words()
104 # 使用於 distance_of_time_in_words(), distance_of_time_in_words_to_now(), time_ago_in_words()
105 datetime:
105 datetime:
106 distance_in_words:
106 distance_in_words:
107 half_a_minute: "半分鐘"
107 half_a_minute: "半分鐘"
108 less_than_x_seconds:
108 less_than_x_seconds:
109 one: "小於 1 秒"
109 one: "小於 1 秒"
110 other: "小於 %{count} 秒"
110 other: "小於 %{count} 秒"
111 x_seconds:
111 x_seconds:
112 one: "1 秒"
112 one: "1 秒"
113 other: "%{count} 秒"
113 other: "%{count} 秒"
114 less_than_x_minutes:
114 less_than_x_minutes:
115 one: "小於 1 分鐘"
115 one: "小於 1 分鐘"
116 other: "小於 %{count} 分鐘"
116 other: "小於 %{count} 分鐘"
117 x_minutes:
117 x_minutes:
118 one: "1 分鐘"
118 one: "1 分鐘"
119 other: "%{count} 分鐘"
119 other: "%{count} 分鐘"
120 about_x_hours:
120 about_x_hours:
121 one: "約 1 小時"
121 one: "約 1 小時"
122 other: "約 %{count} 小時"
122 other: "約 %{count} 小時"
123 x_hours:
123 x_hours:
124 one: "1 hour"
124 one: "1 hour"
125 other: "%{count} hours"
125 other: "%{count} hours"
126 x_days:
126 x_days:
127 one: "1 天"
127 one: "1 天"
128 other: "%{count} 天"
128 other: "%{count} 天"
129 about_x_months:
129 about_x_months:
130 one: "約 1 個月"
130 one: "約 1 個月"
131 other: "約 %{count} 個月"
131 other: "約 %{count} 個月"
132 x_months:
132 x_months:
133 one: "1 個月"
133 one: "1 個月"
134 other: "%{count} 個月"
134 other: "%{count} 個月"
135 about_x_years:
135 about_x_years:
136 one: "約 1 年"
136 one: "約 1 年"
137 other: "約 %{count} 年"
137 other: "約 %{count} 年"
138 over_x_years:
138 over_x_years:
139 one: "超過 1 年"
139 one: "超過 1 年"
140 other: "超過 %{count} 年"
140 other: "超過 %{count} 年"
141 almost_x_years:
141 almost_x_years:
142 one: "將近 1 年"
142 one: "將近 1 年"
143 other: "將近 %{count} 年"
143 other: "將近 %{count} 年"
144 prompts:
144 prompts:
145 year: "年"
145 year: "年"
146 month: "月"
146 month: "月"
147 day: "日"
147 day: "日"
148 hour: "時"
148 hour: "時"
149 minute: "分"
149 minute: "分"
150 second: "秒"
150 second: "秒"
151
151
152 activerecord:
152 activerecord:
153 errors:
153 errors:
154 template:
154 template:
155 header:
155 header:
156 one: "有 1 個錯誤發生使得「%{model}」無法被儲存。"
156 one: "有 1 個錯誤發生使得「%{model}」無法被儲存。"
157 other: "有 %{count} 個錯誤發生使得「%{model}」無法被儲存。"
157 other: "有 %{count} 個錯誤發生使得「%{model}」無法被儲存。"
158 # The variable :count is also available
158 # The variable :count is also available
159 body: "下面所列欄位有問題:"
159 body: "下面所列欄位有問題:"
160 # The values :model, :attribute and :value are always available for interpolation
160 # The values :model, :attribute and :value are always available for interpolation
161 # The value :count is available when applicable. Can be used for pluralization.
161 # The value :count is available when applicable. Can be used for pluralization.
162 messages:
162 messages:
163 inclusion: "沒有包含在列表中"
163 inclusion: "沒有包含在列表中"
164 exclusion: "是被保留的"
164 exclusion: "是被保留的"
165 invalid: "是無效的"
165 invalid: "是無效的"
166 confirmation: "不符合確認值"
166 confirmation: "不符合確認值"
167 accepted: "必须是可被接受的"
167 accepted: "必须是可被接受的"
168 empty: "不能留空"
168 empty: "不能留空"
169 blank: "不能是空白字元"
169 blank: "不能是空白字元"
170 too_long: "過長(最長是 %{count} 個字)"
170 too_long: "過長(最長是 %{count} 個字)"
171 too_short: "過短(最短是 %{count} 個字)"
171 too_short: "過短(最短是 %{count} 個字)"
172 wrong_length: "字數錯誤(必須是 %{count} 個字)"
172 wrong_length: "字數錯誤(必須是 %{count} 個字)"
173 taken: "已經被使用"
173 taken: "已經被使用"
174 not_a_number: "不是數字"
174 not_a_number: "不是數字"
175 greater_than: "必須大於 %{count}"
175 greater_than: "必須大於 %{count}"
176 greater_than_or_equal_to: "必須大於或等於 %{count}"
176 greater_than_or_equal_to: "必須大於或等於 %{count}"
177 equal_to: "必須等於 %{count}"
177 equal_to: "必須等於 %{count}"
178 less_than: "必須小於 %{count}"
178 less_than: "必須小於 %{count}"
179 less_than_or_equal_to: "必須小於或等於 %{count}"
179 less_than_or_equal_to: "必須小於或等於 %{count}"
180 odd: "必須是奇數"
180 odd: "必須是奇數"
181 even: "必須是偶數"
181 even: "必須是偶數"
182 # Append your own errors here or at the model/attributes scope.
182 # Append your own errors here or at the model/attributes scope.
183 greater_than_start_date: "必須在開始日期之後"
183 greater_than_start_date: "必須在開始日期之後"
184 not_same_project: "不屬於同一個專案"
184 not_same_project: "不屬於同一個專案"
185 circular_dependency: "這個關聯會導致環狀相依"
185 circular_dependency: "這個關聯會導致環狀相依"
186 cant_link_an_issue_with_a_descendant: "問題無法被連結至自己的子任務"
186 cant_link_an_issue_with_a_descendant: "問題無法被連結至自己的子任務"
187
187
188 # You can define own errors for models or model attributes.
188 # You can define own errors for models or model attributes.
189 # The values :model, :attribute and :value are always available for interpolation.
189 # The values :model, :attribute and :value are always available for interpolation.
190 #
190 #
191 # For example,
191 # For example,
192 # models:
192 # models:
193 # user:
193 # user:
194 # blank: "This is a custom blank message for %{model}: %{attribute}"
194 # blank: "This is a custom blank message for %{model}: %{attribute}"
195 # attributes:
195 # attributes:
196 # login:
196 # login:
197 # blank: "This is a custom blank message for User login"
197 # blank: "This is a custom blank message for User login"
198 # Will define custom blank validation message for User model and
198 # Will define custom blank validation message for User model and
199 # custom blank validation message for login attribute of User model.
199 # custom blank validation message for login attribute of User model.
200 #models:
200 #models:
201
201
202 # Translate model names. Used in Model.human_name().
202 # Translate model names. Used in Model.human_name().
203 #models:
203 #models:
204 # For example,
204 # For example,
205 # user: "Dude"
205 # user: "Dude"
206 # will translate User model name to "Dude"
206 # will translate User model name to "Dude"
207
207
208 # Translate model attribute names. Used in Model.human_attribute_name(attribute).
208 # Translate model attribute names. Used in Model.human_attribute_name(attribute).
209 #attributes:
209 #attributes:
210 # For example,
210 # For example,
211 # user:
211 # user:
212 # login: "Handle"
212 # login: "Handle"
213 # will translate User attribute "login" as "Handle"
213 # will translate User attribute "login" as "Handle"
214
214
215 actionview_instancetag_blank_option: 請選擇
215 actionview_instancetag_blank_option: 請選擇
216
216
217 general_text_No: '否'
217 general_text_No: '否'
218 general_text_Yes: '是'
218 general_text_Yes: '是'
219 general_text_no: '否'
219 general_text_no: '否'
220 general_text_yes: '是'
220 general_text_yes: '是'
221 general_lang_name: 'Traditional Chinese (繁體中文)'
221 general_lang_name: 'Traditional Chinese (繁體中文)'
222 general_csv_separator: ','
222 general_csv_separator: ','
223 general_csv_decimal_separator: '.'
223 general_csv_decimal_separator: '.'
224 general_csv_encoding: Big5
224 general_csv_encoding: Big5
225 general_pdf_encoding: Big5
225 general_pdf_encoding: Big5
226 general_first_day_of_week: '7'
226 general_first_day_of_week: '7'
227
227
228 notice_account_updated: 帳戶更新資訊已儲存
228 notice_account_updated: 帳戶更新資訊已儲存
229 notice_account_invalid_creditentials: 帳戶或密碼不正確
229 notice_account_invalid_creditentials: 帳戶或密碼不正確
230 notice_account_password_updated: 帳戶新密碼已儲存
230 notice_account_password_updated: 帳戶新密碼已儲存
231 notice_account_wrong_password: 密碼不正確
231 notice_account_wrong_password: 密碼不正確
232 notice_account_register_done: 帳號已建立成功。欲啟用您的帳號,請點擊系統確認信函中的啟用連結。
232 notice_account_register_done: 帳號已建立成功。欲啟用您的帳號,請點擊系統確認信函中的啟用連結。
233 notice_account_unknown_email: 未知的使用者
233 notice_account_unknown_email: 未知的使用者
234 notice_can_t_change_password: 這個帳號使用外部認證方式,無法變更其密碼。
234 notice_can_t_change_password: 這個帳號使用外部認證方式,無法變更其密碼。
235 notice_account_lost_email_sent: 包含選擇新密碼指示的電子郵件,已經寄出給您。
235 notice_account_lost_email_sent: 包含選擇新密碼指示的電子郵件,已經寄出給您。
236 notice_account_activated: 您的帳號已經啟用,可用它登入系統。
236 notice_account_activated: 您的帳號已經啟用,可用它登入系統。
237 notice_successful_create: 建立成功
237 notice_successful_create: 建立成功
238 notice_successful_update: 更新成功
238 notice_successful_update: 更新成功
239 notice_successful_delete: 刪除成功
239 notice_successful_delete: 刪除成功
240 notice_successful_connection: 連線成功
240 notice_successful_connection: 連線成功
241 notice_file_not_found: 您想要存取的頁面已經不存在或被搬移至其他位置。
241 notice_file_not_found: 您想要存取的頁面已經不存在或被搬移至其他位置。
242 notice_locking_conflict: 資料已被其他使用者更新。
242 notice_locking_conflict: 資料已被其他使用者更新。
243 notice_not_authorized: 你未被授權存取此頁面。
243 notice_not_authorized: 你未被授權存取此頁面。
244 notice_not_authorized_archived_project: 您欲存取的專案已經被封存。
244 notice_not_authorized_archived_project: 您欲存取的專案已經被封存。
245 notice_email_sent: "郵件已經成功寄送至以下收件者: %{value}"
245 notice_email_sent: "郵件已經成功寄送至以下收件者: %{value}"
246 notice_email_error: "寄送郵件的過程中發生錯誤 (%{value})"
246 notice_email_error: "寄送郵件的過程中發生錯誤 (%{value})"
247 notice_feeds_access_key_reseted: 您的 Atom 存取金鑰已被重新設定。
247 notice_feeds_access_key_reseted: 您的 Atom 存取金鑰已被重新設定。
248 notice_api_access_key_reseted: 您的 API 存取金鑰已被重新設定。
248 notice_api_access_key_reseted: 您的 API 存取金鑰已被重新設定。
249 notice_failed_to_save_issues: "無法儲存 %{count} 問題到下列所選取的 %{total} 個項目中: %{ids}。"
249 notice_failed_to_save_issues: "無法儲存 %{count} 問題到下列所選取的 %{total} 個項目中: %{ids}。"
250 notice_failed_to_save_time_entries: "無法儲存 %{count} 個工時到下列所選取的 %{total} 個項目中: %{ids}。"
250 notice_failed_to_save_time_entries: "無法儲存 %{count} 個工時到下列所選取的 %{total} 個項目中: %{ids}。"
251 notice_failed_to_save_members: "成員儲存失敗: %{errors}."
251 notice_failed_to_save_members: "成員儲存失敗: %{errors}."
252 notice_no_issue_selected: "未選擇任何問題!請勾選您想要編輯的問題。"
252 notice_no_issue_selected: "未選擇任何問題!請勾選您想要編輯的問題。"
253 notice_account_pending: "您的帳號已經建立,正在等待管理員的審核。"
253 notice_account_pending: "您的帳號已經建立,正在等待管理員的審核。"
254 notice_default_data_loaded: 預設組態已載入成功。
254 notice_default_data_loaded: 預設組態已載入成功。
255 notice_unable_delete_version: 無法刪除版本。
255 notice_unable_delete_version: 無法刪除版本。
256 notice_unable_delete_time_entry: 無法刪除工時記錄項目。
256 notice_unable_delete_time_entry: 無法刪除工時記錄項目。
257 notice_issue_done_ratios_updated: 問題完成百分比已更新。
257 notice_issue_done_ratios_updated: 問題完成百分比已更新。
258 notice_gantt_chart_truncated: "由於項目數量超過可顯示數量的最大值 (%{max}),故此甘特圖尾部已被截斷"
258 notice_gantt_chart_truncated: "由於項目數量超過可顯示數量的最大值 (%{max}),故此甘特圖尾部已被截斷"
259 notice_issue_successful_create: "問題 %{id} 已建立。"
259 notice_issue_successful_create: "問題 %{id} 已建立。"
260 notice_issue_update_conflict: "當您正在編輯這個問題的時候,它已經被其他人搶先一步更新過。"
260 notice_issue_update_conflict: "當您正在編輯這個問題的時候,它已經被其他人搶先一步更新過。"
261 notice_account_deleted: "您的帳戶已被永久刪除。"
261 notice_account_deleted: "您的帳戶已被永久刪除。"
262 notice_user_successful_create: "已建立用戶 %{id}。"
262 notice_user_successful_create: "已建立用戶 %{id}。"
263
263
264 error_can_t_load_default_data: "無法載入預設組態: %{value}"
264 error_can_t_load_default_data: "無法載入預設組態: %{value}"
265 error_scm_not_found: "在儲存機制中找不到這個項目或修訂版。"
265 error_scm_not_found: "在儲存機制中找不到這個項目或修訂版。"
266 error_scm_command_failed: "嘗試存取儲存機制時發生錯誤: %{value}"
266 error_scm_command_failed: "嘗試存取儲存機制時發生錯誤: %{value}"
267 error_scm_annotate: "項目不存在或項目無法被加上附註。"
267 error_scm_annotate: "項目不存在或項目無法被加上附註。"
268 error_scm_annotate_big_text_file: 此項目無法被標註,因為它已經超過最大的文字檔大小。
268 error_scm_annotate_big_text_file: 此項目無法被標註,因為它已經超過最大的文字檔大小。
269 error_issue_not_found_in_project: '該問題不存在或不屬於此專案'
269 error_issue_not_found_in_project: '該問題不存在或不屬於此專案'
270 error_no_tracker_in_project: '此專案尚未指定追蹤標籤。請檢查專案的設定資訊。'
270 error_no_tracker_in_project: '此專案尚未指定追蹤標籤。請檢查專案的設定資訊。'
271 error_no_default_issue_status: '尚未定義問題狀態的預設值。請您前往「網站管理」->「問題狀態清單」頁面,檢查相關組態設定。'
271 error_no_default_issue_status: '尚未定義問題狀態的預設值。請您前往「網站管理」->「問題狀態清單」頁面,檢查相關組態設定。'
272 error_can_not_delete_custom_field: 無法刪除自訂欄位
272 error_can_not_delete_custom_field: 無法刪除自訂欄位
273 error_can_not_delete_tracker: "此追蹤標籤已包含問題,無法被刪除。"
273 error_can_not_delete_tracker: "此追蹤標籤已包含問題,無法被刪除。"
274 error_can_not_remove_role: "此角色已被使用,無法將其刪除。"
274 error_can_not_remove_role: "此角色已被使用,無法將其刪除。"
275 error_can_not_reopen_issue_on_closed_version: '指派給「已結束」版本的問題,無法再將其狀態變更為「進行中」'
275 error_can_not_reopen_issue_on_closed_version: '指派給「已結束」版本的問題,無法再將其狀態變更為「進行中」'
276 error_can_not_archive_project: 此專案無法被封存
276 error_can_not_archive_project: 此專案無法被封存
277 error_issue_done_ratios_not_updated: "問題完成百分比未更新。"
277 error_issue_done_ratios_not_updated: "問題完成百分比未更新。"
278 error_workflow_copy_source: '請選擇一個來源問題追蹤標籤或角色'
278 error_workflow_copy_source: '請選擇一個來源問題追蹤標籤或角色'
279 error_workflow_copy_target: '請選擇一個(或多個)目的問題追蹤標籤或角色'
279 error_workflow_copy_target: '請選擇一個(或多個)目的問題追蹤標籤或角色'
280 error_unable_delete_issue_status: '無法刪除問題狀態'
280 error_unable_delete_issue_status: '無法刪除問題狀態'
281 error_unable_to_connect: "無法連線至(%{value})"
281 error_unable_to_connect: "無法連線至(%{value})"
282 error_attachment_too_big: "這個檔案無法被上傳,因為它已經超過最大的檔案大小 (%{max_size})"
282 error_attachment_too_big: "這個檔案無法被上傳,因為它已經超過最大的檔案大小 (%{max_size})"
283 error_session_expired: "您的工作階段已經過期。請重新登入。"
283 error_session_expired: "您的工作階段已經過期。請重新登入。"
284 warning_attachments_not_saved: "%{count} 個附加檔案無法被儲存。"
284 warning_attachments_not_saved: "%{count} 個附加檔案無法被儲存。"
285
285
286 mail_subject_lost_password: 您的 Redmine 網站密碼
286 mail_subject_lost_password: 您的 Redmine 網站密碼
287 mail_body_lost_password: '欲變更您的 Redmine 網站密碼, 請點選以下鏈結:'
287 mail_body_lost_password: '欲變更您的 Redmine 網站密碼, 請點選以下鏈結:'
288 mail_subject_register: 啟用您的 Redmine 帳號
288 mail_subject_register: 啟用您的 Redmine 帳號
289 mail_body_register: '欲啟用您的 Redmine 帳號, 請點選以下鏈結:'
289 mail_body_register: '欲啟用您的 Redmine 帳號, 請點選以下鏈結:'
290 mail_body_account_information_external: "您可以使用 %{value} 帳號登入 Redmine 網站。"
290 mail_body_account_information_external: "您可以使用 %{value} 帳號登入 Redmine 網站。"
291 mail_body_account_information: 您的 Redmine 帳號資訊
291 mail_body_account_information: 您的 Redmine 帳號資訊
292 mail_subject_account_activation_request: Redmine 帳號啟用需求通知
292 mail_subject_account_activation_request: Redmine 帳號啟用需求通知
293 mail_body_account_activation_request: "有位新用戶 (%{value}) 已經完成註冊,正等候您的審核:"
293 mail_body_account_activation_request: "有位新用戶 (%{value}) 已經完成註冊,正等候您的審核:"
294 mail_subject_reminder: "您有 %{count} 個問題即將到期 (%{days})"
294 mail_subject_reminder: "您有 %{count} 個問題即將到期 (%{days})"
295 mail_body_reminder: "%{count} 個指派給您的問題,將於 %{days} 天之內到期:"
295 mail_body_reminder: "%{count} 個指派給您的問題,將於 %{days} 天之內到期:"
296 mail_subject_wiki_content_added: "'%{id}' wiki 頁面已被新增"
296 mail_subject_wiki_content_added: "'%{id}' wiki 頁面已被新增"
297 mail_body_wiki_content_added: "此 '%{id}' wiki 頁面已被 %{author} 新增。"
297 mail_body_wiki_content_added: "此 '%{id}' wiki 頁面已被 %{author} 新增。"
298 mail_subject_wiki_content_updated: "'%{id}' wiki 頁面已被更新"
298 mail_subject_wiki_content_updated: "'%{id}' wiki 頁面已被更新"
299 mail_body_wiki_content_updated: "此 '%{id}' wiki 頁面已被 %{author} 更新。"
299 mail_body_wiki_content_updated: "此 '%{id}' wiki 頁面已被 %{author} 更新。"
300
300
301
301
302 field_name: 名稱
302 field_name: 名稱
303 field_description: 概述
303 field_description: 概述
304 field_summary: 摘要
304 field_summary: 摘要
305 field_is_required: 必填
305 field_is_required: 必填
306 field_firstname: 名字
306 field_firstname: 名字
307 field_lastname: 姓氏
307 field_lastname: 姓氏
308 field_mail: 電子郵件
308 field_mail: 電子郵件
309 field_filename: 檔案名稱
309 field_filename: 檔案名稱
310 field_filesize: 大小
310 field_filesize: 大小
311 field_downloads: 下載次數
311 field_downloads: 下載次數
312 field_author: 作者
312 field_author: 作者
313 field_created_on: 建立日期
313 field_created_on: 建立日期
314 field_updated_on: 更新日期
314 field_updated_on: 更新日期
315 field_closed_on: 結束日期
315 field_closed_on: 結束日期
316 field_field_format: 格式
316 field_field_format: 格式
317 field_is_for_all: 給全部的專案
317 field_is_for_all: 給全部的專案
318 field_possible_values: 可能值
318 field_possible_values: 可能值
319 field_regexp: 正規表示式
319 field_regexp: 正規表示式
320 field_min_length: 最小長度
320 field_min_length: 最小長度
321 field_max_length: 最大長度
321 field_max_length: 最大長度
322 field_value:
322 field_value:
323 field_category: 分類
323 field_category: 分類
324 field_title: 標題
324 field_title: 標題
325 field_project: 專案
325 field_project: 專案
326 field_issue: 問題
326 field_issue: 問題
327 field_status: 狀態
327 field_status: 狀態
328 field_notes: 筆記
328 field_notes: 筆記
329 field_is_closed: 問題已結束
329 field_is_closed: 問題已結束
330 field_is_default: 預設值
330 field_is_default: 預設值
331 field_tracker: 追蹤標籤
331 field_tracker: 追蹤標籤
332 field_subject: 主旨
332 field_subject: 主旨
333 field_due_date: 完成日期
333 field_due_date: 完成日期
334 field_assigned_to: 分派給
334 field_assigned_to: 分派給
335 field_priority: 優先權
335 field_priority: 優先權
336 field_fixed_version: 版本
336 field_fixed_version: 版本
337 field_user: 用戶
337 field_user: 用戶
338 field_principal: 原則
338 field_principal: 原則
339 field_role: 角色
339 field_role: 角色
340 field_homepage: 網站首頁
340 field_homepage: 網站首頁
341 field_is_public: 公開
341 field_is_public: 公開
342 field_parent: 父專案
342 field_parent: 父專案
343 field_is_in_roadmap: 問題顯示於版本藍圖中
343 field_is_in_roadmap: 問題顯示於版本藍圖中
344 field_login: 帳戶名稱
344 field_login: 帳戶名稱
345 field_mail_notification: 電子郵件提醒選項
345 field_mail_notification: 電子郵件提醒選項
346 field_admin: 管理者
346 field_admin: 管理者
347 field_last_login_on: 最近連線日期
347 field_last_login_on: 最近連線日期
348 field_language: 語系
348 field_language: 語系
349 field_effective_date: 日期
349 field_effective_date: 日期
350 field_password: 目前密碼
350 field_password: 目前密碼
351 field_new_password: 新密碼
351 field_new_password: 新密碼
352 field_password_confirmation: 確認新密碼
352 field_password_confirmation: 確認新密碼
353 field_version: 版本
353 field_version: 版本
354 field_type: Type
354 field_type: Type
355 field_host: Host
355 field_host: Host
356 field_port: 連接埠
356 field_port: 連接埠
357 field_account: 帳戶
357 field_account: 帳戶
358 field_base_dn: Base DN
358 field_base_dn: Base DN
359 field_attr_login: 登入屬性
359 field_attr_login: 登入屬性
360 field_attr_firstname: 名字屬性
360 field_attr_firstname: 名字屬性
361 field_attr_lastname: 姓氏屬性
361 field_attr_lastname: 姓氏屬性
362 field_attr_mail: 電子郵件信箱屬性
362 field_attr_mail: 電子郵件信箱屬性
363 field_onthefly: 即時建立使用者
363 field_onthefly: 即時建立使用者
364 field_start_date: 開始日期
364 field_start_date: 開始日期
365 field_done_ratio: 完成百分比
365 field_done_ratio: 完成百分比
366 field_auth_source: 認證模式
366 field_auth_source: 認證模式
367 field_hide_mail: 隱藏我的電子郵件
367 field_hide_mail: 隱藏我的電子郵件
368 field_comments: 回應
368 field_comments: 回應
369 field_url: 網址
369 field_url: 網址
370 field_start_page: 首頁
370 field_start_page: 首頁
371 field_subproject: 子專案
371 field_subproject: 子專案
372 field_hours: 小時
372 field_hours: 小時
373 field_activity: 活動
373 field_activity: 活動
374 field_spent_on: 日期
374 field_spent_on: 日期
375 field_identifier: 代碼
375 field_identifier: 代碼
376 field_is_filter: 用來作為過濾器
376 field_is_filter: 用來作為過濾器
377 field_issue_to: 相關問題
377 field_issue_to: 相關問題
378 field_delay: 逾期
378 field_delay: 逾期
379 field_assignable: 問題可被分派至此角色
379 field_assignable: 問題可被分派至此角色
380 field_redirect_existing_links: 重新導向現有連結
380 field_redirect_existing_links: 重新導向現有連結
381 field_estimated_hours: 預估工時
381 field_estimated_hours: 預估工時
382 field_column_names: 欄位
382 field_column_names: 欄位
383 field_time_entries: 耗用工時
383 field_time_entries: 耗用工時
384 field_time_zone: 時區
384 field_time_zone: 時區
385 field_searchable: 可用做搜尋條件
385 field_searchable: 可用做搜尋條件
386 field_default_value: 預設值
386 field_default_value: 預設值
387 field_comments_sorting: 回應排序
387 field_comments_sorting: 回應排序
388 field_parent_title: 父頁面
388 field_parent_title: 父頁面
389 field_editable: 可編輯
389 field_editable: 可編輯
390 field_watcher: 觀察者
390 field_watcher: 觀察者
391 field_identity_url: OpenID 網址
391 field_identity_url: OpenID 網址
392 field_content: 內容
392 field_content: 內容
393 field_group_by: 結果分組方式
393 field_group_by: 結果分組方式
394 field_sharing: 共用
394 field_sharing: 共用
395 field_parent_issue: 父問題
395 field_parent_issue: 父問題
396 field_member_of_group: "被指派者的群組"
396 field_member_of_group: "被指派者的群組"
397 field_assigned_to_role: "被指派者的角色"
397 field_assigned_to_role: "被指派者的角色"
398 field_text: 內容文字
398 field_text: 內容文字
399 field_visible: 可被看見
399 field_visible: 可被看見
400 field_warn_on_leaving_unsaved: "提醒我將要離開的頁面中尚有未儲存的資料"
400 field_warn_on_leaving_unsaved: "提醒我將要離開的頁面中尚有未儲存的資料"
401 field_issues_visibility: 問題可見度
401 field_issues_visibility: 問題可見度
402 field_is_private: 私人
402 field_is_private: 私人
403 field_commit_logs_encoding: 認可訊息編碼
403 field_commit_logs_encoding: 認可訊息編碼
404 field_scm_path_encoding: 路徑編碼
404 field_scm_path_encoding: 路徑編碼
405 field_path_to_repository: 儲存機制路徑
405 field_path_to_repository: 儲存機制路徑
406 field_root_directory: 根資料夾
406 field_root_directory: 根資料夾
407 field_cvsroot: CVSROOT
407 field_cvsroot: CVSROOT
408 field_cvs_module: 模組
408 field_cvs_module: 模組
409 field_repository_is_default: 主要儲存機制
409 field_repository_is_default: 主要儲存機制
410 field_multiple: 多重值
410 field_multiple: 多重值
411 field_auth_source_ldap_filter: LDAP 篩選器
411 field_auth_source_ldap_filter: LDAP 篩選器
412 field_core_fields: 標準欄位
412 field_core_fields: 標準欄位
413 field_timeout: "逾時 (單位: 秒)"
413 field_timeout: "逾時 (單位: 秒)"
414 field_board_parent: 父論壇
414 field_board_parent: 父論壇
415 field_private_notes: 私人筆記
415 field_private_notes: 私人筆記
416 field_inherit_members: 繼承父專案成員
416 field_inherit_members: 繼承父專案成員
417 field_generate_password: 產生密碼
417 field_generate_password: 產生密碼
418
418
419 setting_app_title: 標題
419 setting_app_title: 標題
420 setting_app_subtitle: 副標題
420 setting_app_subtitle: 副標題
421 setting_welcome_text: 歡迎詞
421 setting_welcome_text: 歡迎詞
422 setting_default_language: 預設語系
422 setting_default_language: 預設語系
423 setting_login_required: 需要驗證
423 setting_login_required: 需要驗證
424 setting_self_registration: 註冊選項
424 setting_self_registration: 註冊選項
425 setting_attachment_max_size: 附件大小限制
425 setting_attachment_max_size: 附件大小限制
426 setting_issues_export_limit: 問題匯出限制
426 setting_issues_export_limit: 問題匯出限制
427 setting_mail_from: 寄件者電子郵件
427 setting_mail_from: 寄件者電子郵件
428 setting_bcc_recipients: 使用密件副本 (BCC)
428 setting_bcc_recipients: 使用密件副本 (BCC)
429 setting_plain_text_mail: 純文字郵件 (不含 HTML)
429 setting_plain_text_mail: 純文字郵件 (不含 HTML)
430 setting_host_name: 主機名稱
430 setting_host_name: 主機名稱
431 setting_text_formatting: 文字格式
431 setting_text_formatting: 文字格式
432 setting_wiki_compression: 壓縮 Wiki 歷史文章
432 setting_wiki_compression: 壓縮 Wiki 歷史文章
433 setting_feeds_limit: Atom 新聞限制
433 setting_feeds_limit: Atom 新聞限制
434 setting_autofetch_changesets: 自動擷取認可
434 setting_autofetch_changesets: 自動擷取認可
435 setting_default_projects_public: 新建立之專案預設為「公開」
435 setting_default_projects_public: 新建立之專案預設為「公開」
436 setting_sys_api_enabled: 啟用管理儲存機制的網頁服務 (Web Service)
436 setting_sys_api_enabled: 啟用管理儲存機制的網頁服務 (Web Service)
437 setting_commit_ref_keywords: 認可用於參照之關鍵字
437 setting_commit_ref_keywords: 認可用於參照之關鍵字
438 setting_commit_fix_keywords: 認可用於修正之關鍵字
438 setting_commit_fix_keywords: 認可用於修正之關鍵字
439 setting_autologin: 自動登入
439 setting_autologin: 自動登入
440 setting_date_format: 日期格式
440 setting_date_format: 日期格式
441 setting_time_format: 時間格式
441 setting_time_format: 時間格式
442 setting_cross_project_issue_relations: 允許關聯至其它專案的問題
442 setting_cross_project_issue_relations: 允許關聯至其它專案的問題
443 setting_cross_project_subtasks: 允許跨專案的子任務
443 setting_cross_project_subtasks: 允許跨專案的子任務
444 setting_issue_list_default_columns: 預設顯示於問題清單的欄位
444 setting_issue_list_default_columns: 預設顯示於問題清單的欄位
445 setting_repositories_encodings: 附加檔案與儲存機制的編碼
445 setting_repositories_encodings: 附加檔案與儲存機制的編碼
446 setting_emails_header: 電子郵件前頭說明
446 setting_emails_header: 電子郵件前頭說明
447 setting_emails_footer: 電子郵件附帶說明
447 setting_emails_footer: 電子郵件附帶說明
448 setting_protocol: 協定
448 setting_protocol: 協定
449 setting_per_page_options: 每頁顯示個數選項
449 setting_per_page_options: 每頁顯示個數選項
450 setting_user_format: 使用者顯示格式
450 setting_user_format: 使用者顯示格式
451 setting_activity_days_default: 專案活動顯示天數
451 setting_activity_days_default: 專案活動顯示天數
452 setting_display_subprojects_issues: 預設於父專案中顯示子專案的問題
452 setting_display_subprojects_issues: 預設於父專案中顯示子專案的問題
453 setting_enabled_scm: 啟用的 SCM
453 setting_enabled_scm: 啟用的 SCM
454 setting_mail_handler_body_delimiters: "截去郵件中包含下列值之後的內容"
454 setting_mail_handler_body_delimiters: "截去郵件中包含下列值之後的內容"
455 setting_mail_handler_api_enabled: 啟用處理傳入電子郵件的服務
455 setting_mail_handler_api_enabled: 啟用處理傳入電子郵件的服務
456 setting_mail_handler_api_key: API 金鑰
456 setting_mail_handler_api_key: API 金鑰
457 setting_sequential_project_identifiers: 循序產生專案識別碼
457 setting_sequential_project_identifiers: 循序產生專案識別碼
458 setting_gravatar_enabled: 啟用 Gravatar 全球認證大頭像
458 setting_gravatar_enabled: 啟用 Gravatar 全球認證大頭像
459 setting_gravatar_default: 預設全球認證大頭像圖片
459 setting_gravatar_default: 預設全球認證大頭像圖片
460 setting_diff_max_lines_displayed: 差異顯示行數之最大值
460 setting_diff_max_lines_displayed: 差異顯示行數之最大值
461 setting_file_max_size_displayed: 檔案內容顯示大小之最大值
461 setting_file_max_size_displayed: 檔案內容顯示大小之最大值
462 setting_repository_log_display_limit: 修訂版顯示數目之最大值
462 setting_repository_log_display_limit: 修訂版顯示數目之最大值
463 setting_openid: 允許使用 OpenID 登入與註冊
463 setting_openid: 允許使用 OpenID 登入與註冊
464 setting_password_min_length: 密碼最小長度
464 setting_password_min_length: 密碼最小長度
465 setting_new_project_user_role_id: 管理者以外之用戶建立新專案時,將被指派的角色
465 setting_new_project_user_role_id: 管理者以外之用戶建立新專案時,將被指派的角色
466 setting_default_projects_modules: 新專案預設啟用的模組
466 setting_default_projects_modules: 新專案預設啟用的模組
467 setting_issue_done_ratio: 計算問題完成百分比之方式
467 setting_issue_done_ratio: 計算問題完成百分比之方式
468 setting_issue_done_ratio_issue_field: 依據問題完成百分比欄位
468 setting_issue_done_ratio_issue_field: 依據問題完成百分比欄位
469 setting_issue_done_ratio_issue_status: 依據問題狀態
469 setting_issue_done_ratio_issue_status: 依據問題狀態
470 setting_start_of_week: 週的第一天
470 setting_start_of_week: 週的第一天
471 setting_rest_api_enabled: 啟用 REST 網路服務技術(Web Service)
471 setting_rest_api_enabled: 啟用 REST 網路服務技術(Web Service)
472 setting_cache_formatted_text: 快取已格式化文字
472 setting_cache_formatted_text: 快取已格式化文字
473 setting_default_notification_option: 預設通知選項
473 setting_default_notification_option: 預設通知選項
474 setting_commit_logtime_enabled: 啟用認可中的時間記錄
474 setting_commit_logtime_enabled: 啟用認可中的時間記錄
475 setting_commit_logtime_activity_id: 時間記錄對應的活動
475 setting_commit_logtime_activity_id: 時間記錄對應的活動
476 setting_gantt_items_limit: 甘特圖中項目顯示數量的最大值
476 setting_gantt_items_limit: 甘特圖中項目顯示數量的最大值
477 setting_issue_group_assignment: 允許問題被指派至群組
477 setting_issue_group_assignment: 允許問題被指派至群組
478 setting_default_issue_start_date_to_creation_date: 設定新問題的起始日期為今天的日期
478 setting_default_issue_start_date_to_creation_date: 設定新問題的起始日期為今天的日期
479 setting_commit_cross_project_ref: 允許關聯並修正其他專案的問題
479 setting_commit_cross_project_ref: 允許關聯並修正其他專案的問題
480 setting_unsubscribe: 允許用戶取消註冊(刪除帳戶)
480 setting_unsubscribe: 允許用戶取消註冊(刪除帳戶)
481 setting_session_lifetime: 工作階段存留時間最大值
481 setting_session_lifetime: 工作階段存留時間最大值
482 setting_session_timeout: 工作階段無活動逾時時間
482 setting_session_timeout: 工作階段無活動逾時時間
483 setting_thumbnails_enabled: 顯示附加檔案的縮圖
483 setting_thumbnails_enabled: 顯示附加檔案的縮圖
484 setting_thumbnails_size: "縮圖大小 (單位: 像素 pixels)"
484 setting_thumbnails_size: "縮圖大小 (單位: 像素 pixels)"
485 setting_non_working_week_days: 非工作日
485 setting_non_working_week_days: 非工作日
486 setting_jsonp_enabled: 啟用 JSONP 支援
486 setting_jsonp_enabled: 啟用 JSONP 支援
487 setting_default_projects_tracker_ids: 新專案預設使用的追蹤標籤
487 setting_default_projects_tracker_ids: 新專案預設使用的追蹤標籤
488
488
489 permission_add_project: 建立專案
489 permission_add_project: 建立專案
490 permission_add_subprojects: 建立子專案
490 permission_add_subprojects: 建立子專案
491 permission_edit_project: 編輯專案
491 permission_edit_project: 編輯專案
492 permission_close_project: 關閉 / 重新開啟專案
492 permission_close_project: 關閉 / 重新開啟專案
493 permission_select_project_modules: 選擇專案模組
493 permission_select_project_modules: 選擇專案模組
494 permission_manage_members: 管理成員
494 permission_manage_members: 管理成員
495 permission_manage_project_activities: 管理專案活動
495 permission_manage_project_activities: 管理專案活動
496 permission_manage_versions: 管理版本
496 permission_manage_versions: 管理版本
497 permission_manage_categories: 管理問題分類
497 permission_manage_categories: 管理問題分類
498 permission_view_issues: 檢視問題
498 permission_view_issues: 檢視問題
499 permission_add_issues: 新增問題
499 permission_add_issues: 新增問題
500 permission_edit_issues: 編輯問題
500 permission_edit_issues: 編輯問題
501 permission_manage_issue_relations: 管理問題關聯
501 permission_manage_issue_relations: 管理問題關聯
502 permission_set_issues_private: 設定問題為公開或私人
502 permission_set_issues_private: 設定問題為公開或私人
503 permission_set_own_issues_private: 設定自己的問題為公開或私人
503 permission_set_own_issues_private: 設定自己的問題為公開或私人
504 permission_add_issue_notes: 新增筆記
504 permission_add_issue_notes: 新增筆記
505 permission_edit_issue_notes: 編輯筆記
505 permission_edit_issue_notes: 編輯筆記
506 permission_edit_own_issue_notes: 編輯自己的筆記
506 permission_edit_own_issue_notes: 編輯自己的筆記
507 permission_view_private_notes: 檢視私人筆記
507 permission_view_private_notes: 檢視私人筆記
508 permission_set_notes_private: 設定筆記為私人筆記
508 permission_set_notes_private: 設定筆記為私人筆記
509 permission_move_issues: 搬移問題
509 permission_move_issues: 搬移問題
510 permission_delete_issues: 刪除問題
510 permission_delete_issues: 刪除問題
511 permission_manage_public_queries: 管理公開查詢
511 permission_manage_public_queries: 管理公開查詢
512 permission_save_queries: 儲存查詢
512 permission_save_queries: 儲存查詢
513 permission_view_gantt: 檢視甘特圖
513 permission_view_gantt: 檢視甘特圖
514 permission_view_calendar: 檢視日曆
514 permission_view_calendar: 檢視日曆
515 permission_view_issue_watchers: 檢視監看者清單
515 permission_view_issue_watchers: 檢視監看者清單
516 permission_add_issue_watchers: 新增監看者
516 permission_add_issue_watchers: 新增監看者
517 permission_delete_issue_watchers: 刪除監看者
517 permission_delete_issue_watchers: 刪除監看者
518 permission_log_time: 紀錄耗用工時
518 permission_log_time: 紀錄耗用工時
519 permission_view_time_entries: 檢視耗用工時
519 permission_view_time_entries: 檢視耗用工時
520 permission_edit_time_entries: 編輯工時紀錄
520 permission_edit_time_entries: 編輯工時紀錄
521 permission_edit_own_time_entries: 編輯自己的工時記錄
521 permission_edit_own_time_entries: 編輯自己的工時記錄
522 permission_manage_news: 管理新聞
522 permission_manage_news: 管理新聞
523 permission_comment_news: 回應新聞
523 permission_comment_news: 回應新聞
524 permission_view_documents: 檢視文件
524 permission_view_documents: 檢視文件
525 permission_add_documents: 新增文件
525 permission_add_documents: 新增文件
526 permission_edit_documents: 編輯文件
526 permission_edit_documents: 編輯文件
527 permission_delete_documents: 刪除文件
527 permission_delete_documents: 刪除文件
528 permission_manage_files: 管理檔案
528 permission_manage_files: 管理檔案
529 permission_view_files: 檢視檔案
529 permission_view_files: 檢視檔案
530 permission_manage_wiki: 管理 wiki
530 permission_manage_wiki: 管理 wiki
531 permission_rename_wiki_pages: 重新命名 wiki 頁面
531 permission_rename_wiki_pages: 重新命名 wiki 頁面
532 permission_delete_wiki_pages: 刪除 wiki 頁面
532 permission_delete_wiki_pages: 刪除 wiki 頁面
533 permission_view_wiki_pages: 檢視 wiki
533 permission_view_wiki_pages: 檢視 wiki
534 permission_view_wiki_edits: 檢視 wiki 歷史
534 permission_view_wiki_edits: 檢視 wiki 歷史
535 permission_edit_wiki_pages: 編輯 wiki 頁面
535 permission_edit_wiki_pages: 編輯 wiki 頁面
536 permission_delete_wiki_pages_attachments: 刪除附件
536 permission_delete_wiki_pages_attachments: 刪除附件
537 permission_protect_wiki_pages: 專案 wiki 頁面
537 permission_protect_wiki_pages: 專案 wiki 頁面
538 permission_manage_repository: 管理儲存機制
538 permission_manage_repository: 管理儲存機制
539 permission_browse_repository: 瀏覽儲存機制
539 permission_browse_repository: 瀏覽儲存機制
540 permission_view_changesets: 檢視變更集
540 permission_view_changesets: 檢視變更集
541 permission_commit_access: 存取認可
541 permission_commit_access: 存取認可
542 permission_manage_boards: 管理討論版
542 permission_manage_boards: 管理討論版
543 permission_view_messages: 檢視訊息
543 permission_view_messages: 檢視訊息
544 permission_add_messages: 新增訊息
544 permission_add_messages: 新增訊息
545 permission_edit_messages: 編輯訊息
545 permission_edit_messages: 編輯訊息
546 permission_edit_own_messages: 編輯自己的訊息
546 permission_edit_own_messages: 編輯自己的訊息
547 permission_delete_messages: 刪除訊息
547 permission_delete_messages: 刪除訊息
548 permission_delete_own_messages: 刪除自己的訊息
548 permission_delete_own_messages: 刪除自己的訊息
549 permission_export_wiki_pages: 匯出 wiki 頁面
549 permission_export_wiki_pages: 匯出 wiki 頁面
550 permission_manage_subtasks: 管理子任務
550 permission_manage_subtasks: 管理子任務
551 permission_manage_related_issues: 管理相關問題
551 permission_manage_related_issues: 管理相關問題
552
552
553 project_module_issue_tracking: 問題追蹤
553 project_module_issue_tracking: 問題追蹤
554 project_module_time_tracking: 工時追蹤
554 project_module_time_tracking: 工時追蹤
555 project_module_news: 新聞
555 project_module_news: 新聞
556 project_module_documents: 文件
556 project_module_documents: 文件
557 project_module_files: 檔案
557 project_module_files: 檔案
558 project_module_wiki: Wiki
558 project_module_wiki: Wiki
559 project_module_repository: 版本控管
559 project_module_repository: 版本控管
560 project_module_boards: 討論區
560 project_module_boards: 討論區
561 project_module_calendar: 日曆
561 project_module_calendar: 日曆
562 project_module_gantt: 甘特圖
562 project_module_gantt: 甘特圖
563
563
564 label_user: 用戶
564 label_user: 用戶
565 label_user_plural: 用戶清單
565 label_user_plural: 用戶清單
566 label_user_new: 建立新用戶
566 label_user_new: 建立新用戶
567 label_user_anonymous: 匿名用戶
567 label_user_anonymous: 匿名用戶
568 label_project: 專案
568 label_project: 專案
569 label_project_new: 建立新專案
569 label_project_new: 建立新專案
570 label_project_plural: 專案清單
570 label_project_plural: 專案清單
571 label_x_projects:
571 label_x_projects:
572 zero: 無專案
572 zero: 無專案
573 one: 1 個專案
573 one: 1 個專案
574 other: "%{count} 個專案"
574 other: "%{count} 個專案"
575 label_project_all: 全部的專案
575 label_project_all: 全部的專案
576 label_project_latest: 最近的專案
576 label_project_latest: 最近的專案
577 label_issue: 問題
577 label_issue: 問題
578 label_issue_new: 建立新問題
578 label_issue_new: 建立新問題
579 label_issue_plural: 問題清單
579 label_issue_plural: 問題清單
580 label_issue_view_all: 檢視所有問題
580 label_issue_view_all: 檢視所有問題
581 label_issues_by: "問題按 %{value} 分組顯示"
581 label_issues_by: "問題按 %{value} 分組顯示"
582 label_issue_added: 問題已新增
582 label_issue_added: 問題已新增
583 label_issue_updated: 問題已更新
583 label_issue_updated: 問題已更新
584 label_issue_note_added: 筆記已新增
584 label_issue_note_added: 筆記已新增
585 label_issue_status_updated: 狀態已更新
585 label_issue_status_updated: 狀態已更新
586 label_issue_priority_updated: 優先權已更新
586 label_issue_priority_updated: 優先權已更新
587 label_document: 文件
587 label_document: 文件
588 label_document_new: 建立新文件
588 label_document_new: 建立新文件
589 label_document_plural: 文件
589 label_document_plural: 文件
590 label_document_added: 文件已新增
590 label_document_added: 文件已新增
591 label_role: 角色
591 label_role: 角色
592 label_role_plural: 角色
592 label_role_plural: 角色
593 label_role_new: 建立新角色
593 label_role_new: 建立新角色
594 label_role_and_permissions: 角色與權限
594 label_role_and_permissions: 角色與權限
595 label_role_anonymous: 匿名者
595 label_role_anonymous: 匿名者
596 label_role_non_member: 非會員
596 label_role_non_member: 非會員
597 label_member: 成員
597 label_member: 成員
598 label_member_new: 建立新成員
598 label_member_new: 建立新成員
599 label_member_plural: 成員
599 label_member_plural: 成員
600 label_tracker: 追蹤標籤
600 label_tracker: 追蹤標籤
601 label_tracker_plural: 追蹤標籤清單
601 label_tracker_plural: 追蹤標籤清單
602 label_tracker_new: 建立新的追蹤標籤
602 label_tracker_new: 建立新的追蹤標籤
603 label_workflow: 流程
603 label_workflow: 流程
604 label_issue_status: 問題狀態
604 label_issue_status: 問題狀態
605 label_issue_status_plural: 問題狀態清單
605 label_issue_status_plural: 問題狀態清單
606 label_issue_status_new: 建立新狀態
606 label_issue_status_new: 建立新狀態
607 label_issue_category: 問題分類
607 label_issue_category: 問題分類
608 label_issue_category_plural: 問題分類清單
608 label_issue_category_plural: 問題分類清單
609 label_issue_category_new: 建立新分類
609 label_issue_category_new: 建立新分類
610 label_custom_field: 自訂欄位
610 label_custom_field: 自訂欄位
611 label_custom_field_plural: 自訂欄位清單
611 label_custom_field_plural: 自訂欄位清單
612 label_custom_field_new: 建立新自訂欄位
612 label_custom_field_new: 建立新自訂欄位
613 label_enumerations: 列舉值清單
613 label_enumerations: 列舉值清單
614 label_enumeration_new: 建立新列舉值
614 label_enumeration_new: 建立新列舉值
615 label_information: 資訊
615 label_information: 資訊
616 label_information_plural: 資訊
616 label_information_plural: 資訊
617 label_please_login: 請先登入
617 label_please_login: 請先登入
618 label_register: 註冊
618 label_register: 註冊
619 label_login_with_open_id_option: 或使用 OpenID 登入
619 label_login_with_open_id_option: 或使用 OpenID 登入
620 label_password_lost: 遺失密碼
620 label_password_lost: 遺失密碼
621 label_home: 網站首頁
621 label_home: 網站首頁
622 label_my_page: 帳戶首頁
622 label_my_page: 帳戶首頁
623 label_my_account: 我的帳戶
623 label_my_account: 我的帳戶
624 label_my_projects: 我的專案
624 label_my_projects: 我的專案
625 label_my_page_block: 帳戶首頁區塊
625 label_my_page_block: 帳戶首頁區塊
626 label_administration: 網站管理
626 label_administration: 網站管理
627 label_login: 登入
627 label_login: 登入
628 label_logout: 登出
628 label_logout: 登出
629 label_help: 說明
629 label_help: 說明
630 label_reported_issues: 我通報的問題
630 label_reported_issues: 我通報的問題
631 label_assigned_to_me_issues: 分派給我的問題
631 label_assigned_to_me_issues: 分派給我的問題
632 label_last_login: 最近一次連線
632 label_last_login: 最近一次連線
633 label_registered_on: 註冊於
633 label_registered_on: 註冊於
634 label_activity: 活動
634 label_activity: 活動
635 label_overall_activity: 整體活動
635 label_overall_activity: 整體活動
636 label_user_activity: "%{value} 的活動"
636 label_user_activity: "%{value} 的活動"
637 label_new: 建立新的...
637 label_new: 建立新的...
638 label_logged_as: 目前登入
638 label_logged_as: 目前登入
639 label_environment: 環境
639 label_environment: 環境
640 label_authentication: 認證
640 label_authentication: 認證
641 label_auth_source: 認證模式
641 label_auth_source: 認證模式
642 label_auth_source_new: 建立新認證模式
642 label_auth_source_new: 建立新認證模式
643 label_auth_source_plural: 認證模式清單
643 label_auth_source_plural: 認證模式清單
644 label_subproject_plural: 子專案
644 label_subproject_plural: 子專案
645 label_subproject_new: 建立子專案
645 label_subproject_new: 建立子專案
646 label_and_its_subprojects: "%{value} 與其子專案"
646 label_and_its_subprojects: "%{value} 與其子專案"
647 label_min_max_length: 最小 - 最大 長度
647 label_min_max_length: 最小 - 最大 長度
648 label_list: 清單
648 label_list: 清單
649 label_date: 日期
649 label_date: 日期
650 label_integer: 整數
650 label_integer: 整數
651 label_float: 浮點數
651 label_float: 浮點數
652 label_boolean: 布林
652 label_boolean: 布林
653 label_string: 文字
653 label_string: 文字
654 label_text: 長文字
654 label_text: 長文字
655 label_attribute: 屬性
655 label_attribute: 屬性
656 label_attribute_plural: 屬性
656 label_attribute_plural: 屬性
657 label_no_data: 沒有任何資料可供顯示
657 label_no_data: 沒有任何資料可供顯示
658 label_change_status: 變更狀態
658 label_change_status: 變更狀態
659 label_history: 歷史
659 label_history: 歷史
660 label_attachment: 檔案
660 label_attachment: 檔案
661 label_attachment_new: 建立新檔案
661 label_attachment_new: 建立新檔案
662 label_attachment_delete: 刪除檔案
662 label_attachment_delete: 刪除檔案
663 label_attachment_plural: 檔案
663 label_attachment_plural: 檔案
664 label_file_added: 檔案已新增
664 label_file_added: 檔案已新增
665 label_report: 報告
665 label_report: 報告
666 label_report_plural: 報告
666 label_report_plural: 報告
667 label_news: 新聞
667 label_news: 新聞
668 label_news_new: 建立新聞
668 label_news_new: 建立新聞
669 label_news_plural: 新聞
669 label_news_plural: 新聞
670 label_news_latest: 最近新聞
670 label_news_latest: 最近新聞
671 label_news_view_all: 檢視全部的新聞
671 label_news_view_all: 檢視全部的新聞
672 label_news_added: 新聞已新增
672 label_news_added: 新聞已新增
673 label_news_comment_added: 回應已加入新聞
673 label_news_comment_added: 回應已加入新聞
674 label_settings: 設定
674 label_settings: 設定
675 label_overview: 概觀
675 label_overview: 概觀
676 label_version: 版本
676 label_version: 版本
677 label_version_new: 建立新版本
677 label_version_new: 建立新版本
678 label_version_plural: 版本
678 label_version_plural: 版本
679 label_close_versions: 結束已完成的版本
679 label_close_versions: 結束已完成的版本
680 label_confirmation: 確認
680 label_confirmation: 確認
681 label_export_to: 匯出至
681 label_export_to: 匯出至
682 label_read: 讀取...
682 label_read: 讀取...
683 label_public_projects: 公開專案
683 label_public_projects: 公開專案
684 label_open_issues: 進行中
684 label_open_issues: 進行中
685 label_open_issues_plural: 進行中
685 label_open_issues_plural: 進行中
686 label_closed_issues: 已結束
686 label_closed_issues: 已結束
687 label_closed_issues_plural: 已結束
687 label_closed_issues_plural: 已結束
688 label_x_open_issues_abbr_on_total:
688 label_x_open_issues_abbr_on_total:
689 zero: 0 進行中 / 共 %{total}
689 zero: 0 進行中 / 共 %{total}
690 one: 1 進行中 / 共 %{total}
690 one: 1 進行中 / 共 %{total}
691 other: "%{count} 進行中 / %{total}"
691 other: "%{count} 進行中 / %{total}"
692 label_x_open_issues_abbr:
692 label_x_open_issues_abbr:
693 zero: 0 進行中
693 zero: 0 進行中
694 one: 1 進行中
694 one: 1 進行中
695 other: "%{count} 進行中"
695 other: "%{count} 進行中"
696 label_x_closed_issues_abbr:
696 label_x_closed_issues_abbr:
697 zero: 0 已結束
697 zero: 0 已結束
698 one: 1 已結束
698 one: 1 已結束
699 other: "%{count} 已結束"
699 other: "%{count} 已結束"
700 label_x_issues:
700 label_x_issues:
701 zero: 0 個問題
701 zero: 0 個問題
702 one: 1 個問題
702 one: 1 個問題
703 other: "%{count} 個問題"
703 other: "%{count} 個問題"
704 label_total: 總計
704 label_total: 總計
705 label_total_time: 工時總計
705 label_permissions: 權限
706 label_permissions: 權限
706 label_current_status: 目前狀態
707 label_current_status: 目前狀態
707 label_new_statuses_allowed: 可變更至以下狀態
708 label_new_statuses_allowed: 可變更至以下狀態
708 label_all: 全部
709 label_all: 全部
709 label_any: 任意一個
710 label_any: 任意一個
710 label_none: 空值
711 label_none: 空值
711 label_nobody: 無名
712 label_nobody: 無名
712 label_next: 下一頁
713 label_next: 下一頁
713 label_previous: 上一頁
714 label_previous: 上一頁
714 label_used_by: Used by
715 label_used_by: Used by
715 label_details: 明細
716 label_details: 明細
716 label_add_note: 加入一個新筆記
717 label_add_note: 加入一個新筆記
717 label_per_page: 每頁
718 label_per_page: 每頁
718 label_calendar: 日曆
719 label_calendar: 日曆
719 label_months_from: 個月, 開始月份
720 label_months_from: 個月, 開始月份
720 label_gantt: 甘特圖
721 label_gantt: 甘特圖
721 label_internal: 內部
722 label_internal: 內部
722 label_last_changes: "最近 %{count} 個變更"
723 label_last_changes: "最近 %{count} 個變更"
723 label_change_view_all: 檢視全部的變更
724 label_change_view_all: 檢視全部的變更
724 label_personalize_page: 自訂版面
725 label_personalize_page: 自訂版面
725 label_comment: 回應
726 label_comment: 回應
726 label_comment_plural: 回應
727 label_comment_plural: 回應
727 label_x_comments:
728 label_x_comments:
728 zero: 無回應
729 zero: 無回應
729 one: 1 個回應
730 one: 1 個回應
730 other: "%{count} 個回應"
731 other: "%{count} 個回應"
731 label_comment_add: 加入新回應
732 label_comment_add: 加入新回應
732 label_comment_added: 新回應已加入
733 label_comment_added: 新回應已加入
733 label_comment_delete: 刪除回應
734 label_comment_delete: 刪除回應
734 label_query: 自訂查詢
735 label_query: 自訂查詢
735 label_query_plural: 自訂查詢
736 label_query_plural: 自訂查詢
736 label_query_new: 建立新查詢
737 label_query_new: 建立新查詢
737 label_my_queries: 我的自訂查詢
738 label_my_queries: 我的自訂查詢
738 label_filter_add: 加入新篩選條件
739 label_filter_add: 加入新篩選條件
739 label_filter_plural: 篩選條件
740 label_filter_plural: 篩選條件
740 label_equals: 等於
741 label_equals: 等於
741 label_not_equals: 不等於
742 label_not_equals: 不等於
742 label_in_less_than: 在小於
743 label_in_less_than: 在小於
743 label_in_more_than: 在大於
744 label_in_more_than: 在大於
744 label_in_the_next_days: 在未來幾天之內
745 label_in_the_next_days: 在未來幾天之內
745 label_in_the_past_days: 在過去幾天之內
746 label_in_the_past_days: 在過去幾天之內
746 label_greater_or_equal: "大於等於 (>=)"
747 label_greater_or_equal: "大於等於 (>=)"
747 label_less_or_equal: "小於等於 (<=)"
748 label_less_or_equal: "小於等於 (<=)"
748 label_between: 區間
749 label_between: 區間
749 label_in:
750 label_in:
750 label_today: 今天
751 label_today: 今天
751 label_all_time: 全部
752 label_all_time: 全部
752 label_yesterday: 昨天
753 label_yesterday: 昨天
753 label_this_week: 本週
754 label_this_week: 本週
754 label_last_week: 上週
755 label_last_week: 上週
755 label_last_n_weeks: "過去 %{count} 週"
756 label_last_n_weeks: "過去 %{count} 週"
756 label_last_n_days: "過去 %{count} 天"
757 label_last_n_days: "過去 %{count} 天"
757 label_this_month: 這個月
758 label_this_month: 這個月
758 label_last_month: 上個月
759 label_last_month: 上個月
759 label_this_year: 今年
760 label_this_year: 今年
760 label_date_range: 日期區間
761 label_date_range: 日期區間
761 label_less_than_ago: 小於幾天之前
762 label_less_than_ago: 小於幾天之前
762 label_more_than_ago: 大於幾天之前
763 label_more_than_ago: 大於幾天之前
763 label_ago: 天以前
764 label_ago: 天以前
764 label_contains: 包含
765 label_contains: 包含
765 label_not_contains: 不包含
766 label_not_contains: 不包含
766 label_any_issues_in_project: 在專案中的任意問題
767 label_any_issues_in_project: 在專案中的任意問題
767 label_any_issues_not_in_project: 不在專案中的任意問題
768 label_any_issues_not_in_project: 不在專案中的任意問題
768 label_no_issues_in_project: 沒有問題在專案中
769 label_no_issues_in_project: 沒有問題在專案中
769 label_day_plural:
770 label_day_plural:
770 label_repository: 儲存機制
771 label_repository: 儲存機制
771 label_repository_new: 建立新儲存機制
772 label_repository_new: 建立新儲存機制
772 label_repository_plural: 儲存機制清單
773 label_repository_plural: 儲存機制清單
773 label_browse: 瀏覽
774 label_browse: 瀏覽
774 label_branch: 分支
775 label_branch: 分支
775 label_tag: 標籤
776 label_tag: 標籤
776 label_revision: 修訂版
777 label_revision: 修訂版
777 label_revision_plural: 修訂版清單
778 label_revision_plural: 修訂版清單
778 label_revision_id: "修訂版 %{value}"
779 label_revision_id: "修訂版 %{value}"
779 label_associated_revisions: 關聯的修訂版
780 label_associated_revisions: 關聯的修訂版
780 label_added: 已新增
781 label_added: 已新增
781 label_modified: 已修改
782 label_modified: 已修改
782 label_copied: 已複製
783 label_copied: 已複製
783 label_renamed: 已重新命名
784 label_renamed: 已重新命名
784 label_deleted: 已刪除
785 label_deleted: 已刪除
785 label_latest_revision: 最新的修訂版
786 label_latest_revision: 最新的修訂版
786 label_latest_revision_plural: 最新的修訂版清單
787 label_latest_revision_plural: 最新的修訂版清單
787 label_view_revisions: 檢視修訂版清單
788 label_view_revisions: 檢視修訂版清單
788 label_view_all_revisions: 檢視所有的的修訂版清單
789 label_view_all_revisions: 檢視所有的的修訂版清單
789 label_max_size: 最大長度
790 label_max_size: 最大長度
790 label_sort_highest: 移動至開頭
791 label_sort_highest: 移動至開頭
791 label_sort_higher: 往上移動
792 label_sort_higher: 往上移動
792 label_sort_lower: 往下移動
793 label_sort_lower: 往下移動
793 label_sort_lowest: 移動至結尾
794 label_sort_lowest: 移動至結尾
794 label_roadmap: 版本藍圖
795 label_roadmap: 版本藍圖
795 label_roadmap_due_in: "剩餘 %{value}"
796 label_roadmap_due_in: "剩餘 %{value}"
796 label_roadmap_overdue: "逾期 %{value}"
797 label_roadmap_overdue: "逾期 %{value}"
797 label_roadmap_no_issues: 此版本尚未包含任何問題
798 label_roadmap_no_issues: 此版本尚未包含任何問題
798 label_search: 搜尋
799 label_search: 搜尋
799 label_result_plural: 結果
800 label_result_plural: 結果
800 label_all_words: 包含全部的字詞
801 label_all_words: 包含全部的字詞
801 label_wiki: Wiki
802 label_wiki: Wiki
802 label_wiki_edit: Wiki 編輯
803 label_wiki_edit: Wiki 編輯
803 label_wiki_edit_plural: Wiki 編輯
804 label_wiki_edit_plural: Wiki 編輯
804 label_wiki_page: Wiki 網頁
805 label_wiki_page: Wiki 網頁
805 label_wiki_page_plural: Wiki 網頁
806 label_wiki_page_plural: Wiki 網頁
806 label_index_by_title: 依標題索引
807 label_index_by_title: 依標題索引
807 label_index_by_date: 依日期索引
808 label_index_by_date: 依日期索引
808 label_current_version: 現行版本
809 label_current_version: 現行版本
809 label_preview: 預覽
810 label_preview: 預覽
810 label_feed_plural: Feeds
811 label_feed_plural: Feeds
811 label_changes_details: 所有變更的明細
812 label_changes_details: 所有變更的明細
812 label_issue_tracking: 問題追蹤
813 label_issue_tracking: 問題追蹤
813 label_spent_time: 耗用工時
814 label_spent_time: 耗用工時
814 label_overall_spent_time: 整體耗用工時
815 label_overall_spent_time: 整體耗用工時
815 label_f_hour: "%{value} 小時"
816 label_f_hour: "%{value} 小時"
816 label_f_hour_plural: "%{value} 小時"
817 label_f_hour_plural: "%{value} 小時"
817 label_time_tracking: 工時追蹤
818 label_time_tracking: 工時追蹤
818 label_change_plural: 變更
819 label_change_plural: 變更
819 label_statistics: 統計資訊
820 label_statistics: 統計資訊
820 label_commits_per_month: 依月份統計認可
821 label_commits_per_month: 依月份統計認可
821 label_commits_per_author: 依作者統計認可
822 label_commits_per_author: 依作者統計認可
822 label_view_diff: 檢視差異
823 label_view_diff: 檢視差異
823 label_diff: 差異
824 label_diff: 差異
824 label_diff_inline: 直列
825 label_diff_inline: 直列
825 label_diff_side_by_side: 並排
826 label_diff_side_by_side: 並排
826 label_options: 選項清單
827 label_options: 選項清單
827 label_copy_workflow_from: 從以下追蹤標籤複製工作流程
828 label_copy_workflow_from: 從以下追蹤標籤複製工作流程
828 label_permissions_report: 權限報表
829 label_permissions_report: 權限報表
829 label_watched_issues: 監看中的問題清單
830 label_watched_issues: 監看中的問題清單
830 label_related_issues: 相關的問題清單
831 label_related_issues: 相關的問題清單
831 label_applied_status: 已套用狀態
832 label_applied_status: 已套用狀態
832 label_loading: 載入中...
833 label_loading: 載入中...
833 label_relation_new: 建立新關聯
834 label_relation_new: 建立新關聯
834 label_relation_delete: 刪除關聯
835 label_relation_delete: 刪除關聯
835 label_relates_to: 關聯至
836 label_relates_to: 關聯至
836 label_duplicates: 已重複
837 label_duplicates: 已重複
837 label_duplicated_by: 與後面所列問題重複
838 label_duplicated_by: 與後面所列問題重複
838 label_blocks: 阻擋
839 label_blocks: 阻擋
839 label_blocked_by: 被阻擋
840 label_blocked_by: 被阻擋
840 label_precedes: 優先於
841 label_precedes: 優先於
841 label_follows: 跟隨於
842 label_follows: 跟隨於
842 label_copied_to: 複製到
843 label_copied_to: 複製到
843 label_copied_from: 複製於
844 label_copied_from: 複製於
844 label_end_to_start: 結束─開始
845 label_end_to_start: 結束─開始
845 label_end_to_end: 結束─結束
846 label_end_to_end: 結束─結束
846 label_start_to_start: 開始─開始
847 label_start_to_start: 開始─開始
847 label_start_to_end: 開始─結束
848 label_start_to_end: 開始─結束
848 label_stay_logged_in: 維持已登入狀態
849 label_stay_logged_in: 維持已登入狀態
849 label_disabled: 關閉
850 label_disabled: 關閉
850 label_show_completed_versions: 顯示已完成的版本
851 label_show_completed_versions: 顯示已完成的版本
851 label_me: 我自己
852 label_me: 我自己
852 label_board: 論壇
853 label_board: 論壇
853 label_board_new: 建立新論壇
854 label_board_new: 建立新論壇
854 label_board_plural: 論壇
855 label_board_plural: 論壇
855 label_board_locked: 鎖定
856 label_board_locked: 鎖定
856 label_board_sticky: 置頂
857 label_board_sticky: 置頂
857 label_topic_plural: 討論主題
858 label_topic_plural: 討論主題
858 label_message_plural: 訊息
859 label_message_plural: 訊息
859 label_message_last: 上一封訊息
860 label_message_last: 上一封訊息
860 label_message_new: 建立新訊息
861 label_message_new: 建立新訊息
861 label_message_posted: 訊息已新增
862 label_message_posted: 訊息已新增
862 label_reply_plural: 回應
863 label_reply_plural: 回應
863 label_send_information: 寄送帳戶資訊電子郵件給用戶
864 label_send_information: 寄送帳戶資訊電子郵件給用戶
864 label_year:
865 label_year:
865 label_month:
866 label_month:
866 label_week:
867 label_week:
867 label_date_from: 開始
868 label_date_from: 開始
868 label_date_to: 結束
869 label_date_to: 結束
869 label_language_based: 依用戶之語系決定
870 label_language_based: 依用戶之語系決定
870 label_sort_by: "按 %{value} 排序"
871 label_sort_by: "按 %{value} 排序"
871 label_send_test_email: 寄送測試郵件
872 label_send_test_email: 寄送測試郵件
872 label_feeds_access_key: Atom 存取金鑰
873 label_feeds_access_key: Atom 存取金鑰
873 label_missing_feeds_access_key: 找不到 Atom 存取金鑰
874 label_missing_feeds_access_key: 找不到 Atom 存取金鑰
874 label_feeds_access_key_created_on: "Atom 存取鍵建立於 %{value} 之前"
875 label_feeds_access_key_created_on: "Atom 存取鍵建立於 %{value} 之前"
875 label_module_plural: 模組
876 label_module_plural: 模組
876 label_added_time_by: "是由 %{author} %{age} 前加入"
877 label_added_time_by: "是由 %{author} %{age} 前加入"
877 label_updated_time_by: "是由 %{author} %{age} 前更新"
878 label_updated_time_by: "是由 %{author} %{age} 前更新"
878 label_updated_time: "於 %{value} 前更新"
879 label_updated_time: "於 %{value} 前更新"
879 label_jump_to_a_project: 選擇欲前往的專案...
880 label_jump_to_a_project: 選擇欲前往的專案...
880 label_file_plural: 檔案清單
881 label_file_plural: 檔案清單
881 label_changeset_plural: 變更集清單
882 label_changeset_plural: 變更集清單
882 label_default_columns: 預設欄位清單
883 label_default_columns: 預設欄位清單
883 label_no_change_option: (維持不變)
884 label_no_change_option: (維持不變)
884 label_bulk_edit_selected_issues: 大量編輯選取的問題
885 label_bulk_edit_selected_issues: 大量編輯選取的問題
885 label_bulk_edit_selected_time_entries: 大量編輯選取的工時項目
886 label_bulk_edit_selected_time_entries: 大量編輯選取的工時項目
886 label_theme: 畫面主題
887 label_theme: 畫面主題
887 label_default: 預設
888 label_default: 預設
888 label_search_titles_only: 僅搜尋標題
889 label_search_titles_only: 僅搜尋標題
889 label_user_mail_option_all: "提醒與我的專案有關的全部事件"
890 label_user_mail_option_all: "提醒與我的專案有關的全部事件"
890 label_user_mail_option_selected: "只提醒我所選擇專案中的事件..."
891 label_user_mail_option_selected: "只提醒我所選擇專案中的事件..."
891 label_user_mail_option_none: "取消提醒"
892 label_user_mail_option_none: "取消提醒"
892 label_user_mail_option_only_my_events: "只提醒我觀察中或參與中的事物"
893 label_user_mail_option_only_my_events: "只提醒我觀察中或參與中的事物"
893 label_user_mail_option_only_assigned: "只提醒我被指派的事物"
894 label_user_mail_option_only_assigned: "只提醒我被指派的事物"
894 label_user_mail_option_only_owner: "只提醒我作為擁有者的事物"
895 label_user_mail_option_only_owner: "只提醒我作為擁有者的事物"
895 label_user_mail_no_self_notified: "不提醒我自己所做的變更"
896 label_user_mail_no_self_notified: "不提醒我自己所做的變更"
896 label_registration_activation_by_email: 透過電子郵件啟用帳戶
897 label_registration_activation_by_email: 透過電子郵件啟用帳戶
897 label_registration_manual_activation: 手動啟用帳戶
898 label_registration_manual_activation: 手動啟用帳戶
898 label_registration_automatic_activation: 自動啟用帳戶
899 label_registration_automatic_activation: 自動啟用帳戶
899 label_display_per_page: "每頁顯示: %{value} 個"
900 label_display_per_page: "每頁顯示: %{value} 個"
900 label_age: 年齡
901 label_age: 年齡
901 label_change_properties: 變更屬性
902 label_change_properties: 變更屬性
902 label_general: 一般
903 label_general: 一般
903 label_more: 更多 »
904 label_more: 更多 »
904 label_scm: 版本控管
905 label_scm: 版本控管
905 label_plugins: 附加元件
906 label_plugins: 附加元件
906 label_ldap_authentication: LDAP 認證
907 label_ldap_authentication: LDAP 認證
907 label_downloads_abbr: 下載
908 label_downloads_abbr: 下載
908 label_optional_description: 額外的說明
909 label_optional_description: 額外的說明
909 label_add_another_file: 增加其他檔案
910 label_add_another_file: 增加其他檔案
910 label_preferences: 偏好選項
911 label_preferences: 偏好選項
911 label_chronological_order: 以時間由遠至近排序
912 label_chronological_order: 以時間由遠至近排序
912 label_reverse_chronological_order: 以時間由近至遠排序
913 label_reverse_chronological_order: 以時間由近至遠排序
913 label_planning: 計劃表
914 label_planning: 計劃表
914 label_incoming_emails: 傳入的電子郵件
915 label_incoming_emails: 傳入的電子郵件
915 label_generate_key: 產生金鑰
916 label_generate_key: 產生金鑰
916 label_issue_watchers: 監看者
917 label_issue_watchers: 監看者
917 label_example: 範例
918 label_example: 範例
918 label_display: 顯示
919 label_display: 顯示
919 label_sort: 排序
920 label_sort: 排序
920 label_ascending: 遞增排序
921 label_ascending: 遞增排序
921 label_descending: 遞減排序
922 label_descending: 遞減排序
922 label_date_from_to: 起 %{start} 迄 %{end}
923 label_date_from_to: 起 %{start} 迄 %{end}
923 label_wiki_content_added: Wiki 頁面已新增
924 label_wiki_content_added: Wiki 頁面已新增
924 label_wiki_content_updated: Wiki 頁面已更新
925 label_wiki_content_updated: Wiki 頁面已更新
925 label_group: 群組
926 label_group: 群組
926 label_group_plural: 群組清單
927 label_group_plural: 群組清單
927 label_group_new: 建立新群組
928 label_group_new: 建立新群組
928 label_time_entry_plural: 耗用工時
929 label_time_entry_plural: 耗用工時
929 label_version_sharing_none: 不共用
930 label_version_sharing_none: 不共用
930 label_version_sharing_descendants: 與子專案共用
931 label_version_sharing_descendants: 與子專案共用
931 label_version_sharing_hierarchy: 與專案階層架構共用
932 label_version_sharing_hierarchy: 與專案階層架構共用
932 label_version_sharing_tree: 與專案樹共用
933 label_version_sharing_tree: 與專案樹共用
933 label_version_sharing_system: 與全部的專案共用
934 label_version_sharing_system: 與全部的專案共用
934 label_update_issue_done_ratios: 更新問題完成百分比
935 label_update_issue_done_ratios: 更新問題完成百分比
935 label_copy_source: 來源
936 label_copy_source: 來源
936 label_copy_target: 目的地
937 label_copy_target: 目的地
937 label_copy_same_as_target: 與目的地相同
938 label_copy_same_as_target: 與目的地相同
938 label_display_used_statuses_only: 僅顯示此追蹤標籤所使用之狀態
939 label_display_used_statuses_only: 僅顯示此追蹤標籤所使用之狀態
939 label_api_access_key: API 存取金鑰
940 label_api_access_key: API 存取金鑰
940 label_missing_api_access_key: 找不到 API 存取金鑰
941 label_missing_api_access_key: 找不到 API 存取金鑰
941 label_api_access_key_created_on: "API 存取金鑰建立於 %{value} 之前"
942 label_api_access_key_created_on: "API 存取金鑰建立於 %{value} 之前"
942 label_profile: 配置概況
943 label_profile: 配置概況
943 label_subtask_plural: 子任務
944 label_subtask_plural: 子任務
944 label_project_copy_notifications: 在複製專案的過程中,傳送通知郵件
945 label_project_copy_notifications: 在複製專案的過程中,傳送通知郵件
945 label_principal_search: "搜尋用戶或群組:"
946 label_principal_search: "搜尋用戶或群組:"
946 label_user_search: "搜尋用戶:"
947 label_user_search: "搜尋用戶:"
947 label_additional_workflow_transitions_for_author: 用戶為作者時額外允許的流程轉換
948 label_additional_workflow_transitions_for_author: 用戶為作者時額外允許的流程轉換
948 label_additional_workflow_transitions_for_assignee: 用戶為被指定者時額外允許的流程轉換
949 label_additional_workflow_transitions_for_assignee: 用戶為被指定者時額外允許的流程轉換
949 label_issues_visibility_all: 所有問題
950 label_issues_visibility_all: 所有問題
950 label_issues_visibility_public: 所有非私人問題
951 label_issues_visibility_public: 所有非私人問題
951 label_issues_visibility_own: 使用者所建立的或被指派的問題
952 label_issues_visibility_own: 使用者所建立的或被指派的問題
952 label_git_report_last_commit: 報告最後認可的文件和目錄
953 label_git_report_last_commit: 報告最後認可的文件和目錄
953 label_parent_revision: 父項
954 label_parent_revision: 父項
954 label_child_revision: 子項
955 label_child_revision: 子項
955 label_export_options: "%{export_format} 匯出選項"
956 label_export_options: "%{export_format} 匯出選項"
956 label_copy_attachments: 複製附件
957 label_copy_attachments: 複製附件
957 label_copy_subtasks: 複製子任務
958 label_copy_subtasks: 複製子任務
958 label_item_position: "%{position} / %{count}"
959 label_item_position: "%{position} / %{count}"
959 label_completed_versions: 已完成版本
960 label_completed_versions: 已完成版本
960 label_search_for_watchers: 搜尋可供加入的監看者
961 label_search_for_watchers: 搜尋可供加入的監看者
961 label_session_expiration: 工作階段逾期
962 label_session_expiration: 工作階段逾期
962 label_show_closed_projects: 檢視已關閉的專案
963 label_show_closed_projects: 檢視已關閉的專案
963 label_status_transitions: 狀態轉換
964 label_status_transitions: 狀態轉換
964 label_fields_permissions: 欄位權限
965 label_fields_permissions: 欄位權限
965 label_readonly: 唯讀
966 label_readonly: 唯讀
966 label_required: 必填
967 label_required: 必填
967 label_attribute_of_project: "專案是 %{name}"
968 label_attribute_of_project: "專案是 %{name}"
968 label_attribute_of_issue: "問題是 %{name}"
969 label_attribute_of_issue: "問題是 %{name}"
969 label_attribute_of_author: "作者是 %{name}"
970 label_attribute_of_author: "作者是 %{name}"
970 label_attribute_of_assigned_to: "被指派者是 %{name}"
971 label_attribute_of_assigned_to: "被指派者是 %{name}"
971 label_attribute_of_user: "用戶是 %{name}"
972 label_attribute_of_user: "用戶是 %{name}"
972 label_attribute_of_fixed_version: "版本是 %{name}"
973 label_attribute_of_fixed_version: "版本是 %{name}"
973 label_cross_project_descendants: 與子專案共用
974 label_cross_project_descendants: 與子專案共用
974 label_cross_project_tree: 與專案樹共用
975 label_cross_project_tree: 與專案樹共用
975 label_cross_project_hierarchy: 與專案階層架構共用
976 label_cross_project_hierarchy: 與專案階層架構共用
976 label_cross_project_system: 與全部的專案共用
977 label_cross_project_system: 與全部的專案共用
977 label_gantt_progress_line: 進度線
978 label_gantt_progress_line: 進度線
978
979
979 button_login: 登入
980 button_login: 登入
980 button_submit: 送出
981 button_submit: 送出
981 button_save: 儲存
982 button_save: 儲存
982 button_check_all: 全選
983 button_check_all: 全選
983 button_uncheck_all: 全不選
984 button_uncheck_all: 全不選
984 button_collapse_all: 全部摺疊
985 button_collapse_all: 全部摺疊
985 button_expand_all: 全部展開
986 button_expand_all: 全部展開
986 button_delete: 刪除
987 button_delete: 刪除
987 button_create: 建立
988 button_create: 建立
988 button_create_and_continue: 繼續建立
989 button_create_and_continue: 繼續建立
989 button_test: 測試
990 button_test: 測試
990 button_edit: 編輯
991 button_edit: 編輯
991 button_edit_associated_wikipage: "編輯相關 Wiki 頁面: %{page_title}"
992 button_edit_associated_wikipage: "編輯相關 Wiki 頁面: %{page_title}"
992 button_add: 新增
993 button_add: 新增
993 button_change: 修改
994 button_change: 修改
994 button_apply: 套用
995 button_apply: 套用
995 button_clear: 清除
996 button_clear: 清除
996 button_lock: 鎖定
997 button_lock: 鎖定
997 button_unlock: 解除鎖定
998 button_unlock: 解除鎖定
998 button_download: 下載
999 button_download: 下載
999 button_list: 清單
1000 button_list: 清單
1000 button_view: 檢視
1001 button_view: 檢視
1001 button_move: 移動
1002 button_move: 移動
1002 button_move_and_follow: 移動後跟隨
1003 button_move_and_follow: 移動後跟隨
1003 button_back: 返回
1004 button_back: 返回
1004 button_cancel: 取消
1005 button_cancel: 取消
1005 button_activate: 啟用
1006 button_activate: 啟用
1006 button_sort: 排序
1007 button_sort: 排序
1007 button_log_time: 記錄時間
1008 button_log_time: 記錄時間
1008 button_rollback: 還原至此版本
1009 button_rollback: 還原至此版本
1009 button_watch: 觀察
1010 button_watch: 觀察
1010 button_unwatch: 取消觀察
1011 button_unwatch: 取消觀察
1011 button_reply: 回應
1012 button_reply: 回應
1012 button_archive: 封存
1013 button_archive: 封存
1013 button_unarchive: 取消封存
1014 button_unarchive: 取消封存
1014 button_reset: 回復
1015 button_reset: 回復
1015 button_rename: 重新命名
1016 button_rename: 重新命名
1016 button_change_password: 變更密碼
1017 button_change_password: 變更密碼
1017 button_copy: 複製
1018 button_copy: 複製
1018 button_copy_and_follow: 複製後跟隨
1019 button_copy_and_follow: 複製後跟隨
1019 button_annotate: 註解
1020 button_annotate: 註解
1020 button_update: 更新
1021 button_update: 更新
1021 button_configure: 設定
1022 button_configure: 設定
1022 button_quote: 引用
1023 button_quote: 引用
1023 button_duplicate: 重製
1024 button_duplicate: 重製
1024 button_show: 顯示
1025 button_show: 顯示
1025 button_hide: 隱藏
1026 button_hide: 隱藏
1026 button_edit_section: 編輯此區塊
1027 button_edit_section: 編輯此區塊
1027 button_export: 匯出
1028 button_export: 匯出
1028 button_delete_my_account: 刪除我的帳戶
1029 button_delete_my_account: 刪除我的帳戶
1029 button_close: 關閉
1030 button_close: 關閉
1030 button_reopen: 重新開啟
1031 button_reopen: 重新開啟
1031
1032
1032 status_active: 活動中
1033 status_active: 活動中
1033 status_registered: 註冊完成
1034 status_registered: 註冊完成
1034 status_locked: 鎖定中
1035 status_locked: 鎖定中
1035
1036
1036 project_status_active: 使用中
1037 project_status_active: 使用中
1037 project_status_closed: 已關閉
1038 project_status_closed: 已關閉
1038 project_status_archived: 已封存
1039 project_status_archived: 已封存
1039
1040
1040 version_status_open: 進行中
1041 version_status_open: 進行中
1041 version_status_locked: 已鎖定
1042 version_status_locked: 已鎖定
1042 version_status_closed: 已結束
1043 version_status_closed: 已結束
1043
1044
1044 field_active: 活動中
1045 field_active: 活動中
1045
1046
1046 text_select_mail_notifications: 選擇欲寄送提醒通知郵件之動作
1047 text_select_mail_notifications: 選擇欲寄送提醒通知郵件之動作
1047 text_regexp_info: eg. ^[A-Z0-9]+$
1048 text_regexp_info: eg. ^[A-Z0-9]+$
1048 text_min_max_length_info: 0 代表「不限制」
1049 text_min_max_length_info: 0 代表「不限制」
1049 text_project_destroy_confirmation: 您確定要刪除這個專案和其他相關資料?
1050 text_project_destroy_confirmation: 您確定要刪除這個專案和其他相關資料?
1050 text_subprojects_destroy_warning: "下列子專案: %{value} 將一併被刪除。"
1051 text_subprojects_destroy_warning: "下列子專案: %{value} 將一併被刪除。"
1051 text_workflow_edit: 選擇角色與追蹤標籤以設定其工作流程
1052 text_workflow_edit: 選擇角色與追蹤標籤以設定其工作流程
1052 text_are_you_sure: 確定執行?
1053 text_are_you_sure: 確定執行?
1053 text_journal_changed: "%{label} %{old} 變更為 %{new}"
1054 text_journal_changed: "%{label} %{old} 變更為 %{new}"
1054 text_journal_changed_no_detail: "%{label} 已更新"
1055 text_journal_changed_no_detail: "%{label} 已更新"
1055 text_journal_set_to: "%{label} 設定為 %{value}"
1056 text_journal_set_to: "%{label} 設定為 %{value}"
1056 text_journal_deleted: "%{label} 已刪除 (%{old})"
1057 text_journal_deleted: "%{label} 已刪除 (%{old})"
1057 text_journal_added: "%{label} %{value} 已新增"
1058 text_journal_added: "%{label} %{value} 已新增"
1058 text_tip_issue_begin_day: 今天起始的問題
1059 text_tip_issue_begin_day: 今天起始的問題
1059 text_tip_issue_end_day: 今天截止的的問題
1060 text_tip_issue_end_day: 今天截止的的問題
1060 text_tip_issue_begin_end_day: 今天起始與截止的問題
1061 text_tip_issue_begin_end_day: 今天起始與截止的問題
1061 text_project_identifier_info: '僅允許使用小寫英文字母 (a-z), 阿拉伯數字, 虛線與底線。<br />一旦儲存之後, 代碼便無法再次被更改。'
1062 text_project_identifier_info: '僅允許使用小寫英文字母 (a-z), 阿拉伯數字, 虛線與底線。<br />一旦儲存之後, 代碼便無法再次被更改。'
1062 text_caracters_maximum: "最多 %{count} 個字元."
1063 text_caracters_maximum: "最多 %{count} 個字元."
1063 text_caracters_minimum: "長度必須大於 %{count} 個字元."
1064 text_caracters_minimum: "長度必須大於 %{count} 個字元."
1064 text_length_between: "長度必須介於 %{min} %{max} 個字元之間."
1065 text_length_between: "長度必須介於 %{min} %{max} 個字元之間."
1065 text_tracker_no_workflow: 此追蹤標籤尚未定義工作流程
1066 text_tracker_no_workflow: 此追蹤標籤尚未定義工作流程
1066 text_unallowed_characters: 不允許的字元
1067 text_unallowed_characters: 不允許的字元
1067 text_comma_separated: 可輸入多個值(須以逗號分隔)。
1068 text_comma_separated: 可輸入多個值(須以逗號分隔)。
1068 text_line_separated: 可輸入多個值(須以換行符號分隔,即每列只能輸入一個值)。
1069 text_line_separated: 可輸入多個值(須以換行符號分隔,即每列只能輸入一個值)。
1069 text_issues_ref_in_commit_messages: 認可訊息中參照(或修正)問題之關鍵字
1070 text_issues_ref_in_commit_messages: 認可訊息中參照(或修正)問題之關鍵字
1070 text_issue_added: "問題 %{id} 已被 %{author} 通報。"
1071 text_issue_added: "問題 %{id} 已被 %{author} 通報。"
1071 text_issue_updated: "問題 %{id} 已被 %{author} 更新。"
1072 text_issue_updated: "問題 %{id} 已被 %{author} 更新。"
1072 text_wiki_destroy_confirmation: 您確定要刪除這個 wiki 和其中的所有內容?
1073 text_wiki_destroy_confirmation: 您確定要刪除這個 wiki 和其中的所有內容?
1073 text_issue_category_destroy_question: "有 (%{count}) 個問題被指派到此分類. 請選擇您想要的動作?"
1074 text_issue_category_destroy_question: "有 (%{count}) 個問題被指派到此分類. 請選擇您想要的動作?"
1074 text_issue_category_destroy_assignments: 移除這些問題的分類
1075 text_issue_category_destroy_assignments: 移除這些問題的分類
1075 text_issue_category_reassign_to: 重新指派這些問題至其它分類
1076 text_issue_category_reassign_to: 重新指派這些問題至其它分類
1076 text_user_mail_option: "對於那些未被選擇的專案,將只會接收到您正在觀察中,或是參與中的問題通知。(「參與中的問題」包含您建立的或是指派給您的問題)"
1077 text_user_mail_option: "對於那些未被選擇的專案,將只會接收到您正在觀察中,或是參與中的問題通知。(「參與中的問題」包含您建立的或是指派給您的問題)"
1077 text_no_configuration_data: "角色、追蹤標籤、問題狀態與流程尚未被設定完成。\n強烈建議您先載入預設的組態。將預設組態載入之後,您可再變更其中之值。"
1078 text_no_configuration_data: "角色、追蹤標籤、問題狀態與流程尚未被設定完成。\n強烈建議您先載入預設的組態。將預設組態載入之後,您可再變更其中之值。"
1078 text_load_default_configuration: 載入預設組態
1079 text_load_default_configuration: 載入預設組態
1079 text_status_changed_by_changeset: "已套用至變更集 %{value}."
1080 text_status_changed_by_changeset: "已套用至變更集 %{value}."
1080 text_time_logged_by_changeset: "紀錄於變更集 %{value}."
1081 text_time_logged_by_changeset: "紀錄於變更集 %{value}."
1081 text_issues_destroy_confirmation: '確定刪除已選擇的問題?'
1082 text_issues_destroy_confirmation: '確定刪除已選擇的問題?'
1082 text_issues_destroy_descendants_confirmation: "這麼做將會一併刪除 %{count} 子任務。"
1083 text_issues_destroy_descendants_confirmation: "這麼做將會一併刪除 %{count} 子任務。"
1083 text_time_entries_destroy_confirmation: 您確定要刪除所選擇的工時紀錄?
1084 text_time_entries_destroy_confirmation: 您確定要刪除所選擇的工時紀錄?
1084 text_select_project_modules: '選擇此專案可使用之模組:'
1085 text_select_project_modules: '選擇此專案可使用之模組:'
1085 text_default_administrator_account_changed: 已變更預設管理員帳號內容
1086 text_default_administrator_account_changed: 已變更預設管理員帳號內容
1086 text_file_repository_writable: 可寫入附加檔案目錄
1087 text_file_repository_writable: 可寫入附加檔案目錄
1087 text_plugin_assets_writable: 可寫入附加元件目錄
1088 text_plugin_assets_writable: 可寫入附加元件目錄
1088 text_rmagick_available: 可使用 RMagick (選配)
1089 text_rmagick_available: 可使用 RMagick (選配)
1089 text_destroy_time_entries_question: 您即將刪除的問題已報工 %{hours} 小時. 您的選擇是?
1090 text_destroy_time_entries_question: 您即將刪除的問題已報工 %{hours} 小時. 您的選擇是?
1090 text_destroy_time_entries: 刪除已報工的時數
1091 text_destroy_time_entries: 刪除已報工的時數
1091 text_assign_time_entries_to_project: 指定已報工的時數至專案中
1092 text_assign_time_entries_to_project: 指定已報工的時數至專案中
1092 text_reassign_time_entries: '重新指定已報工的時數至此問題:'
1093 text_reassign_time_entries: '重新指定已報工的時數至此問題:'
1093 text_user_wrote: "%{value} 先前提到:"
1094 text_user_wrote: "%{value} 先前提到:"
1094 text_enumeration_destroy_question: "目前有 %{count} 個物件使用此列舉值。"
1095 text_enumeration_destroy_question: "目前有 %{count} 個物件使用此列舉值。"
1095 text_enumeration_category_reassign_to: '重新設定其列舉值為:'
1096 text_enumeration_category_reassign_to: '重新設定其列舉值為:'
1096 text_email_delivery_not_configured: "您尚未設定電子郵件傳送方式,因此提醒選項已被停用。\n請在 config/configuration.yml 中設定 SMTP 之後,重新啟動 Redmine,以啟用電子郵件提醒選項。"
1097 text_email_delivery_not_configured: "您尚未設定電子郵件傳送方式,因此提醒選項已被停用。\n請在 config/configuration.yml 中設定 SMTP 之後,重新啟動 Redmine,以啟用電子郵件提醒選項。"
1097 text_repository_usernames_mapping: "選擇或更新 Redmine 使用者與儲存機制紀錄使用者之對應關係。\n儲存機制中之使用者帳號或電子郵件信箱,與 Redmine 設定相同者,將自動產生對應關係。"
1098 text_repository_usernames_mapping: "選擇或更新 Redmine 使用者與儲存機制紀錄使用者之對應關係。\n儲存機制中之使用者帳號或電子郵件信箱,與 Redmine 設定相同者,將自動產生對應關係。"
1098 text_diff_truncated: '... 這份差異已被截短以符合顯示行數之最大值'
1099 text_diff_truncated: '... 這份差異已被截短以符合顯示行數之最大值'
1099 text_custom_field_possible_values_info: '一列輸入一個值'
1100 text_custom_field_possible_values_info: '一列輸入一個值'
1100 text_wiki_page_destroy_question: "此頁面包含 %{descendants} 個子頁面及延伸頁面。 請選擇您想要的動作?"
1101 text_wiki_page_destroy_question: "此頁面包含 %{descendants} 個子頁面及延伸頁面。 請選擇您想要的動作?"
1101 text_wiki_page_nullify_children: "保留所有子頁面當作根頁面"
1102 text_wiki_page_nullify_children: "保留所有子頁面當作根頁面"
1102 text_wiki_page_destroy_children: "刪除所有子頁面及其延伸頁面"
1103 text_wiki_page_destroy_children: "刪除所有子頁面及其延伸頁面"
1103 text_wiki_page_reassign_children: "重新指定所有的子頁面之父頁面至此頁面"
1104 text_wiki_page_reassign_children: "重新指定所有的子頁面之父頁面至此頁面"
1104 text_own_membership_delete_confirmation: "您在專案中,所擁有的部分或全部權限即將被移除,在這之後可能無法再次編輯此專案。\n您確定要繼續執行這個動作?"
1105 text_own_membership_delete_confirmation: "您在專案中,所擁有的部分或全部權限即將被移除,在這之後可能無法再次編輯此專案。\n您確定要繼續執行這個動作?"
1105 text_zoom_in: 放大
1106 text_zoom_in: 放大
1106 text_zoom_out: 縮小
1107 text_zoom_out: 縮小
1107 text_warn_on_leaving_unsaved: "若您離開這個頁面,此頁面所包含的未儲存資料將會遺失。"
1108 text_warn_on_leaving_unsaved: "若您離開這個頁面,此頁面所包含的未儲存資料將會遺失。"
1108 text_scm_path_encoding_note: "預設: UTF-8"
1109 text_scm_path_encoding_note: "預設: UTF-8"
1109 text_git_repository_note: 儲存機制是本機的空(bare)目錄 (即: /gitrepo, c:\gitrepo)
1110 text_git_repository_note: 儲存機制是本機的空(bare)目錄 (即: /gitrepo, c:\gitrepo)
1110 text_mercurial_repository_note: 本機儲存機制 (即: /hgrepo, c:\hgrepo)
1111 text_mercurial_repository_note: 本機儲存機制 (即: /hgrepo, c:\hgrepo)
1111 text_scm_command: 命令
1112 text_scm_command: 命令
1112 text_scm_command_version: 版本
1113 text_scm_command_version: 版本
1113 text_scm_config: 您可以在 config/configuration.yml 中設定 SCM 命令。請在編輯該檔案之後重新啟動 Redmine 應用程式。
1114 text_scm_config: 您可以在 config/configuration.yml 中設定 SCM 命令。請在編輯該檔案之後重新啟動 Redmine 應用程式。
1114 text_scm_command_not_available: SCM 命令無法使用。請檢查管理面板中的設定。
1115 text_scm_command_not_available: SCM 命令無法使用。請檢查管理面板中的設定。
1115 text_issue_conflict_resolution_overwrite: "直接套用我的變更 (先前的筆記將會被保留,但是某些變更可能會被複寫)"
1116 text_issue_conflict_resolution_overwrite: "直接套用我的變更 (先前的筆記將會被保留,但是某些變更可能會被複寫)"
1116 text_issue_conflict_resolution_add_notes: "新增我的筆記並捨棄我其他的變更"
1117 text_issue_conflict_resolution_add_notes: "新增我的筆記並捨棄我其他的變更"
1117 text_issue_conflict_resolution_cancel: "捨棄我全部的變更並重新顯示 %{link}"
1118 text_issue_conflict_resolution_cancel: "捨棄我全部的變更並重新顯示 %{link}"
1118 text_account_destroy_confirmation: |-
1119 text_account_destroy_confirmation: |-
1119 您確定要繼續這個動作嗎?
1120 您確定要繼續這個動作嗎?
1120 您的帳戶將會被永久刪除,且無法被重新啟用。
1121 您的帳戶將會被永久刪除,且無法被重新啟用。
1121 text_session_expiration_settings: "警告:變更這些設定將會導致包含您在內的所有工作階段過期。"
1122 text_session_expiration_settings: "警告:變更這些設定將會導致包含您在內的所有工作階段過期。"
1122 text_project_closed: 此專案已被關閉,僅供唯讀使用。
1123 text_project_closed: 此專案已被關閉,僅供唯讀使用。
1123 text_turning_multiple_off: "若您停用多重值設定,重複的值將會被移除,以使每個項目僅保留一個值。"
1124 text_turning_multiple_off: "若您停用多重值設定,重複的值將會被移除,以使每個項目僅保留一個值。"
1124
1125
1125 default_role_manager: 管理人員
1126 default_role_manager: 管理人員
1126 default_role_developer: 開發人員
1127 default_role_developer: 開發人員
1127 default_role_reporter: 報告人員
1128 default_role_reporter: 報告人員
1128 default_tracker_bug: 臭蟲
1129 default_tracker_bug: 臭蟲
1129 default_tracker_feature: 功能
1130 default_tracker_feature: 功能
1130 default_tracker_support: 支援
1131 default_tracker_support: 支援
1131 default_issue_status_new: 新建立
1132 default_issue_status_new: 新建立
1132 default_issue_status_in_progress: 實作中
1133 default_issue_status_in_progress: 實作中
1133 default_issue_status_resolved: 已解決
1134 default_issue_status_resolved: 已解決
1134 default_issue_status_feedback: 已回應
1135 default_issue_status_feedback: 已回應
1135 default_issue_status_closed: 已結束
1136 default_issue_status_closed: 已結束
1136 default_issue_status_rejected: 已拒絕
1137 default_issue_status_rejected: 已拒絕
1137 default_doc_category_user: 使用手冊
1138 default_doc_category_user: 使用手冊
1138 default_doc_category_tech: 技術文件
1139 default_doc_category_tech: 技術文件
1139 default_priority_low:
1140 default_priority_low:
1140 default_priority_normal: 正常
1141 default_priority_normal: 正常
1141 default_priority_high:
1142 default_priority_high:
1142 default_priority_urgent:
1143 default_priority_urgent:
1143 default_priority_immediate:
1144 default_priority_immediate:
1144 default_activity_design: 設計
1145 default_activity_design: 設計
1145 default_activity_development: 開發
1146 default_activity_development: 開發
1146
1147
1147 enumeration_issue_priorities: 問題優先權
1148 enumeration_issue_priorities: 問題優先權
1148 enumeration_doc_categories: 文件分類
1149 enumeration_doc_categories: 文件分類
1149 enumeration_activities: 活動 (時間追蹤)
1150 enumeration_activities: 活動 (時間追蹤)
1150 enumeration_system_activity: 系統活動
1151 enumeration_system_activity: 系統活動
1151 description_filter: 篩選條件
1152 description_filter: 篩選條件
1152 description_search: 搜尋欄位
1153 description_search: 搜尋欄位
1153 description_choose_project: 專案清單
1154 description_choose_project: 專案清單
1154 description_project_scope: 搜尋範圍
1155 description_project_scope: 搜尋範圍
1155 description_notes: 筆記
1156 description_notes: 筆記
1156 description_message_content: 訊息內容
1157 description_message_content: 訊息內容
1157 description_query_sort_criteria_attribute: 排序屬性
1158 description_query_sort_criteria_attribute: 排序屬性
1158 description_query_sort_criteria_direction: 排列順序
1159 description_query_sort_criteria_direction: 排列順序
1159 description_user_mail_notification: 郵件通知設定
1160 description_user_mail_notification: 郵件通知設定
1160 description_available_columns: 可用欄位
1161 description_available_columns: 可用欄位
1161 description_selected_columns: 已選取的欄位
1162 description_selected_columns: 已選取的欄位
1162 description_all_columns: 所有欄位
1163 description_all_columns: 所有欄位
1163 description_issue_category_reassign: 選擇問題分類
1164 description_issue_category_reassign: 選擇問題分類
1164 description_wiki_subpages_reassign: 選擇新的父頁面
1165 description_wiki_subpages_reassign: 選擇新的父頁面
1165 description_date_range_list: 從清單中選取範圍
1166 description_date_range_list: 從清單中選取範圍
1166 description_date_range_interval: 選擇起始與結束日期以設定範圍區間
1167 description_date_range_interval: 選擇起始與結束日期以設定範圍區間
1167 description_date_from: 輸入起始日期
1168 description_date_from: 輸入起始日期
1168 description_date_to: 輸入結束日期
1169 description_date_to: 輸入結束日期
1169 text_repository_identifier_info: '僅允許使用小寫英文字母 (a-z), 阿拉伯數字, 虛線與底線。<br />一旦儲存之後, 代碼便無法再次被更改。'
1170 text_repository_identifier_info: '僅允許使用小寫英文字母 (a-z), 阿拉伯數字, 虛線與底線。<br />一旦儲存之後, 代碼便無法再次被更改。'
1170 label_total_time: 總計
@@ -1,372 +1,372
1 # -*- coding: utf-8 -*-
1 # -*- coding: utf-8 -*-
2 # Redmine - project management software
2 # Redmine - project management software
3 # Copyright (C) 2006-2013 Jean-Philippe Lang
3 # Copyright (C) 2006-2013 Jean-Philippe Lang
4 #
4 #
5 # This program is free software; you can redistribute it and/or
5 # This program is free software; you can redistribute it and/or
6 # modify it under the terms of the GNU General Public License
6 # modify it under the terms of the GNU General Public License
7 # as published by the Free Software Foundation; either version 2
7 # as published by the Free Software Foundation; either version 2
8 # of the License, or (at your option) any later version.
8 # of the License, or (at your option) any later version.
9 #
9 #
10 # This program is distributed in the hope that it will be useful,
10 # This program is distributed in the hope that it will be useful,
11 # but WITHOUT ANY WARRANTY; without even the implied warranty of
11 # but WITHOUT ANY WARRANTY; without even the implied warranty of
12 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 # GNU General Public License for more details.
13 # GNU General Public License for more details.
14 #
14 #
15 # You should have received a copy of the GNU General Public License
15 # You should have received a copy of the GNU General Public License
16 # along with this program; if not, write to the Free Software
16 # along with this program; if not, write to the Free Software
17 # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
17 # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
18
18
19 require File.expand_path('../../test_helper', __FILE__)
19 require File.expand_path('../../test_helper', __FILE__)
20
20
21 class TimeEntryReportsControllerTest < ActionController::TestCase
21 class TimeEntryReportsControllerTest < ActionController::TestCase
22 tests TimelogController
22 tests TimelogController
23
23
24 fixtures :projects, :enabled_modules, :roles, :members, :member_roles,
24 fixtures :projects, :enabled_modules, :roles, :members, :member_roles,
25 :issues, :time_entries, :users, :trackers, :enumerations,
25 :issues, :time_entries, :users, :trackers, :enumerations,
26 :issue_statuses, :custom_fields, :custom_values
26 :issue_statuses, :custom_fields, :custom_values
27
27
28 include Redmine::I18n
28 include Redmine::I18n
29
29
30 def setup
30 def setup
31 Setting.default_language = "en"
31 Setting.default_language = "en"
32 end
32 end
33
33
34 def test_report_at_project_level
34 def test_report_at_project_level
35 get :report, :project_id => 'ecookbook'
35 get :report, :project_id => 'ecookbook'
36 assert_response :success
36 assert_response :success
37 assert_template 'report'
37 assert_template 'report'
38 assert_tag :form,
38 assert_tag :form,
39 :attributes => {:action => "/projects/ecookbook/time_entries/report", :id => 'query_form'}
39 :attributes => {:action => "/projects/ecookbook/time_entries/report", :id => 'query_form'}
40 end
40 end
41
41
42 def test_report_all_projects
42 def test_report_all_projects
43 get :report
43 get :report
44 assert_response :success
44 assert_response :success
45 assert_template 'report'
45 assert_template 'report'
46 assert_tag :form,
46 assert_tag :form,
47 :attributes => {:action => "/time_entries/report", :id => 'query_form'}
47 :attributes => {:action => "/time_entries/report", :id => 'query_form'}
48 end
48 end
49
49
50 def test_report_all_projects_denied
50 def test_report_all_projects_denied
51 r = Role.anonymous
51 r = Role.anonymous
52 r.permissions.delete(:view_time_entries)
52 r.permissions.delete(:view_time_entries)
53 r.permissions_will_change!
53 r.permissions_will_change!
54 r.save
54 r.save
55 get :report
55 get :report
56 assert_redirected_to '/login?back_url=http%3A%2F%2Ftest.host%2Ftime_entries%2Freport'
56 assert_redirected_to '/login?back_url=http%3A%2F%2Ftest.host%2Ftime_entries%2Freport'
57 end
57 end
58
58
59 def test_report_all_projects_one_criteria
59 def test_report_all_projects_one_criteria
60 get :report, :columns => 'week', :from => "2007-04-01", :to => "2007-04-30", :criteria => ['project']
60 get :report, :columns => 'week', :from => "2007-04-01", :to => "2007-04-30", :criteria => ['project']
61 assert_response :success
61 assert_response :success
62 assert_template 'report'
62 assert_template 'report'
63 assert_not_nil assigns(:report)
63 assert_not_nil assigns(:report)
64 assert_equal "8.65", "%.2f" % assigns(:report).total_hours
64 assert_equal "8.65", "%.2f" % assigns(:report).total_hours
65 end
65 end
66
66
67 def test_report_all_time
67 def test_report_all_time
68 get :report, :project_id => 1, :criteria => ['project', 'issue']
68 get :report, :project_id => 1, :criteria => ['project', 'issue']
69 assert_response :success
69 assert_response :success
70 assert_template 'report'
70 assert_template 'report'
71 assert_not_nil assigns(:report)
71 assert_not_nil assigns(:report)
72 assert_equal "162.90", "%.2f" % assigns(:report).total_hours
72 assert_equal "162.90", "%.2f" % assigns(:report).total_hours
73 end
73 end
74
74
75 def test_report_all_time_by_day
75 def test_report_all_time_by_day
76 get :report, :project_id => 1, :criteria => ['project', 'issue'], :columns => 'day'
76 get :report, :project_id => 1, :criteria => ['project', 'issue'], :columns => 'day'
77 assert_response :success
77 assert_response :success
78 assert_template 'report'
78 assert_template 'report'
79 assert_not_nil assigns(:report)
79 assert_not_nil assigns(:report)
80 assert_equal "162.90", "%.2f" % assigns(:report).total_hours
80 assert_equal "162.90", "%.2f" % assigns(:report).total_hours
81 assert_tag :tag => 'th', :content => '2007-03-12'
81 assert_tag :tag => 'th', :content => '2007-03-12'
82 end
82 end
83
83
84 def test_report_one_criteria
84 def test_report_one_criteria
85 get :report, :project_id => 1, :columns => 'week', :from => "2007-04-01", :to => "2007-04-30", :criteria => ['project']
85 get :report, :project_id => 1, :columns => 'week', :from => "2007-04-01", :to => "2007-04-30", :criteria => ['project']
86 assert_response :success
86 assert_response :success
87 assert_template 'report'
87 assert_template 'report'
88 assert_not_nil assigns(:report)
88 assert_not_nil assigns(:report)
89 assert_equal "8.65", "%.2f" % assigns(:report).total_hours
89 assert_equal "8.65", "%.2f" % assigns(:report).total_hours
90 end
90 end
91
91
92 def test_report_two_criteria
92 def test_report_two_criteria
93 get :report, :project_id => 1, :columns => 'month', :from => "2007-01-01", :to => "2007-12-31", :criteria => ["user", "activity"]
93 get :report, :project_id => 1, :columns => 'month', :from => "2007-01-01", :to => "2007-12-31", :criteria => ["user", "activity"]
94 assert_response :success
94 assert_response :success
95 assert_template 'report'
95 assert_template 'report'
96 assert_not_nil assigns(:report)
96 assert_not_nil assigns(:report)
97 assert_equal "162.90", "%.2f" % assigns(:report).total_hours
97 assert_equal "162.90", "%.2f" % assigns(:report).total_hours
98 end
98 end
99
99
100 def test_report_custom_field_criteria_with_multiple_values
100 def test_report_custom_field_criteria_with_multiple_values
101 field = TimeEntryCustomField.create!(:name => 'multi', :field_format => 'list', :possible_values => ['value1', 'value2'])
101 field = TimeEntryCustomField.create!(:name => 'multi', :field_format => 'list', :possible_values => ['value1', 'value2'])
102 entry = TimeEntry.create!(:project => Project.find(1), :hours => 1, :activity_id => 10, :user => User.find(2), :spent_on => Date.today)
102 entry = TimeEntry.create!(:project => Project.find(1), :hours => 1, :activity_id => 10, :user => User.find(2), :spent_on => Date.today)
103 CustomValue.create!(:customized => entry, :custom_field => field, :value => 'value1')
103 CustomValue.create!(:customized => entry, :custom_field => field, :value => 'value1')
104 CustomValue.create!(:customized => entry, :custom_field => field, :value => 'value2')
104 CustomValue.create!(:customized => entry, :custom_field => field, :value => 'value2')
105
105
106 get :report, :project_id => 1, :columns => 'day', :criteria => ["cf_#{field.id}"]
106 get :report, :project_id => 1, :columns => 'day', :criteria => ["cf_#{field.id}"]
107 assert_response :success
107 assert_response :success
108 end
108 end
109
109
110 def test_report_one_day
110 def test_report_one_day
111 get :report, :project_id => 1, :columns => 'day', :from => "2007-03-23", :to => "2007-03-23", :criteria => ["user", "activity"]
111 get :report, :project_id => 1, :columns => 'day', :from => "2007-03-23", :to => "2007-03-23", :criteria => ["user", "activity"]
112 assert_response :success
112 assert_response :success
113 assert_template 'report'
113 assert_template 'report'
114 assert_not_nil assigns(:report)
114 assert_not_nil assigns(:report)
115 assert_equal "4.25", "%.2f" % assigns(:report).total_hours
115 assert_equal "4.25", "%.2f" % assigns(:report).total_hours
116 end
116 end
117
117
118 def test_report_at_issue_level
118 def test_report_at_issue_level
119 get :report, :project_id => 1, :issue_id => 1, :columns => 'month', :from => "2007-01-01", :to => "2007-12-31", :criteria => ["user", "activity"]
119 get :report, :project_id => 1, :issue_id => 1, :columns => 'month', :from => "2007-01-01", :to => "2007-12-31", :criteria => ["user", "activity"]
120 assert_response :success
120 assert_response :success
121 assert_template 'report'
121 assert_template 'report'
122 assert_not_nil assigns(:report)
122 assert_not_nil assigns(:report)
123 assert_equal "154.25", "%.2f" % assigns(:report).total_hours
123 assert_equal "154.25", "%.2f" % assigns(:report).total_hours
124 assert_tag :form,
124 assert_tag :form,
125 :attributes => {:action => "/projects/ecookbook/issues/1/time_entries/report", :id => 'query_form'}
125 :attributes => {:action => "/projects/ecookbook/issues/1/time_entries/report", :id => 'query_form'}
126 end
126 end
127
127
128 def test_report_by_week_should_use_commercial_year
128 def test_report_by_week_should_use_commercial_year
129 TimeEntry.delete_all
129 TimeEntry.delete_all
130 TimeEntry.generate!(:hours => '2', :spent_on => '2009-12-25') # 2009-52
130 TimeEntry.generate!(:hours => '2', :spent_on => '2009-12-25') # 2009-52
131 TimeEntry.generate!(:hours => '4', :spent_on => '2009-12-31') # 2009-53
131 TimeEntry.generate!(:hours => '4', :spent_on => '2009-12-31') # 2009-53
132 TimeEntry.generate!(:hours => '8', :spent_on => '2010-01-01') # 2009-53
132 TimeEntry.generate!(:hours => '8', :spent_on => '2010-01-01') # 2009-53
133 TimeEntry.generate!(:hours => '16', :spent_on => '2010-01-05') # 2010-1
133 TimeEntry.generate!(:hours => '16', :spent_on => '2010-01-05') # 2010-1
134
134
135 get :report, :columns => 'week', :from => "2009-12-25", :to => "2010-01-05", :criteria => ["project"]
135 get :report, :columns => 'week', :from => "2009-12-25", :to => "2010-01-05", :criteria => ["project"]
136 assert_response :success
136 assert_response :success
137
137
138 assert_select '#time-report thead tr' do
138 assert_select '#time-report thead tr' do
139 assert_select 'th:nth-child(1)', :text => 'Project'
139 assert_select 'th:nth-child(1)', :text => 'Project'
140 assert_select 'th:nth-child(2)', :text => '2009-52'
140 assert_select 'th:nth-child(2)', :text => '2009-52'
141 assert_select 'th:nth-child(3)', :text => '2009-53'
141 assert_select 'th:nth-child(3)', :text => '2009-53'
142 assert_select 'th:nth-child(4)', :text => '2010-1'
142 assert_select 'th:nth-child(4)', :text => '2010-1'
143 assert_select 'th:nth-child(5)', :text => 'Total time'
143 assert_select 'th:nth-child(5)', :text => 'Total time'
144 end
144 end
145 assert_select '#time-report tbody tr' do
145 assert_select '#time-report tbody tr' do
146 assert_select 'td:nth-child(1)', :text => 'eCookbook'
146 assert_select 'td:nth-child(1)', :text => 'eCookbook'
147 assert_select 'td:nth-child(2)', :text => '2.00'
147 assert_select 'td:nth-child(2)', :text => '2.00'
148 assert_select 'td:nth-child(3)', :text => '12.00'
148 assert_select 'td:nth-child(3)', :text => '12.00'
149 assert_select 'td:nth-child(4)', :text => '16.00'
149 assert_select 'td:nth-child(4)', :text => '16.00'
150 assert_select 'td:nth-child(5)', :text => '30.00' # Total
150 assert_select 'td:nth-child(5)', :text => '30.00' # Total
151 end
151 end
152 end
152 end
153
153
154 def test_report_should_propose_association_custom_fields
154 def test_report_should_propose_association_custom_fields
155 get :report
155 get :report
156 assert_response :success
156 assert_response :success
157 assert_template 'report'
157 assert_template 'report'
158
158
159 assert_select 'select[name=?]', 'criteria[]' do
159 assert_select 'select[name=?]', 'criteria[]' do
160 assert_select 'option[value=cf_1]', {:text => 'Database'}, 'Issue custom field not found'
160 assert_select 'option[value=cf_1]', {:text => 'Database'}, 'Issue custom field not found'
161 assert_select 'option[value=cf_3]', {:text => 'Development status'}, 'Project custom field not found'
161 assert_select 'option[value=cf_3]', {:text => 'Development status'}, 'Project custom field not found'
162 assert_select 'option[value=cf_7]', {:text => 'Billable'}, 'TimeEntryActivity custom field not found'
162 assert_select 'option[value=cf_7]', {:text => 'Billable'}, 'TimeEntryActivity custom field not found'
163 end
163 end
164 end
164 end
165
165
166 def test_report_with_association_custom_fields
166 def test_report_with_association_custom_fields
167 get :report, :criteria => ['cf_1', 'cf_3', 'cf_7']
167 get :report, :criteria => ['cf_1', 'cf_3', 'cf_7']
168 assert_response :success
168 assert_response :success
169 assert_template 'report'
169 assert_template 'report'
170 assert_not_nil assigns(:report)
170 assert_not_nil assigns(:report)
171 assert_equal 3, assigns(:report).criteria.size
171 assert_equal 3, assigns(:report).criteria.size
172 assert_equal "162.90", "%.2f" % assigns(:report).total_hours
172 assert_equal "162.90", "%.2f" % assigns(:report).total_hours
173
173
174 # Custom fields columns
174 # Custom fields columns
175 assert_select 'th', :text => 'Database'
175 assert_select 'th', :text => 'Database'
176 assert_select 'th', :text => 'Development status'
176 assert_select 'th', :text => 'Development status'
177 assert_select 'th', :text => 'Billable'
177 assert_select 'th', :text => 'Billable'
178
178
179 # Custom field row
179 # Custom field row
180 assert_select 'tr' do
180 assert_select 'tr' do
181 assert_select 'td', :text => 'MySQL'
181 assert_select 'td', :text => 'MySQL'
182 assert_select 'td.hours', :text => '1.00'
182 assert_select 'td.hours', :text => '1.00'
183 end
183 end
184 end
184 end
185
185
186 def test_report_one_criteria_no_result
186 def test_report_one_criteria_no_result
187 get :report, :project_id => 1, :columns => 'week', :from => "1998-04-01", :to => "1998-04-30", :criteria => ['project']
187 get :report, :project_id => 1, :columns => 'week', :from => "1998-04-01", :to => "1998-04-30", :criteria => ['project']
188 assert_response :success
188 assert_response :success
189 assert_template 'report'
189 assert_template 'report'
190 assert_not_nil assigns(:report)
190 assert_not_nil assigns(:report)
191 assert_equal "0.00", "%.2f" % assigns(:report).total_hours
191 assert_equal "0.00", "%.2f" % assigns(:report).total_hours
192 end
192 end
193
193
194 def test_report_status_criterion
194 def test_report_status_criterion
195 get :report, :project_id => 1, :criteria => ['status']
195 get :report, :project_id => 1, :criteria => ['status']
196 assert_response :success
196 assert_response :success
197 assert_template 'report'
197 assert_template 'report'
198 assert_tag :tag => 'th', :content => 'Status'
198 assert_tag :tag => 'th', :content => 'Status'
199 assert_tag :tag => 'td', :content => 'New'
199 assert_tag :tag => 'td', :content => 'New'
200 end
200 end
201
201
202 def test_report_all_projects_csv_export
202 def test_report_all_projects_csv_export
203 get :report, :columns => 'month', :from => "2007-01-01", :to => "2007-06-30",
203 get :report, :columns => 'month', :from => "2007-01-01", :to => "2007-06-30",
204 :criteria => ["project", "user", "activity"], :format => "csv"
204 :criteria => ["project", "user", "activity"], :format => "csv"
205 assert_response :success
205 assert_response :success
206 assert_equal 'text/csv; header=present', @response.content_type
206 assert_equal 'text/csv; header=present', @response.content_type
207 lines = @response.body.chomp.split("\n")
207 lines = @response.body.chomp.split("\n")
208 # Headers
208 # Headers
209 assert_equal 'Project,User,Activity,2007-3,2007-4,Total time', lines.first
209 assert_equal 'Project,User,Activity,2007-3,2007-4,Total time', lines.first
210 # Total row
210 # Total row
211 assert_equal 'Total time,"","",154.25,8.65,162.90', lines.last
211 assert_equal 'Total time,"","",154.25,8.65,162.90', lines.last
212 end
212 end
213
213
214 def test_report_csv_export
214 def test_report_csv_export
215 get :report, :project_id => 1, :columns => 'month',
215 get :report, :project_id => 1, :columns => 'month',
216 :from => "2007-01-01", :to => "2007-06-30",
216 :from => "2007-01-01", :to => "2007-06-30",
217 :criteria => ["project", "user", "activity"], :format => "csv"
217 :criteria => ["project", "user", "activity"], :format => "csv"
218 assert_response :success
218 assert_response :success
219 assert_equal 'text/csv; header=present', @response.content_type
219 assert_equal 'text/csv; header=present', @response.content_type
220 lines = @response.body.chomp.split("\n")
220 lines = @response.body.chomp.split("\n")
221 # Headers
221 # Headers
222 assert_equal 'Project,User,Activity,2007-3,2007-4,Total time', lines.first
222 assert_equal 'Project,User,Activity,2007-3,2007-4,Total time', lines.first
223 # Total row
223 # Total row
224 assert_equal 'Total time,"","",154.25,8.65,162.90', lines.last
224 assert_equal 'Total time,"","",154.25,8.65,162.90', lines.last
225 end
225 end
226
226
227 def test_csv_big_5
227 def test_csv_big_5
228 Setting.default_language = "zh-TW"
228 Setting.default_language = "zh-TW"
229 str_utf8 = "\xe4\xb8\x80\xe6\x9c\x88"
229 str_utf8 = "\xe4\xb8\x80\xe6\x9c\x88"
230 str_big5 = "\xa4@\xa4\xeb"
230 str_big5 = "\xa4@\xa4\xeb"
231 if str_utf8.respond_to?(:force_encoding)
231 if str_utf8.respond_to?(:force_encoding)
232 str_utf8.force_encoding('UTF-8')
232 str_utf8.force_encoding('UTF-8')
233 str_big5.force_encoding('Big5')
233 str_big5.force_encoding('Big5')
234 end
234 end
235 user = User.find_by_id(3)
235 user = User.find_by_id(3)
236 user.firstname = str_utf8
236 user.firstname = str_utf8
237 user.lastname = "test-lastname"
237 user.lastname = "test-lastname"
238 assert user.save
238 assert user.save
239 comments = "test_csv_big_5"
239 comments = "test_csv_big_5"
240 te1 = TimeEntry.create(:spent_on => '2011-11-11',
240 te1 = TimeEntry.create(:spent_on => '2011-11-11',
241 :hours => 7.3,
241 :hours => 7.3,
242 :project => Project.find(1),
242 :project => Project.find(1),
243 :user => user,
243 :user => user,
244 :activity => TimeEntryActivity.find_by_name('Design'),
244 :activity => TimeEntryActivity.find_by_name('Design'),
245 :comments => comments)
245 :comments => comments)
246
246
247 te2 = TimeEntry.find_by_comments(comments)
247 te2 = TimeEntry.find_by_comments(comments)
248 assert_not_nil te2
248 assert_not_nil te2
249 assert_equal 7.3, te2.hours
249 assert_equal 7.3, te2.hours
250 assert_equal 3, te2.user_id
250 assert_equal 3, te2.user_id
251
251
252 get :report, :project_id => 1, :columns => 'day',
252 get :report, :project_id => 1, :columns => 'day',
253 :from => "2011-11-11", :to => "2011-11-11",
253 :from => "2011-11-11", :to => "2011-11-11",
254 :criteria => ["user"], :format => "csv"
254 :criteria => ["user"], :format => "csv"
255 assert_response :success
255 assert_response :success
256 assert_equal 'text/csv; header=present', @response.content_type
256 assert_equal 'text/csv; header=present', @response.content_type
257 lines = @response.body.chomp.split("\n")
257 lines = @response.body.chomp.split("\n")
258 # Headers
258 # Headers
259 s1 = "\xa5\xce\xa4\xe1,2011-11-11,\xc1`\xadp"
259 s1 = "\xa5\xce\xa4\xe1,2011-11-11,\xa4u\xae\xc9\xc1`\xadp"
260 s2 = "\xc1`\xadp"
260 s2 = "\xa4u\xae\xc9\xc1`\xadp"
261 if s1.respond_to?(:force_encoding)
261 if s1.respond_to?(:force_encoding)
262 s1.force_encoding('Big5')
262 s1.force_encoding('Big5')
263 s2.force_encoding('Big5')
263 s2.force_encoding('Big5')
264 end
264 end
265 assert_equal s1, lines.first
265 assert_equal s1, lines.first
266 # Total row
266 # Total row
267 assert_equal "#{str_big5} #{user.lastname},7.30,7.30", lines[1]
267 assert_equal "#{str_big5} #{user.lastname},7.30,7.30", lines[1]
268 assert_equal "#{s2},7.30,7.30", lines[2]
268 assert_equal "#{s2},7.30,7.30", lines[2]
269
269
270 str_tw = "Traditional Chinese (\xe7\xb9\x81\xe9\xab\x94\xe4\xb8\xad\xe6\x96\x87)"
270 str_tw = "Traditional Chinese (\xe7\xb9\x81\xe9\xab\x94\xe4\xb8\xad\xe6\x96\x87)"
271 if str_tw.respond_to?(:force_encoding)
271 if str_tw.respond_to?(:force_encoding)
272 str_tw.force_encoding('UTF-8')
272 str_tw.force_encoding('UTF-8')
273 end
273 end
274 assert_equal str_tw, l(:general_lang_name)
274 assert_equal str_tw, l(:general_lang_name)
275 assert_equal 'Big5', l(:general_csv_encoding)
275 assert_equal 'Big5', l(:general_csv_encoding)
276 assert_equal ',', l(:general_csv_separator)
276 assert_equal ',', l(:general_csv_separator)
277 assert_equal '.', l(:general_csv_decimal_separator)
277 assert_equal '.', l(:general_csv_decimal_separator)
278 end
278 end
279
279
280 def test_csv_cannot_convert_should_be_replaced_big_5
280 def test_csv_cannot_convert_should_be_replaced_big_5
281 Setting.default_language = "zh-TW"
281 Setting.default_language = "zh-TW"
282 str_utf8 = "\xe4\xbb\xa5\xe5\x86\x85"
282 str_utf8 = "\xe4\xbb\xa5\xe5\x86\x85"
283 if str_utf8.respond_to?(:force_encoding)
283 if str_utf8.respond_to?(:force_encoding)
284 str_utf8.force_encoding('UTF-8')
284 str_utf8.force_encoding('UTF-8')
285 end
285 end
286 user = User.find_by_id(3)
286 user = User.find_by_id(3)
287 user.firstname = str_utf8
287 user.firstname = str_utf8
288 user.lastname = "test-lastname"
288 user.lastname = "test-lastname"
289 assert user.save
289 assert user.save
290 comments = "test_replaced"
290 comments = "test_replaced"
291 te1 = TimeEntry.create(:spent_on => '2011-11-11',
291 te1 = TimeEntry.create(:spent_on => '2011-11-11',
292 :hours => 7.3,
292 :hours => 7.3,
293 :project => Project.find(1),
293 :project => Project.find(1),
294 :user => user,
294 :user => user,
295 :activity => TimeEntryActivity.find_by_name('Design'),
295 :activity => TimeEntryActivity.find_by_name('Design'),
296 :comments => comments)
296 :comments => comments)
297
297
298 te2 = TimeEntry.find_by_comments(comments)
298 te2 = TimeEntry.find_by_comments(comments)
299 assert_not_nil te2
299 assert_not_nil te2
300 assert_equal 7.3, te2.hours
300 assert_equal 7.3, te2.hours
301 assert_equal 3, te2.user_id
301 assert_equal 3, te2.user_id
302
302
303 get :report, :project_id => 1, :columns => 'day',
303 get :report, :project_id => 1, :columns => 'day',
304 :from => "2011-11-11", :to => "2011-11-11",
304 :from => "2011-11-11", :to => "2011-11-11",
305 :criteria => ["user"], :format => "csv"
305 :criteria => ["user"], :format => "csv"
306 assert_response :success
306 assert_response :success
307 assert_equal 'text/csv; header=present', @response.content_type
307 assert_equal 'text/csv; header=present', @response.content_type
308 lines = @response.body.chomp.split("\n")
308 lines = @response.body.chomp.split("\n")
309 # Headers
309 # Headers
310 s1 = "\xa5\xce\xa4\xe1,2011-11-11,\xc1`\xadp"
310 s1 = "\xa5\xce\xa4\xe1,2011-11-11,\xa4u\xae\xc9\xc1`\xadp"
311 if s1.respond_to?(:force_encoding)
311 if s1.respond_to?(:force_encoding)
312 s1.force_encoding('Big5')
312 s1.force_encoding('Big5')
313 end
313 end
314 assert_equal s1, lines.first
314 assert_equal s1, lines.first
315 # Total row
315 # Total row
316 s2 = ""
316 s2 = ""
317 if s2.respond_to?(:force_encoding)
317 if s2.respond_to?(:force_encoding)
318 s2 = "\xa5H?"
318 s2 = "\xa5H?"
319 s2.force_encoding('Big5')
319 s2.force_encoding('Big5')
320 elsif RUBY_PLATFORM == 'java'
320 elsif RUBY_PLATFORM == 'java'
321 s2 = "??"
321 s2 = "??"
322 else
322 else
323 s2 = "\xa5H???"
323 s2 = "\xa5H???"
324 end
324 end
325 assert_equal "#{s2} #{user.lastname},7.30,7.30", lines[1]
325 assert_equal "#{s2} #{user.lastname},7.30,7.30", lines[1]
326 end
326 end
327
327
328 def test_csv_fr
328 def test_csv_fr
329 with_settings :default_language => "fr" do
329 with_settings :default_language => "fr" do
330 str1 = "test_csv_fr"
330 str1 = "test_csv_fr"
331 user = User.find_by_id(3)
331 user = User.find_by_id(3)
332 te1 = TimeEntry.create(:spent_on => '2011-11-11',
332 te1 = TimeEntry.create(:spent_on => '2011-11-11',
333 :hours => 7.3,
333 :hours => 7.3,
334 :project => Project.find(1),
334 :project => Project.find(1),
335 :user => user,
335 :user => user,
336 :activity => TimeEntryActivity.find_by_name('Design'),
336 :activity => TimeEntryActivity.find_by_name('Design'),
337 :comments => str1)
337 :comments => str1)
338
338
339 te2 = TimeEntry.find_by_comments(str1)
339 te2 = TimeEntry.find_by_comments(str1)
340 assert_not_nil te2
340 assert_not_nil te2
341 assert_equal 7.3, te2.hours
341 assert_equal 7.3, te2.hours
342 assert_equal 3, te2.user_id
342 assert_equal 3, te2.user_id
343
343
344 get :report, :project_id => 1, :columns => 'day',
344 get :report, :project_id => 1, :columns => 'day',
345 :from => "2011-11-11", :to => "2011-11-11",
345 :from => "2011-11-11", :to => "2011-11-11",
346 :criteria => ["user"], :format => "csv"
346 :criteria => ["user"], :format => "csv"
347 assert_response :success
347 assert_response :success
348 assert_equal 'text/csv; header=present', @response.content_type
348 assert_equal 'text/csv; header=present', @response.content_type
349 lines = @response.body.chomp.split("\n")
349 lines = @response.body.chomp.split("\n")
350 # Headers
350 # Headers
351 s1 = "Utilisateur;2011-11-11;Temps total"
351 s1 = "Utilisateur;2011-11-11;Temps total"
352 s2 = "Temps total"
352 s2 = "Temps total"
353 if s1.respond_to?(:force_encoding)
353 if s1.respond_to?(:force_encoding)
354 s1.force_encoding('ISO-8859-1')
354 s1.force_encoding('ISO-8859-1')
355 s2.force_encoding('ISO-8859-1')
355 s2.force_encoding('ISO-8859-1')
356 end
356 end
357 assert_equal s1, lines.first
357 assert_equal s1, lines.first
358 # Total row
358 # Total row
359 assert_equal "#{user.firstname} #{user.lastname};7,30;7,30", lines[1]
359 assert_equal "#{user.firstname} #{user.lastname};7,30;7,30", lines[1]
360 assert_equal "#{s2};7,30;7,30", lines[2]
360 assert_equal "#{s2};7,30;7,30", lines[2]
361
361
362 str_fr = "Fran\xc3\xa7ais"
362 str_fr = "Fran\xc3\xa7ais"
363 if str_fr.respond_to?(:force_encoding)
363 if str_fr.respond_to?(:force_encoding)
364 str_fr.force_encoding('UTF-8')
364 str_fr.force_encoding('UTF-8')
365 end
365 end
366 assert_equal str_fr, l(:general_lang_name)
366 assert_equal str_fr, l(:general_lang_name)
367 assert_equal 'ISO-8859-1', l(:general_csv_encoding)
367 assert_equal 'ISO-8859-1', l(:general_csv_encoding)
368 assert_equal ';', l(:general_csv_separator)
368 assert_equal ';', l(:general_csv_separator)
369 assert_equal ',', l(:general_csv_decimal_separator)
369 assert_equal ',', l(:general_csv_decimal_separator)
370 end
370 end
371 end
371 end
372 end
372 end
General Comments 0
You need to be logged in to leave comments. Login now