fat_free_crm 0.12.3 → 0.13.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of fat_free_crm might be problematic. Click here for more details.

Files changed (521) hide show
  1. checksums.yaml +5 -13
  2. data/.travis.yml +1 -11
  3. data/Gemfile +7 -19
  4. data/Gemfile.lock +166 -166
  5. data/Procfile +1 -1
  6. data/README.md +20 -20
  7. data/app/assets/javascripts/admin/fields.js.coffee +3 -3
  8. data/app/assets/javascripts/application.js.erb +3 -0
  9. data/app/assets/javascripts/crm.js +1 -0
  10. data/app/assets/javascripts/crm_comments.js.coffee +66 -0
  11. data/app/assets/javascripts/lists.js.coffee +45 -2
  12. data/app/assets/javascripts/search.js.coffee +2 -0
  13. data/app/assets/javascripts/timeago.js +17 -0
  14. data/app/assets/stylesheets/advanced_search.css.scss +49 -25
  15. data/app/assets/stylesheets/application.css.erb +3 -0
  16. data/app/assets/stylesheets/common.scss +13 -0
  17. data/app/assets/stylesheets/format_buttons.css.scss +15 -10
  18. data/app/assets/stylesheets/header.scss +3 -0
  19. data/app/assets/stylesheets/lists.css.scss +4 -0
  20. data/app/controllers/admin/fields_controller.rb +5 -5
  21. data/app/controllers/admin/users_controller.rb +1 -3
  22. data/app/controllers/application_controller.rb +23 -23
  23. data/app/controllers/comments_controller.rb +3 -31
  24. data/app/controllers/entities/accounts_controller.rb +3 -3
  25. data/app/controllers/entities/campaigns_controller.rb +4 -4
  26. data/app/controllers/entities/contacts_controller.rb +2 -2
  27. data/app/controllers/entities/leads_controller.rb +3 -3
  28. data/app/controllers/entities/opportunities_controller.rb +4 -3
  29. data/app/controllers/entities_controller.rb +6 -6
  30. data/app/controllers/home_controller.rb +1 -1
  31. data/app/controllers/lists_controller.rb +8 -1
  32. data/app/controllers/tasks_controller.rb +1 -1
  33. data/app/controllers/users_controller.rb +46 -23
  34. data/app/helpers/admin/application_helper.rb +1 -3
  35. data/app/helpers/admin/field_groups_helper.rb +2 -1
  36. data/app/helpers/application_helper.rb +37 -16
  37. data/app/helpers/home_helper.rb +1 -2
  38. data/app/helpers/leads_helper.rb +5 -6
  39. data/app/helpers/tasks_helper.rb +36 -50
  40. data/app/models/entities/account.rb +10 -7
  41. data/app/models/entities/campaign.rb +4 -4
  42. data/app/models/entities/contact.rb +8 -5
  43. data/app/models/entities/lead.rb +8 -8
  44. data/app/models/entities/opportunity.rb +13 -18
  45. data/app/models/fields/custom_field.rb +10 -0
  46. data/app/models/fields/field.rb +3 -3
  47. data/app/models/fields/field_group.rb +1 -1
  48. data/app/models/list.rb +1 -0
  49. data/app/models/polymorphic/address.rb +3 -3
  50. data/app/models/polymorphic/comment.rb +2 -4
  51. data/app/models/polymorphic/task.rb +32 -27
  52. data/app/models/setting.rb +3 -9
  53. data/app/models/users/ability.rb +2 -13
  54. data/app/models/users/user.rb +12 -15
  55. data/app/views/accounts/_edit.html.haml +1 -1
  56. data/app/views/accounts/_index_brief.html.haml +3 -3
  57. data/app/views/accounts/_index_long.html.haml +3 -3
  58. data/app/views/accounts/_new.html.haml +1 -1
  59. data/app/views/accounts/create.js.haml +17 -0
  60. data/app/views/accounts/destroy.js.haml +6 -0
  61. data/app/views/accounts/edit.js.haml +32 -0
  62. data/app/views/accounts/index.js.haml +11 -0
  63. data/app/views/accounts/index.xls.builder +9 -7
  64. data/app/views/accounts/new.js.haml +11 -0
  65. data/app/views/accounts/show.js.haml +5 -0
  66. data/app/views/accounts/update.js.haml +17 -0
  67. data/app/views/admin/field_groups/_edit.html.haml +1 -1
  68. data/app/views/admin/field_groups/_new.html.haml +1 -1
  69. data/app/views/admin/field_groups/confirm.js.haml +7 -0
  70. data/app/views/admin/field_groups/create.js.haml +20 -0
  71. data/app/views/admin/field_groups/destroy.js.haml +9 -0
  72. data/app/views/admin/field_groups/edit.js.haml +12 -0
  73. data/app/views/admin/field_groups/new.js.haml +8 -0
  74. data/app/views/admin/field_groups/update.js.haml +8 -0
  75. data/app/views/admin/fields/_field.html.haml +2 -2
  76. data/app/views/admin/fields/_form.html.haml +2 -2
  77. data/app/views/admin/fields/create.js.haml +17 -0
  78. data/app/views/admin/fields/destroy.js.haml +8 -0
  79. data/app/views/admin/fields/edit.js.haml +3 -0
  80. data/app/views/admin/fields/update.js.haml +13 -0
  81. data/app/views/admin/groups/_edit.html.haml +1 -1
  82. data/app/views/admin/groups/_new.html.haml +1 -1
  83. data/app/views/admin/groups/create.js.haml +10 -0
  84. data/app/views/admin/groups/destroy.js.haml +9 -0
  85. data/app/views/admin/groups/edit.js.haml +14 -0
  86. data/app/views/admin/groups/index.html.haml +1 -1
  87. data/app/views/admin/groups/index.js.haml +2 -0
  88. data/app/views/admin/groups/new.js.haml +9 -0
  89. data/app/views/admin/groups/update.js.haml +9 -0
  90. data/app/views/admin/tags/_edit.html.haml +1 -1
  91. data/app/views/admin/tags/_new.html.haml +1 -1
  92. data/app/views/admin/tags/confirm.js.haml +7 -0
  93. data/app/views/admin/tags/create.js.haml +11 -0
  94. data/app/views/admin/tags/destroy.js.haml +10 -0
  95. data/app/views/admin/tags/edit.js.haml +20 -0
  96. data/app/views/admin/tags/new.js.haml +7 -0
  97. data/app/views/admin/tags/update.js.haml +9 -0
  98. data/app/views/admin/users/_edit.html.haml +1 -1
  99. data/app/views/admin/users/_new.html.haml +1 -1
  100. data/app/views/admin/users/_user.html.haml +1 -1
  101. data/app/views/admin/users/confirm.js.haml +7 -0
  102. data/app/views/admin/users/create.js.haml +10 -0
  103. data/app/views/admin/users/destroy.js.haml +10 -0
  104. data/app/views/admin/users/edit.js.haml +20 -0
  105. data/app/views/admin/users/index.js.haml +2 -0
  106. data/app/views/admin/users/new.js.haml +9 -0
  107. data/app/views/admin/users/reactivate.js.haml +3 -0
  108. data/app/views/admin/users/suspend.js.haml +3 -0
  109. data/app/views/admin/users/update.js.haml +9 -0
  110. data/app/views/authentications/new.html.haml +1 -1
  111. data/app/views/campaigns/_edit.html.haml +1 -1
  112. data/app/views/campaigns/_new.html.haml +1 -1
  113. data/app/views/campaigns/create.js.haml +20 -0
  114. data/app/views/campaigns/destroy.js.haml +6 -0
  115. data/app/views/campaigns/edit.js.haml +33 -0
  116. data/app/views/campaigns/index.js.haml +11 -0
  117. data/app/views/campaigns/index.xls.builder +9 -7
  118. data/app/views/campaigns/new.js.haml +11 -0
  119. data/app/views/campaigns/show.js.haml +5 -0
  120. data/app/views/campaigns/update.js.haml +20 -0
  121. data/app/views/comments/_comment.html.haml +1 -1
  122. data/app/views/comments/_edit.html.haml +1 -1
  123. data/app/views/comments/_new.html.haml +3 -2
  124. data/app/views/comments/create.js.haml +14 -0
  125. data/app/views/comments/destroy.js.haml +5 -0
  126. data/app/views/comments/edit.js.haml +11 -0
  127. data/app/views/comments/update.js.haml +9 -0
  128. data/app/views/contacts/_edit.html.haml +1 -1
  129. data/app/views/contacts/_index_full.html.haml +1 -1
  130. data/app/views/contacts/_index_long.html.haml +2 -1
  131. data/app/views/contacts/_new.html.haml +1 -1
  132. data/app/views/contacts/_section_general.html.haml +3 -3
  133. data/app/views/contacts/create.js.haml +23 -0
  134. data/app/views/contacts/destroy.js.haml +9 -0
  135. data/app/views/contacts/edit.js.haml +35 -0
  136. data/app/views/contacts/index.js.haml +11 -0
  137. data/app/views/contacts/index.xls.builder +9 -7
  138. data/app/views/contacts/new.js.haml +13 -0
  139. data/app/views/contacts/show.js.haml +5 -0
  140. data/app/views/contacts/update.js.haml +22 -0
  141. data/app/views/emails/destroy.js.haml +5 -0
  142. data/app/views/entities/_permissions.html.haml +1 -1
  143. data/app/views/entities/attach.js.haml +21 -0
  144. data/app/views/entities/contacts.js.haml +3 -0
  145. data/app/views/entities/discard.js.haml +6 -0
  146. data/app/views/entities/leads.js.haml +3 -0
  147. data/app/views/entities/opportunities.js.haml +3 -0
  148. data/app/views/entities/subscription_update.js.haml +4 -0
  149. data/app/views/entities/versions.js.haml +3 -0
  150. data/app/views/fields/group.js.erb +3 -0
  151. data/app/views/home/_account.html.haml +3 -3
  152. data/app/views/home/_opportunity.html.haml +3 -3
  153. data/app/views/home/index.atom.builder +3 -3
  154. data/app/views/home/index.js.haml +7 -0
  155. data/app/views/home/index.rss.builder +2 -2
  156. data/app/views/home/options.js.haml +7 -0
  157. data/app/views/layouts/_footer.html.haml +0 -4
  158. data/app/views/layouts/_sidebar.html.haml +1 -0
  159. data/app/views/layouts/_tabbed.html.haml +1 -4
  160. data/app/views/layouts/admin/application.html.haml +0 -1
  161. data/app/views/layouts/application.html.haml +5 -7
  162. data/app/views/leads/_convert.html.haml +1 -1
  163. data/app/views/leads/_edit.html.haml +1 -1
  164. data/app/views/leads/_index_long.html.haml +2 -2
  165. data/app/views/leads/_new.html.haml +1 -1
  166. data/app/views/leads/convert.js.haml +35 -0
  167. data/app/views/leads/create.js.haml +21 -0
  168. data/app/views/leads/destroy.js.haml +9 -0
  169. data/app/views/leads/edit.js.haml +35 -0
  170. data/app/views/leads/index.js.haml +11 -0
  171. data/app/views/leads/index.xls.builder +9 -7
  172. data/app/views/leads/new.js.haml +11 -0
  173. data/app/views/leads/promote.js.haml +26 -0
  174. data/app/views/leads/reject.js.haml +12 -0
  175. data/app/views/leads/show.js.haml +5 -0
  176. data/app/views/leads/update.js.haml +26 -0
  177. data/app/views/lists/_personal_sidebar.html.haml +28 -0
  178. data/app/views/lists/_sidebar.html.haml +10 -7
  179. data/app/views/lists/create.js.haml +10 -0
  180. data/app/views/lists/destroy.js.haml +1 -0
  181. data/app/views/opportunities/_edit.html.haml +1 -1
  182. data/app/views/opportunities/_index_brief.html.haml +3 -3
  183. data/app/views/opportunities/_index_long.html.haml +3 -3
  184. data/app/views/opportunities/_new.html.haml +1 -2
  185. data/app/views/opportunities/_top_section.html.haml +4 -0
  186. data/app/views/opportunities/contacts.js.haml +3 -0
  187. data/app/views/opportunities/create.js.haml +29 -0
  188. data/app/views/opportunities/destroy.js.haml +13 -0
  189. data/app/views/opportunities/edit.js.haml +35 -0
  190. data/app/views/opportunities/index.js.haml +11 -0
  191. data/app/views/opportunities/index.xls.builder +9 -7
  192. data/app/views/opportunities/new.js.haml +13 -0
  193. data/app/views/opportunities/show.js.haml +5 -0
  194. data/app/views/opportunities/update.js.haml +25 -0
  195. data/app/views/passwords/edit.html.haml +1 -1
  196. data/app/views/passwords/new.html.haml +1 -1
  197. data/app/views/shared/_comment.html.haml +1 -1
  198. data/app/views/shared/_inline_styles.html.haml +1 -1
  199. data/app/views/tasks/_edit.html.haml +1 -1
  200. data/app/views/tasks/_new.html.haml +1 -1
  201. data/app/views/tasks/complete.js.haml +14 -0
  202. data/app/views/tasks/create.js.haml +39 -0
  203. data/app/views/tasks/destroy.js.haml +7 -0
  204. data/app/views/tasks/discard.js.haml +1 -0
  205. data/app/views/tasks/edit.js.haml +26 -0
  206. data/app/views/tasks/filter.js.haml +4 -0
  207. data/app/views/tasks/index.xls.builder +7 -5
  208. data/app/views/tasks/new.js.haml +8 -0
  209. data/app/views/tasks/update.js.haml +19 -0
  210. data/app/views/users/_password.html.haml +1 -1
  211. data/app/views/users/_profile.html.haml +1 -1
  212. data/app/views/users/avatar.js.haml +9 -0
  213. data/app/views/users/change_password.js.haml +13 -0
  214. data/app/views/users/edit.js.haml +9 -0
  215. data/app/views/users/new.html.haml +1 -1
  216. data/app/views/users/password.js.haml +10 -0
  217. data/app/views/users/update.js.haml +9 -0
  218. data/app/views/users/upload_avatar.js.haml +7 -0
  219. data/app/views/versions/_version.html.haml +1 -1
  220. data/config/application.rb +1 -4
  221. data/config/environments/production.rb +3 -2
  222. data/config/initializers/custom_field_ransack_translations.rb +15 -0
  223. data/config/initializers/locale.rb +9 -1
  224. data/config/initializers/secret_token.rb +1 -25
  225. data/config/initializers/views.rb +20 -20
  226. data/config/locales/cz.yml +245 -211
  227. data/config/locales/cz_fat_free_crm.yml +105 -181
  228. data/config/locales/de.yml +162 -118
  229. data/config/locales/de_fat_free_crm.yml +760 -731
  230. data/config/locales/de_ransack.yml +91 -0
  231. data/config/locales/en-GB.yml +158 -119
  232. data/config/locales/en-GB_fat_free_crm.yml +161 -279
  233. data/config/locales/en-US.yml +158 -121
  234. data/config/locales/en-US_fat_free_crm.yml +185 -179
  235. data/config/locales/en-US_ransack.yml +81 -82
  236. data/config/locales/es.yml +164 -123
  237. data/config/locales/es_fat_free_crm.yml +151 -209
  238. data/config/locales/fr-CA.yml +167 -130
  239. data/config/locales/fr-CA_fat_free_crm.yml +142 -202
  240. data/config/locales/fr.yml +170 -125
  241. data/config/locales/fr_fat_free_crm.yml +199 -302
  242. data/config/locales/it.yml +158 -122
  243. data/config/locales/it_fat_free_crm.yml +105 -168
  244. data/config/locales/ja.yml +162 -131
  245. data/config/locales/ja_fat_free_crm.yml +118 -188
  246. data/config/locales/pl.yml +168 -132
  247. data/config/locales/pl_fat_free_crm.yml +115 -186
  248. data/config/locales/pt-BR.yml +160 -127
  249. data/config/locales/pt-BR_fat_free_crm.yml +125 -182
  250. data/config/locales/ru.yml +256 -233
  251. data/config/locales/ru_fat_free_crm.yml +136 -193
  252. data/config/locales/sv-SE.yml +164 -181
  253. data/config/locales/sv-SE_fat_free_crm.yml +129 -193
  254. data/config/locales/th_fat_free_crm.yml +114 -194
  255. data/config/locales/zh-CN.yml +176 -149
  256. data/config/locales/zh-CN_fat_free_crm.yml +78 -167
  257. data/config/routes.rb +1 -1
  258. data/config/settings.default.yml +74 -23
  259. data/custom_plan.rb +11 -0
  260. data/db/migrate/20131207033244_add_user_id_to_lists.rb +6 -0
  261. data/db/schema.rb +4 -1
  262. data/fat_free_crm.gemspec +3 -3
  263. data/lib/fat_free_crm.rb +1 -11
  264. data/lib/fat_free_crm/export_csv.rb +3 -3
  265. data/lib/fat_free_crm/fields.rb +10 -0
  266. data/lib/fat_free_crm/gem_dependencies.rb +1 -2
  267. data/lib/fat_free_crm/i18n.rb +9 -5
  268. data/lib/fat_free_crm/version.rb +2 -2
  269. data/lib/fat_free_crm/view_factory.rb +8 -5
  270. data/lib/tasks/ffcrm/config.rake +9 -12
  271. data/lib/tasks/ffcrm/missing_translations.rake +2 -1
  272. data/spec/controllers/admin/users_controller_spec.rb +6 -4
  273. data/spec/controllers/applications_controller_spec.rb +4 -4
  274. data/spec/controllers/authentications_controller_spec.rb +15 -15
  275. data/spec/controllers/comments_controller_spec.rb +9 -87
  276. data/spec/controllers/emails_controller_spec.rb +1 -1
  277. data/spec/controllers/entities/accounts_controller_spec.rb +7 -7
  278. data/spec/controllers/entities/campaigns_controller_spec.rb +5 -5
  279. data/spec/controllers/entities/contacts_controller_spec.rb +7 -7
  280. data/spec/controllers/entities/leads_controller_spec.rb +14 -14
  281. data/spec/controllers/entities/opportunities_controller_spec.rb +8 -8
  282. data/spec/controllers/home_controller_spec.rb +6 -6
  283. data/spec/controllers/tasks_controller_spec.rb +7 -7
  284. data/spec/controllers/users_controller_spec.rb +22 -50
  285. data/spec/features/support/selector_helpers.rb +1 -6
  286. data/spec/features/tasks_spec.rb +2 -2
  287. data/spec/helpers/application_helper_spec.rb +15 -15
  288. data/spec/lib/fields_spec.rb +29 -29
  289. data/spec/lib/mail_processor/base_spec.rb +7 -7
  290. data/spec/lib/mail_processor/dropbox_spec.rb +3 -3
  291. data/spec/lib/view_factory_spec.rb +14 -14
  292. data/spec/models/entities/opportunity_spec.rb +1 -1
  293. data/spec/models/fields/custom_field_date_pair_spec.rb +14 -14
  294. data/spec/models/fields/custom_field_pair_spec.rb +13 -13
  295. data/spec/models/fields/custom_field_spec.rb +5 -5
  296. data/spec/models/fields/field_spec.rb +2 -2
  297. data/spec/models/observers/entity_observer_spec.rb +2 -2
  298. data/spec/models/users/user_spec.rb +7 -7
  299. data/spec/routing/comments_routing_spec.rb +0 -9
  300. data/spec/shared/controllers.rb +75 -77
  301. data/spec/shared/models.rb +1 -1
  302. data/spec/spec_helper.rb +1 -2
  303. data/spec/support/auth_macros.rb +3 -3
  304. data/spec/support/mail_processor_mocks.rb +13 -13
  305. data/spec/views/accounts/_edit.haml_spec.rb +1 -1
  306. data/spec/views/accounts/{create.rjs_spec.rb → create.js.haml_spec.rb} +9 -14
  307. data/spec/views/accounts/{destroy.rjs_spec.rb → destroy.js.haml_spec.rb} +6 -8
  308. data/spec/views/accounts/{edit.rjs_spec.rb → edit.js.haml_spec.rb} +10 -18
  309. data/spec/views/accounts/{index.rjs_spec.rb → index.js.haml_spec.rb} +7 -11
  310. data/spec/views/accounts/{new.rjs_spec.rb → new.js.haml_spec.rb} +6 -8
  311. data/spec/views/accounts/show.haml_spec.rb +1 -1
  312. data/spec/views/accounts/{update.rjs_spec.rb → update.js.haml_spec.rb} +16 -25
  313. data/spec/views/admin/field_groups/create.js.haml_spec.rb +31 -0
  314. data/spec/views/admin/field_groups/destroy.js.haml_spec.rb +31 -0
  315. data/spec/views/admin/field_groups/edit.js.haml_spec.rb +24 -0
  316. data/spec/views/admin/field_groups/new.js.haml_spec.rb +25 -0
  317. data/spec/views/admin/field_groups/update.js.haml_spec.rb +30 -0
  318. data/spec/views/admin/users/_create.haml_spec.rb +1 -1
  319. data/spec/views/admin/users/{create.rjs_spec.rb → create.js.haml_spec.rb} +6 -9
  320. data/spec/views/admin/users/{destroy.rjs_spec.rb → destroy.js.haml_spec.rb} +6 -7
  321. data/spec/views/admin/users/{edit.rjs_spec.rb → edit.js.haml_spec.rb} +6 -12
  322. data/spec/views/admin/users/index.haml_spec.rb +0 -0
  323. data/spec/views/admin/users/{index.rjs_spec.rb → index.js.haml_spec.rb} +3 -5
  324. data/spec/views/admin/users/{new.rjs_spec.rb → new.js.haml_spec.rb} +4 -6
  325. data/spec/views/admin/users/{reactivate.rjs_spec.rb → reactivate.js.haml_spec.rb} +2 -4
  326. data/spec/views/admin/users/show.haml_spec.rb +0 -0
  327. data/spec/views/admin/users/{suspend.rjs_spec.rb → suspend.js.haml_spec.rb} +2 -4
  328. data/spec/views/admin/users/{update.rjs_spec.rb → update.js.haml_spec.rb} +6 -10
  329. data/spec/views/campaigns/{create.rjs_spec.rb → create.js.haml_spec.rb} +9 -14
  330. data/spec/views/campaigns/{destroy.rjs_spec.rb → destroy.js.haml_spec.rb} +6 -7
  331. data/spec/views/campaigns/{edit.rjs_spec.rb → edit.js.haml_spec.rb} +11 -19
  332. data/spec/views/campaigns/{index.rjs_spec.rb → index.js.haml_spec.rb} +5 -9
  333. data/spec/views/campaigns/{new.rjs_spec.rb → new.js.haml_spec.rb} +6 -8
  334. data/spec/views/campaigns/{update.rjs_spec.rb → update.js.haml_spec.rb} +14 -21
  335. data/spec/views/comments/{new.rjs_spec.rb → edit.js.haml_spec.rb} +12 -9
  336. data/spec/views/contacts/{create.rjs_spec.rb → create.js.haml_spec.rb} +9 -16
  337. data/spec/views/contacts/{destroy.rjs_spec.rb → destroy.js.haml_spec.rb} +6 -8
  338. data/spec/views/contacts/{edit.rjs_spec.rb → edit.js.haml_spec.rb} +12 -19
  339. data/spec/views/contacts/index.haml_spec.rb +1 -1
  340. data/spec/views/contacts/{index.rjs_spec.rb → index.js.html_spec.rb} +7 -11
  341. data/spec/views/contacts/{new.rjs_spec.rb → new.js.haml_spec.rb} +6 -7
  342. data/spec/views/contacts/{update.rjs_spec.rb → update.js.haml_spec.rb} +20 -35
  343. data/spec/views/home/{index.rjs_spec.rb → index.js.haml_spec.rb} +2 -4
  344. data/spec/views/home/{options.rjs_spec.rb → options.js.haml_spec.rb} +7 -12
  345. data/spec/views/leads/{convert.rjs_spec.rb → convert.js.haml_spec.rb} +12 -20
  346. data/spec/views/leads/{create.rjs_spec.rb → create.js.haml_spec.rb} +13 -19
  347. data/spec/views/leads/{destroy.rjs_spec.rb → destroy.js.haml_spec.rb} +9 -12
  348. data/spec/views/leads/{edit.rjs_spec.rb → edit.js.haml_spec.rb} +12 -20
  349. data/spec/views/leads/{index.rjs_spec.rb → index.js.haml_spec.rb} +5 -9
  350. data/spec/views/leads/{new.rjs_spec.rb → new.js.haml_spec.rb} +6 -8
  351. data/spec/views/leads/{promote.rjs_spec.rb → promote.js.haml_spec.rb} +28 -43
  352. data/spec/views/leads/{reject.rjs_spec.rb → reject.js.haml_spec.rb} +10 -17
  353. data/spec/views/leads/{update.rjs_spec.rb → update.js.haml_spec.rb} +25 -38
  354. data/spec/views/opportunities/{create.rjs_spec.rb → create.js.haml_spec.rb} +16 -26
  355. data/spec/views/opportunities/{destroy.rjs_spec.rb → destroy.js.haml_spec.rb} +13 -16
  356. data/spec/views/opportunities/{edit.rjs_spec.rb → edit.js.haml_spec.rb} +10 -18
  357. data/spec/views/opportunities/{index.rjs_spec.rb → index.js.haml_spec.rb} +7 -12
  358. data/spec/views/opportunities/{new.rjs_spec.rb → new.js.haml_spec.rb} +6 -8
  359. data/spec/views/opportunities/{update.rjs_spec.rb → update.js.haml_spec.rb} +29 -46
  360. data/spec/views/tasks/_edit.haml_spec.rb +1 -1
  361. data/spec/views/tasks/{complete.rjs_spec.rb → complete.js.haml_spec.rb} +9 -14
  362. data/spec/views/tasks/{create.rjs_spec.rb → create.js.haml_spec.rb} +25 -33
  363. data/spec/views/tasks/{destroy.rjs_spec.rb → destroy.js.haml_spec.rb} +9 -11
  364. data/spec/views/tasks/{edit.rjs_spec.rb → edit.js.haml_spec.rb} +9 -14
  365. data/spec/views/tasks/index.haml_spec.rb +1 -2
  366. data/spec/views/tasks/{new.rjs_spec.rb → new.js.haml_spec.rb} +6 -8
  367. data/spec/views/tasks/{update.rjs_spec.rb → update.js.haml_spec.rb} +28 -41
  368. data/spec/views/users/{avatar.rjs_spec.rb → avatar.js.haml_spec.rb} +7 -9
  369. data/spec/views/users/{change_password.rjs_spec.rb → change_password.js.haml_spec.rb} +10 -12
  370. data/spec/views/users/{edit.rjs_spec.rb → edit.js.haml_spec.rb} +8 -10
  371. data/spec/views/users/{password.rjs_spec.rb → password.js.haml_spec.rb} +9 -11
  372. data/spec/views/users/{update.rjs_spec.rb → update.js.haml_spec.rb} +7 -15
  373. data/spec/views/users/{upload_avatar.rjs_spec.rb → upload_avatar.js.haml_spec.rb} +8 -10
  374. data/vendor/assets/javascripts/ajax-chosen-jquery.js +2 -0
  375. data/vendor/assets/javascripts/ajax-chosen-prototype.js +2 -0
  376. data/vendor/assets/javascripts/ajax-chosen.jquery.coffee +81 -0
  377. data/vendor/assets/javascripts/ajax-chosen.proto.coffee +98 -0
  378. data/vendor/assets/javascripts/jquery_timeago/index.js +17 -0
  379. data/vendor/assets/javascripts/jquery_timeago/jquery.timeago.cz.js +18 -0
  380. data/vendor/assets/javascripts/jquery_timeago/jquery.timeago.de.js +18 -0
  381. data/vendor/assets/javascripts/jquery_timeago/jquery.timeago.en-GB.js +20 -0
  382. data/vendor/assets/javascripts/jquery_timeago/jquery.timeago.en-US.js +20 -0
  383. data/vendor/assets/javascripts/jquery_timeago/jquery.timeago.es.js +18 -0
  384. data/vendor/assets/javascripts/jquery_timeago/jquery.timeago.fr-CA.js +17 -0
  385. data/vendor/assets/javascripts/jquery_timeago/jquery.timeago.fr.js +17 -0
  386. data/vendor/assets/javascripts/jquery_timeago/jquery.timeago.it.js +16 -0
  387. data/vendor/assets/javascripts/jquery_timeago/jquery.timeago.ja.js +19 -0
  388. data/vendor/assets/javascripts/jquery_timeago/jquery.timeago.js +194 -0
  389. data/vendor/assets/javascripts/jquery_timeago/jquery.timeago.pl.js +31 -0
  390. data/vendor/assets/javascripts/jquery_timeago/jquery.timeago.pt-BR.js +18 -0
  391. data/vendor/assets/javascripts/jquery_timeago/jquery.timeago.ru.js +34 -0
  392. data/vendor/assets/javascripts/jquery_timeago/jquery.timeago.sv-SE.js +18 -0
  393. data/vendor/assets/javascripts/jquery_timeago/jquery.timeago.th.js +20 -0
  394. data/vendor/assets/javascripts/jquery_timeago/jquery.timeago.zh-CN.js +20 -0
  395. data/zeus.json +2 -1
  396. metadata +240 -245
  397. data/app/assets/images/delete.png +0 -0
  398. data/app/assets/images/iconset_attribution.png +0 -0
  399. data/app/views/accounts/create.js.rjs +0 -14
  400. data/app/views/accounts/destroy.js.rjs +0 -3
  401. data/app/views/accounts/edit.js.rjs +0 -33
  402. data/app/views/accounts/index.js.rjs +0 -8
  403. data/app/views/accounts/new.js.rjs +0 -9
  404. data/app/views/accounts/show.js.erb +0 -2
  405. data/app/views/accounts/update.js.rjs +0 -17
  406. data/app/views/admin/field_groups/confirm.js.rjs +0 -6
  407. data/app/views/admin/field_groups/create.js.rjs +0 -20
  408. data/app/views/admin/field_groups/destroy.js.rjs +0 -11
  409. data/app/views/admin/field_groups/edit.js.rjs +0 -14
  410. data/app/views/admin/field_groups/new.js.rjs +0 -9
  411. data/app/views/admin/field_groups/update.js.rjs +0 -9
  412. data/app/views/admin/fields/create.js.erb +0 -19
  413. data/app/views/admin/fields/destroy.js.erb +0 -9
  414. data/app/views/admin/fields/edit.js.erb +0 -1
  415. data/app/views/admin/fields/update.js.erb +0 -13
  416. data/app/views/admin/groups/create.js.rjs +0 -11
  417. data/app/views/admin/groups/destroy.js.rjs +0 -11
  418. data/app/views/admin/groups/edit.js.rjs +0 -21
  419. data/app/views/admin/groups/index.js.rjs +0 -2
  420. data/app/views/admin/groups/new.js.rjs +0 -9
  421. data/app/views/admin/groups/update.js.rjs +0 -10
  422. data/app/views/admin/tags/confirm.js.rjs +0 -6
  423. data/app/views/admin/tags/create.js.rjs +0 -12
  424. data/app/views/admin/tags/destroy.js.rjs +0 -11
  425. data/app/views/admin/tags/edit.js.rjs +0 -21
  426. data/app/views/admin/tags/new.js.rjs +0 -8
  427. data/app/views/admin/tags/update.js.rjs +0 -10
  428. data/app/views/admin/users/confirm.js.rjs +0 -6
  429. data/app/views/admin/users/create.js.rjs +0 -11
  430. data/app/views/admin/users/destroy.js.rjs +0 -11
  431. data/app/views/admin/users/edit.js.rjs +0 -21
  432. data/app/views/admin/users/index.js.rjs +0 -3
  433. data/app/views/admin/users/new.js.rjs +0 -8
  434. data/app/views/admin/users/reactivate.js.rjs +0 -3
  435. data/app/views/admin/users/suspend.js.rjs +0 -3
  436. data/app/views/admin/users/update.js.rjs +0 -10
  437. data/app/views/campaigns/create.js.rjs +0 -18
  438. data/app/views/campaigns/destroy.js.rjs +0 -3
  439. data/app/views/campaigns/edit.js.rjs +0 -34
  440. data/app/views/campaigns/index.js.rjs +0 -8
  441. data/app/views/campaigns/new.js.rjs +0 -9
  442. data/app/views/campaigns/show.js.erb +0 -2
  443. data/app/views/campaigns/update.js.rjs +0 -21
  444. data/app/views/comments/create.js.rjs +0 -11
  445. data/app/views/comments/destroy.js.rjs +0 -6
  446. data/app/views/comments/edit.js.rjs +0 -11
  447. data/app/views/comments/new.js.rjs +0 -14
  448. data/app/views/comments/update.js.rjs +0 -11
  449. data/app/views/contacts/create.js.rjs +0 -19
  450. data/app/views/contacts/destroy.js.rjs +0 -7
  451. data/app/views/contacts/edit.js.rjs +0 -36
  452. data/app/views/contacts/index.js.rjs +0 -8
  453. data/app/views/contacts/new.js.rjs +0 -11
  454. data/app/views/contacts/show.js.erb +0 -2
  455. data/app/views/contacts/update.js.rjs +0 -22
  456. data/app/views/emails/destroy.js.rjs +0 -6
  457. data/app/views/entities/attach.js.rjs +0 -24
  458. data/app/views/entities/contacts.js.rjs +0 -3
  459. data/app/views/entities/discard.js.rjs +0 -7
  460. data/app/views/entities/leads.js.rjs +0 -3
  461. data/app/views/entities/opportunities.js.rjs +0 -3
  462. data/app/views/entities/subscription_update.js.rjs +0 -4
  463. data/app/views/entities/versions.js.erb +0 -3
  464. data/app/views/fields/group.js.rjs +0 -7
  465. data/app/views/home/index.js.rjs +0 -7
  466. data/app/views/home/options.js.rjs +0 -8
  467. data/app/views/leads/convert.js.rjs +0 -37
  468. data/app/views/leads/create.js.rjs +0 -19
  469. data/app/views/leads/destroy.js.rjs +0 -7
  470. data/app/views/leads/edit.js.rjs +0 -36
  471. data/app/views/leads/index.js.rjs +0 -8
  472. data/app/views/leads/new.js.rjs +0 -9
  473. data/app/views/leads/promote.js.rjs +0 -27
  474. data/app/views/leads/reject.js.rjs +0 -10
  475. data/app/views/leads/show.js.erb +0 -2
  476. data/app/views/leads/update.js.rjs +0 -27
  477. data/app/views/lists/create.js.rjs +0 -9
  478. data/app/views/lists/destroy.js.rjs +0 -1
  479. data/app/views/opportunities/contacts.js.rjs +0 -3
  480. data/app/views/opportunities/create.js.rjs +0 -29
  481. data/app/views/opportunities/destroy.js.rjs +0 -11
  482. data/app/views/opportunities/edit.js.rjs +0 -36
  483. data/app/views/opportunities/index.js.rjs +0 -8
  484. data/app/views/opportunities/new.js.rjs +0 -12
  485. data/app/views/opportunities/show.js.erb +0 -2
  486. data/app/views/opportunities/update.js.rjs +0 -26
  487. data/app/views/tasks/complete.js.rjs +0 -17
  488. data/app/views/tasks/create.js.rjs +0 -41
  489. data/app/views/tasks/destroy.js.rjs +0 -7
  490. data/app/views/tasks/discard.rjs +0 -1
  491. data/app/views/tasks/edit.js.rjs +0 -23
  492. data/app/views/tasks/filter.js.rjs +0 -1
  493. data/app/views/tasks/new.js.rjs +0 -9
  494. data/app/views/tasks/update.js.rjs +0 -21
  495. data/app/views/users/avatar.js.rjs +0 -10
  496. data/app/views/users/change_password.js.rjs +0 -15
  497. data/app/views/users/edit.js.rjs +0 -10
  498. data/app/views/users/password.js.rjs +0 -11
  499. data/app/views/users/update.js.rjs +0 -10
  500. data/app/views/users/upload_avatar.js.rjs +0 -8
  501. data/lib/fat_free_crm/secret_token_generator.rb +0 -65
  502. data/spec/lib/secret_token_generator_spec.rb +0 -79
  503. data/spec/models/users/abilities/user_ability_spec.rb +0 -58
  504. data/spec/support/rjs_support.rb +0 -14
  505. data/vendor/assets/images/brief.png +0 -0
  506. data/vendor/assets/images/full.png +0 -0
  507. data/vendor/assets/images/long.png +0 -0
  508. data/vendor/assets/images/tab_icons/accounts.png +0 -0
  509. data/vendor/assets/images/tab_icons/accounts_active.png +0 -0
  510. data/vendor/assets/images/tab_icons/campaigns.png +0 -0
  511. data/vendor/assets/images/tab_icons/campaigns_active.png +0 -0
  512. data/vendor/assets/images/tab_icons/contacts.png +0 -0
  513. data/vendor/assets/images/tab_icons/contacts_active.png +0 -0
  514. data/vendor/assets/images/tab_icons/dashboard.png +0 -0
  515. data/vendor/assets/images/tab_icons/dashboard_active.png +0 -0
  516. data/vendor/assets/images/tab_icons/leads.png +0 -0
  517. data/vendor/assets/images/tab_icons/leads_active.png +0 -0
  518. data/vendor/assets/images/tab_icons/opportunities.png +0 -0
  519. data/vendor/assets/images/tab_icons/opportunities_active.png +0 -0
  520. data/vendor/assets/images/tab_icons/tasks.png +0 -0
  521. data/vendor/assets/images/tab_icons/tasks_active.png +0 -0
@@ -1,214 +1,241 @@
1
- # Chinese (China) translations for Ruby on Rails
2
- # by tsechingho (http://github.com/tsechingho)
3
-
1
+ ---
4
2
  zh-CN:
5
3
  date:
6
4
  formats:
7
- default: "%Y-%m-%d"
8
- short: "%b%d日"
9
- long: "%Y年%b%d日"
10
- day_names: [星期日, 星期一, 星期二, 星期三, 星期四, 星期五, 星期六]
11
- abbr_day_names: [日, 一, 二, 三, 四, 五, 六]
12
- month_names: [~, 一月, 二月, 三月, 四月, 五月, 六月, 七月, 八月, 九月, 十月, 十一月, 十二月]
13
- abbr_month_names: [~, 1月, 2月, 3月, 4月, 5月, 6月, 7月, 8月, 9月, 10月, 11月, 12月]
5
+ default: ! '%Y-%m-%d'
6
+ short: ! '%b%d日'
7
+ long: ! '%Y年%b%d日'
8
+ day_names:
9
+ - 星期日
10
+ - 星期一
11
+ - 星期二
12
+ - 星期三
13
+ - 星期四
14
+ - 星期五
15
+ - 星期六
16
+ abbr_day_names:
17
+ - 日
18
+ - 一
19
+ - 二
20
+ - 三
21
+ - 四
22
+ - 五
23
+ - 六
24
+ month_names:
25
+ -
26
+ - 一月
27
+ - 二月
28
+ - 三月
29
+ - 四月
30
+ - 五月
31
+ - 六月
32
+ - 七月
33
+ - 八月
34
+ - 九月
35
+ - 十月
36
+ - 十一月
37
+ - 十二月
38
+ abbr_month_names:
39
+ -
40
+ - 1月
41
+ - 2月
42
+ - 3月
43
+ - 4月
44
+ - 5月
45
+ - 6月
46
+ - 7月
47
+ - 8月
48
+ - 9月
49
+ - 10月
50
+ - 11月
51
+ - 12月
14
52
  order:
15
- - :year
16
- - :month
17
- - :day
18
-
53
+ - :year
54
+ - :month
55
+ - :day
19
56
  time:
20
57
  formats:
21
- default: "%Y年%b%d日 %A %H:%M:%S %Z"
22
- short: "%b%d日 %H:%M"
23
- long: "%Y年%b%d日 %H:%M"
24
- am: "上午"
25
- pm: "下午"
26
-
58
+ default: ! '%Y年%b%d日 %A %H:%M:%S %Z'
59
+ short: ! '%b%d日 %H:%M'
60
+ long: ! '%Y年%b%d日 %H:%M'
61
+ am: 上午
62
+ pm: 下午
27
63
  datetime:
28
64
  distance_in_words:
29
- half_a_minute: "半分钟"
65
+ half_a_minute: 半分钟
30
66
  less_than_x_seconds:
31
- one: "不到一秒"
32
- other: "不到 %{count} 秒"
67
+ one: 不到一秒
68
+ other: 不到 %{count} 秒
33
69
  x_seconds:
34
- one: "一秒"
35
- other: "%{count} 秒"
70
+ one: 一秒
71
+ other: ! '%{count} 秒'
36
72
  less_than_x_minutes:
37
- one: "不到一分钟"
38
- other: "不到 %{count} 分钟"
73
+ one: 不到一分钟
74
+ other: 不到 %{count} 分钟
39
75
  x_minutes:
40
- one: "一分钟"
41
- other: "%{count} 分钟"
76
+ one: 一分钟
77
+ other: ! '%{count} 分钟'
42
78
  about_x_hours:
43
- one: "大约一小时"
44
- other: "大约 %{count} 小时"
79
+ one: 大约一小时
80
+ other: 大约 %{count} 小时
45
81
  x_days:
46
- one: "一天"
47
- other: "%{count} 天"
82
+ one: 一天
83
+ other: ! '%{count} 天'
48
84
  about_x_months:
49
- one: "大约一个月"
50
- other: "大约 %{count} 个月"
85
+ one: 大约一个月
86
+ other: 大约 %{count} 个月
51
87
  x_months:
52
- one: "一个月"
53
- other: "%{count} 个月"
88
+ one: 一个月
89
+ other: ! '%{count} 个月'
54
90
  about_x_years:
55
- one: "大约一年"
56
- other: "大约 %{count} 年"
91
+ one: 大约一年
92
+ other: 大约 %{count} 年
57
93
  over_x_years:
58
- one: "一年多"
59
- other: "%{count} 年多"
94
+ one: 一年多
95
+ other: ! '%{count} 年多'
60
96
  almost_x_years:
61
- one: "接近一年"
62
- other: "接近 %{count} 年"
97
+ one: 接近一年
98
+ other: 接近 %{count} 年
63
99
  prompts:
64
- year: ""
65
- month: ""
66
- day: ""
67
- hour: ""
68
- minute: ""
69
- second: ""
70
-
100
+ year:
101
+ month:
102
+ day:
103
+ hour:
104
+ minute: 分
105
+ second: 秒
71
106
  number:
72
107
  format:
73
- separator: "."
74
- delimiter: ","
108
+ separator: .
109
+ delimiter: ! ','
75
110
  precision: 3
76
111
  significant: false
77
112
  strip_insignificant_zeros: false
78
113
  currency:
79
114
  format:
80
- format: "%u %n"
81
- unit: "CN¥"
82
- separator: "."
83
- delimiter: ","
115
+ format: ! '%u %n'
116
+ unit: CN¥
117
+ separator: .
118
+ delimiter: ! ','
84
119
  precision: 2
85
120
  significant: false
86
121
  strip_insignificant_zeros: false
87
122
  percentage:
88
123
  format:
89
- delimiter: ""
124
+ delimiter: ''
90
125
  precision:
91
126
  format:
92
- delimiter: ""
127
+ delimiter: ''
93
128
  human:
94
129
  format:
95
- delimiter: ""
130
+ delimiter: ''
96
131
  precision: 1
97
132
  significant: false
98
133
  strip_insignificant_zeros: false
99
134
  storage_units:
100
- format: "%n %u"
135
+ format: ! '%n %u'
101
136
  units:
102
137
  byte:
103
- one: "Byte"
104
- other: "Bytes"
105
- kb: "KB"
106
- mb: "MB"
107
- gb: "GB"
108
- tb: "TB"
138
+ one: Byte
139
+ other: Bytes
140
+ kb: KB
141
+ mb: MB
142
+ gb: GB
143
+ tb: TB
109
144
  decimal_units:
110
- format: "%n %u"
145
+ format: ! '%n %u'
111
146
  units:
112
- # 10^-21 zepto, 10^-24 yocto
113
- atto: "渺" # 10^-18
114
- femto: "飞" # 10^-15 毫微微
115
- pico: "漠" # 10^-12 微微
116
- nano: "奈" # 10^-9 毫微
117
- micro: "微" # 10^-6
118
- mili: "毫" # 10^-3 milli
119
- centi: "厘" # 10^-2
120
- deci: "分" # 10^-1
121
- unit: ""
147
+ atto:
148
+ femto:
149
+ pico:
150
+ nano:
151
+ micro:
152
+ mili:
153
+ centi:
154
+ deci:
155
+ unit: ''
122
156
  ten:
123
- one: ""
124
- other: "" # 10^1
125
- hundred: "" # 10^2
126
- thousand: "" # 10^3 kilo
127
- million: "百万" # 10^6 mega
128
- billion: "十亿" # 10^9 giga
129
- trillion: "" # 10^12 tera
130
- quadrillion: "千兆" # 10^15 peta
131
- # 10^18 exa, 10^21 zetta, 10^24 yotta
132
-
157
+ one: 十
158
+ other: 十
159
+ hundred: 百
160
+ thousand: 千
161
+ million: 百万
162
+ billion: 十亿
163
+ trillion: 兆
164
+ quadrillion: 千兆
133
165
  support:
134
166
  array:
135
- words_connector: ", "
136
- two_words_connector: ""
137
- last_word_connector: ", 和 "
167
+ words_connector: ! ', '
168
+ two_words_connector: ! ' '
169
+ last_word_connector: ! ', 和 '
138
170
  select:
139
- prompt: "请选择"
140
-
171
+ prompt: 请选择
141
172
  activerecord:
142
173
  errors:
143
- template: # ~ 2.3.5 backward compatible
174
+ template:
144
175
  header:
145
- one: "有 1 个错误发生导致「%{model}」无法被保存。"
146
- other: "有 %{count} 个错误发生导致「%{model}」无法被保存。"
147
- body: "如下字段出现错误:"
176
+ one: 有 1 个错误发生导致「%{model}」无法被保存。
177
+ other: 有 %{count} 个错误发生导致「%{model}」无法被保存。
178
+ body: 如下字段出现错误:
148
179
  full_messages:
149
- format: "%{attribute} %{message}"
180
+ format: ! '%{attribute} %{message}'
150
181
  messages:
151
- inclusion: "不包含于列表中"
152
- exclusion: "是保留关键字"
153
- invalid: "是无效的"
154
- confirmation: "与确认值不匹配"
155
- accepted: "必须是可被接受的"
156
- empty: "不能留空"
157
- blank: "不能为空字符"
158
- too_long: "过长(最长为 %{count} 个字符)"
159
- too_short: "过短(最短为 %{count} 个字符)"
160
- wrong_length: "长度非法(必须为 %{count} 个字符)"
161
- not_a_number: "不是数字"
162
- not_an_integer: "必须是整数"
163
- greater_than: "必须大于 %{count}"
164
- greater_than_or_equal_to: "必须大于或等于 %{count}"
165
- equal_to: "必须等于 %{count}"
166
- less_than: "必须小于 %{count}"
167
- less_than_or_equal_to: "必须小于或等于 %{count}"
168
- odd: "必须为单数"
169
- even: "必须为双数"
170
- taken: "已经被使用"
171
- record_invalid: "校验失败: %{errors}"
172
-
182
+ inclusion: 不包含于列表中
183
+ exclusion: 是保留关键字
184
+ invalid: 是无效的
185
+ confirmation: 与确认值不匹配
186
+ accepted: 必须是可被接受的
187
+ empty: 不能留空
188
+ blank: 不能为空字符
189
+ too_long: 过长(最长为 %{count} 个字符)
190
+ too_short: 过短(最短为 %{count} 个字符)
191
+ wrong_length: 长度非法(必须为 %{count} 个字符)
192
+ not_a_number: 不是数字
193
+ not_an_integer: 必须是整数
194
+ greater_than: 必须大于 %{count}
195
+ greater_than_or_equal_to: 必须大于或等于 %{count}
196
+ equal_to: 必须等于 %{count}
197
+ less_than: 必须小于 %{count}
198
+ less_than_or_equal_to: 必须小于或等于 %{count}
199
+ odd: 必须为单数
200
+ even: 必须为双数
201
+ taken: 已经被使用
202
+ record_invalid: ! '校验失败: %{errors}'
173
203
  activemodel:
174
204
  errors:
175
205
  template:
176
206
  header:
177
- one: "有 1 个错误发生导致「%{model}」无法被保存。"
178
- other: "有 %{count} 个错误发生导致「%{model}」无法被保存。"
179
- body: "如下字段出现错误:"
180
-
207
+ one: 有 1 个错误发生导致「%{model}」无法被保存。
208
+ other: 有 %{count} 个错误发生导致「%{model}」无法被保存。
209
+ body: 如下字段出现错误:
181
210
  errors:
182
- format: "%{attribute} %{message}"
211
+ format: ! '%{attribute} %{message}'
183
212
  messages:
184
- inclusion: "不包含于列表中"
185
- exclusion: "是保留关键字"
186
- invalid: "是无效的"
187
- confirmation: "与确认值不匹配"
188
- accepted: "必须是可被接受的"
189
- empty: "不能留空"
190
- blank: "不能为空字符"
191
- too_long: "过长(最长为 %{count} 个字符)"
192
- too_short: "过短(最短为 %{count} 个字符)"
193
- wrong_length: "长度非法(必须为 %{count} 个字符)"
194
- not_a_number: "不是数字"
195
- not_an_integer: "必须是整数"
196
- greater_than: "必须大于 %{count}"
197
- greater_than_or_equal_to: "必须大于或等于 %{count}"
198
- equal_to: "必须等于 %{count}"
199
- less_than: "必须小于 %{count}"
200
- less_than_or_equal_to: "必须小于或等于 %{count}"
201
- odd: "必须为单数"
202
- even: "必须为双数"
203
-
213
+ inclusion: 不包含于列表中
214
+ exclusion: 是保留关键字
215
+ invalid: 是无效的
216
+ confirmation: 与确认值不匹配
217
+ accepted: 必须是可被接受的
218
+ empty: 不能留空
219
+ blank: 不能为空字符
220
+ too_long: 过长(最长为 %{count} 个字符)
221
+ too_short: 过短(最短为 %{count} 个字符)
222
+ wrong_length: 长度非法(必须为 %{count} 个字符)
223
+ not_a_number: 不是数字
224
+ not_an_integer: 必须是整数
225
+ greater_than: 必须大于 %{count}
226
+ greater_than_or_equal_to: 必须大于或等于 %{count}
227
+ equal_to: 必须等于 %{count}
228
+ less_than: 必须小于 %{count}
229
+ less_than_or_equal_to: 必须小于或等于 %{count}
230
+ odd: 必须为单数
231
+ even: 必须为双数
204
232
  helpers:
205
233
  select:
206
- prompt: "请选择"
234
+ prompt: 请选择
207
235
  submit:
208
- create: "新增%{model}"
209
- update: "更新%{model}"
210
- submit: "储存%{model}"
211
-
236
+ create: 新增%{model}
237
+ update: 更新%{model}
238
+ submit: 储存%{model}
212
239
  will_paginate:
213
240
  previous_label: 前页
214
241
  next_label: 后页
@@ -1,48 +1,39 @@
1
+ ---
1
2
  zh-CN:
2
3
  language: 中文(简体)
3
-
4
- # Generic terms.
5
- #----------------------------------------------------------------------------
6
4
  all: 所有
7
5
  at: 在
8
6
  here: 这里
9
- no_button: ''
7
+ no_button: 否
10
8
  not_implemented: 未实现
11
9
  or: 或
12
- select_none: '-- 无 --'
13
- select_blank: '-- 选择 --'
14
- yes_button: ''
15
-
16
- # Settings.
17
- #----------------------------------------------------------------------------
10
+ select_none: -- 无 --
11
+ select_blank: -- 选择 --
12
+ yes_button: 是
18
13
  tab_dashboard: 摘要
19
14
  tab_tasks: 任务
20
15
  tab_campaigns: 促销
21
- tab_leads: 线索
16
+ tab_leads: 线索
22
17
  tab_accounts: 账号
23
18
  tab_contacts: 联系人
24
19
  tab_opportunities: 商机
25
-
26
20
  admin_tab_users: 用户
27
21
  admin_tab_settings: 设置
28
22
  admin_tab_plugins: 插件
29
23
  admin_tab_groups: 分组
30
24
  admin_tab_fields: 区域
31
25
  admin_tab_tags: 标记
32
-
33
26
  planned: 计划
34
27
  started: 已开始
35
28
  on_hold: 搁置
36
29
  completed: 完成
37
30
  called_off: 取消
38
31
  groups: 分组
39
-
40
32
  new: 新建
41
33
  contacted: 已联系
42
34
  converted: 已转换
43
35
  rejected: 已拒绝
44
-
45
- cold_call: 冷电话
36
+ cold_call: 冷电话
46
37
  conference: 会议
47
38
  online: 在线营销
48
39
  referral: 转来
@@ -50,7 +41,6 @@ zh-CN:
50
41
  web: 网站
51
42
  word_of_mouth: 口头
52
43
  other: 其它
53
-
54
44
  prospecting: 展望
55
45
  analysis: 分析
56
46
  presentation: 演示
@@ -59,16 +49,13 @@ zh-CN:
59
49
  final_review: 最后审查
60
50
  won: 结束/赢
61
51
  lost: 结束/输
62
-
63
52
  call: 电话
64
53
  email: Email
65
54
  follow_up: 跟进
66
55
  lunch: 午餐
67
56
  meeting: 会议
68
57
  money: 钱
69
- presentation: 演示
70
58
  trip: 旅行
71
-
72
59
  overdue: 逾期
73
60
  due_asap: 尽快
74
61
  due_today: 今天
@@ -77,24 +64,17 @@ zh-CN:
77
64
  due_next_week: 下周
78
65
  due_later: 以后
79
66
  due_specific_date: 特定日期...
80
-
81
67
  completed_today: 今天
82
68
  completed_yesterday: 昨天
83
69
  completed_last_week: 上周
84
70
  completed_this_month: 本月
85
71
  completed_last_month: 上月
86
-
87
- # Models/Activity.
88
- #----------------------------------------------------------------------------
89
72
  one_hour: 1小时
90
73
  one_day: 1天
91
74
  two_days: 2天
92
75
  one_week: 1周
93
76
  two_weeks: 2周
94
77
  one_month: 1月
95
-
96
- # Model Validations.
97
- #----------------------------------------------------------------------------
98
78
  activerecord:
99
79
  errors:
100
80
  models:
@@ -107,83 +87,76 @@ zh-CN:
107
87
  account:
108
88
  attributes:
109
89
  name:
110
- missing_account_name: "^请指定用户名"
90
+ missing_account_name: ^请指定用户名
111
91
  access:
112
- share_account: "^请指定可以共享账号的用户"
92
+ share_account: ^请指定可以共享账号的用户
113
93
  campaign:
114
94
  attributes:
115
95
  name:
116
- missing_campaign_name: "^请指定促销活动名称"
96
+ missing_campaign_name: ^请指定促销活动名称
117
97
  ends_on:
118
- dates_not_in_sequence: "^请确认促销活动开始日期在结束日期之前"
98
+ dates_not_in_sequence: ^请确认促销活动开始日期在结束日期之前
119
99
  access:
120
- share_campaign: "^请指定可以共享促销活动的用户"
100
+ share_campaign: ^请指定可以共享促销活动的用户
121
101
  contact:
122
102
  attributes:
123
103
  first_name:
124
- missing_first_name: "^请指定用户的名"
104
+ missing_first_name: ^请指定用户的名
125
105
  last_name:
126
- missing_last_name: "^请指定用户的姓"
106
+ missing_last_name: ^请指定用户的姓
127
107
  access:
128
- share_contact: "^请指定可以共享联系人的用户"
108
+ share_contact: ^请指定可以共享联系人的用户
129
109
  lead:
130
110
  attributes:
131
111
  first_name:
132
- missing_first_name: "^请指定用户的名"
112
+ missing_first_name: ^请指定用户的名
133
113
  last_name:
134
- missing_last_name: "^请指定用户的姓"
114
+ missing_last_name: ^请指定用户的姓
135
115
  access:
136
- share_lead: "^请指定可以共享Lead的用户"
116
+ share_lead: ^请指定可以共享Lead的用户
137
117
  opportunity:
138
118
  attributes:
139
119
  name:
140
- missing_opportunity_name: "^请指定商机名称"
120
+ missing_opportunity_name: ^请指定商机名称
141
121
  access:
142
- share_opportunity: "^请指定可以共享商机的用户"
122
+ share_opportunity: ^请指定可以共享商机的用户
143
123
  task:
144
124
  attributes:
145
125
  name:
146
- missing_task_name: "^请指定任务名称"
126
+ missing_task_name: ^请指定任务名称
147
127
  calendar:
148
- invalid_date: "^请指定合法日期"
128
+ invalid_date: ^请指定合法日期
149
129
  user:
150
130
  attributes:
151
131
  username:
152
- missing_username: "^请指定用户名"
153
- username_taken: "^此用户名已有人使用"
132
+ missing_username: ^请指定用户名
133
+ username_taken: ^此用户名已有人使用
154
134
  email:
155
- missing_email: "^请指定邮件地址"
156
- email_in_use: "^此邮件地址已经有人使用"
157
-
158
- # dynamic_form plugin translations.
159
- #----------------------------------------------------------------------------
135
+ missing_email: ^请指定邮件地址
136
+ email_in_use: ^此邮件地址已经有人使用
160
137
  errors:
161
138
  template:
162
139
  header:
163
- one: "有 1 个错误发生导致「%{model}」无法被保存。"
164
- other: "有 %{count} 个错误发生导致「%{model}」无法被保存。"
165
- body: "如下字段出现错误:"
166
-
140
+ one: 有 1 个错误发生导致「%{model}」无法被保存。
141
+ other: 有 %{count} 个错误发生导致「%{model}」无法被保存。
142
+ body: 如下字段出现错误:
167
143
  msg_account_suspended: 用户账号已暂停
168
144
  password_reset_instruction: 密码重置方法
169
-
170
- # Controllers.
171
- #----------------------------------------------------------------------------
172
145
  msg_account_created: 你的账号已经创建,正在等待管理员审核
173
146
  msg_account_not_approved: 你的账号还未被批准
174
- msg_asset_deleted: "%{value} 已经被删除"
147
+ msg_asset_deleted: ! '%{value} 已经被删除'
175
148
  msg_asset_not_available: 这个 %{value} 已不存在
176
- msg_asset_not_authorized: You are not authorized to view this %{value}. # TODO
149
+ msg_asset_not_authorized: You are not authorized to view this %{value}.
177
150
  msg_assets_not_available: 这个 %{value} 不存在
178
- msg_asset_rejected: "%{value} 已被拒绝"
179
- msg_bad_image_file: "^^不能将此图片上传或改变大小"
180
- msg_cant_create_related: "不能创建 %{asset} 因为 %{related} 已不存在"
181
- msg_cant_delete_user: "^不能删除用户,因为 %{value} 有相关 assets 存在"
182
- msg_cant_do: "不能 %{action} %{asset} 因为它已经不存在"
151
+ msg_asset_rejected: ! '%{value} 已被拒绝'
152
+ msg_bad_image_file: ^^不能将此图片上传或改变大小
153
+ msg_cant_create_related: 不能创建 %{asset} 因为 %{related} 已不存在
154
+ msg_cant_delete_user: ^不能删除用户,因为 %{value} 有相关 assets 存在
155
+ msg_cant_do: 不能 %{action} %{asset} 因为它已经不存在
183
156
  msg_email_not_found: 未找到用户使用此邮件地址
184
157
  msg_enter_new_password: 请输入新密码
185
158
  msg_goodbye: 您已退出,感谢您使用 Fat Free CRM!
186
- msg_invalid_password: "^^请输入正确密码"
159
+ msg_invalid_password: ^^请输入正确密码
187
160
  msg_invalig_login: 用户名或密码错
188
161
  msg_last_login: 您上次登录是在 %{value}.
189
162
  msg_login_needed: 必须登录后才可使用本页
@@ -195,10 +168,7 @@ zh-CN:
195
168
  msg_require_admin: 必须是管理员才能使用本页
196
169
  msg_successful_signup: 成功申请,欢迎您使用 Fat Free CRM!
197
170
  msg_welcome: 欢迎使用 Fat Free CRM!
198
-
199
- # Options.
200
- #----------------------------------------------------------------------------
201
- "option_amount*probability": weighted amount
171
+ option_amount*probability: weighted amount
202
172
  activity_options: 显示 %{models} 行业由 %{user} 在过去 %{period}.
203
173
  all_users: 所有用户
204
174
  option_after: 之后
@@ -223,12 +193,9 @@ zh-CN:
223
193
  option_target_leads: 目标线索
224
194
  option_target_revenue: 目标收入
225
195
  option_updated_at: 更新日期
226
- show_per_page: 显示 %{number} %{models} 每页使用 %{fmt} 格式
196
+ show_per_page: 显示 %{number} %{models} 每页使用 %{fmt} 格式
227
197
  sort_by: 用 %{field} 排序 %{models}
228
- sort_by_displaying: 用 %{field} 排序 %{models},显示名 %{position} 姓
229
-
230
- # Views -> Profile.
231
- #----------------------------------------------------------------------------
198
+ sort_by_displaying: 用 %{field} 排序 %{models},显示名 %{position} 姓
232
199
  aim: AOL IM
233
200
  already_signed_up: 已申请?
234
201
  alt_email: 另一个 email
@@ -238,7 +205,6 @@ zh-CN:
238
205
  contact_info: 联系人信息
239
206
  current_password: 旧密码
240
207
  edit_profile: 编辑个人设置
241
- # email: Email # <-- Already defined as the task type if Settings.
242
208
  first_name: 名
243
209
  google: Google IM
244
210
  gravatar_help: 不熟悉 Gravatars? 了解 Gravatars
@@ -264,18 +230,12 @@ zh-CN:
264
230
  user: 用户
265
231
  username: 用户名
266
232
  yahoo: Yahoo IM
267
-
268
- # Views -> Authenticate.
269
- #----------------------------------------------------------------------------
270
233
  forgot_password: 忘记密码
271
234
  login: 登录
272
235
  no_account: 没有账号?
273
236
  remember_me: 记住我
274
237
  sign_up_now: 现在申请!
275
-
276
- # Views -> Accounts.
277
- #----------------------------------------------------------------------------
278
- account: 账号
238
+ account: 账号
279
239
  account_small: 短账号
280
240
  accounts: 账号
281
241
  accounts_options: 账号选项
@@ -286,9 +246,9 @@ zh-CN:
286
246
  date_created: 创建日期
287
247
  date_updated: 更新日期
288
248
  fax: 传真
289
- intro: 可稍后添加%{value}
249
+ intro: 可稍后添加%{value}
290
250
  mobile_small: 手机
291
- open_in_window: 在一个新窗口打开%{value}
251
+ open_in_window: 在一个新窗口打开%{value}
292
252
  mail_to: 发邮件给%{value}
293
253
  phone_small: 电话
294
254
  phone_toll_free: 免费电话
@@ -302,10 +262,7 @@ zh-CN:
302
262
  account_summary: 账号摘要
303
263
  pipeline: 渠道
304
264
  select_an_account: 选择账号
305
-
306
- # Views -> Campaigns.
307
- #----------------------------------------------------------------------------
308
- actual: 实际
265
+ actual: 实际
309
266
  actual_performance: 实际效益
310
267
  budget: 预算
311
268
  budget_label: 预算(¥)
@@ -319,7 +276,7 @@ zh-CN:
319
276
  campaigns_small: 促销
320
277
  conversion: 转换
321
278
  conversion_label: 转换比率(%)
322
- conversion_number: "%{value} 转换"
279
+ conversion_number: ! '%{value} 转换'
323
280
  create_campaign: 创建促销
324
281
  end_date: 结束日期
325
282
  finished_on: 完成于 %{value}
@@ -331,7 +288,7 @@ zh-CN:
331
288
  objectives_small: 战役目标
332
289
  revenue: 收入
333
290
  revenue_label: 收入(¥)
334
- revenue_number: "收入%{value}"
291
+ revenue_number: 收入%{value}
335
292
  save_campaign: 保存促销
336
293
  start_date: 开始日期
337
294
  started_ago: 开始于 %{value} 之前
@@ -341,9 +298,6 @@ zh-CN:
341
298
  total_campaigns: 促销总数
342
299
  was_supposed_to_finish: 预计完成于 %{value}
343
300
  was_supposed_to_start: 预计开始于 %{time_ago} 之前,在 %{start_date}
344
-
345
- # Views -> Contacts.
346
- #----------------------------------------------------------------------------
347
301
  alt_email_small: 其它
348
302
  blog: Website/Blog
349
303
  contact: 联系人
@@ -353,14 +307,14 @@ zh-CN:
353
307
  contacts_small: 联系人
354
308
  create_contact: 创建联系人
355
309
  department: 部门
356
- department_small: '%{value} 部门'
310
+ department_small: ! '%{value} 部门'
357
311
  do_not_call: 不要打电话
358
312
  extra_info: 更多信息
359
313
  extra_info_small: 更多信息
360
314
  facebook: Facebook
361
315
  linked_in: LinkedIn
362
316
  myself: 自己
363
- permissions_intro_private: 默认只有你对 %{value} 有权限。以后可修改。
317
+ permissions_intro_private: 默认只有你对 %{value} 有权限。以后可修改。
364
318
  permissions_intro_public: 默认所有用户都对 %{value} 有权限。以后可修改。
365
319
  permissions_intro_shared: 默认只有选定用户对 %{value} 有权限。以后可修改。
366
320
  referred_by: 引用
@@ -369,7 +323,7 @@ zh-CN:
369
323
  twitter: Twitter
370
324
  web_presence: web
371
325
  web_presence_small: web
372
- works_at: "%{job_title} 在 %{company}"
326
+ works_at: ! '%{job_title} 在 %{company}'
373
327
  affiliate: 下属
374
328
  competitor: 对手
375
329
  customer: 顾客
@@ -380,9 +334,6 @@ zh-CN:
380
334
  select_contact: 选择账号
381
335
  select_a_country: 选择国家
382
336
  comment_intro: 备注或简介
383
-
384
- # Views -> Leads.
385
- #----------------------------------------------------------------------------
386
337
  convert: 转换
387
338
  convert_lead: 转换线索
388
339
  convert_lead_permissions_intro: 联系人权限将会从被转换的线索中复制。以后可修改。
@@ -408,9 +359,6 @@ zh-CN:
408
359
  source: 源
409
360
  status: 状态
410
361
  total_leads: 线索总计
411
-
412
- # Views -> Opportunities.
413
- #----------------------------------------------------------------------------
414
362
  amount: 金额
415
363
  close_date: 结束日期
416
364
  closed_ago_on: 结束于 %{time_ago} 之前,在 %{date}
@@ -432,7 +380,7 @@ zh-CN:
432
380
  opportunity: 商机
433
381
  opportunity_small: 商机
434
382
  opportunity_summary: 商机摘要
435
- opportunity_summary_text: "%{amount} 有 %{discount} 折扣和 %{probability} 可能性"
383
+ opportunity_summary_text: ! '%{amount} 有 %{discount} 折扣和 %{probability} 可能性'
436
384
  past_due: 超过预计, 预计结束于 %{value} 之前
437
385
  probability: 可能性
438
386
  probability_number: 有 %{value} 可能性
@@ -442,9 +390,6 @@ zh-CN:
442
390
  weighted_amount: 权重数量
443
391
  select_opportunity: 选择商机
444
392
  Discard: 放弃
445
-
446
- # Views -> Tasks.
447
- #----------------------------------------------------------------------------
448
393
  assign_to: 分配给
449
394
  assigned_tab: 已分配
450
395
  assigned_tasks: 已分配任务
@@ -457,13 +402,13 @@ zh-CN:
457
402
  due: 期限
458
403
  feel_free: 可任意
459
404
  move_to: 移动到
460
- no_tasks: "你没有任何 %{value} 任务"
405
+ no_tasks: 你没有任何 %{value} 任务
461
406
  no_tasks_pending: 进行中
462
407
  no_tasks_assigned: 已分配
463
408
  no_tasks_completed: 完成
464
409
  pending_tab: 进行中
465
410
  pending_tasks: 进行中任务
466
- related: '相关:'
411
+ related: ! '相关:'
467
412
  save_task: 保存任务
468
413
  task_assigned: 任务已经分配给 %{value}
469
414
  task_assigned_to: 并分配给 %{value}
@@ -490,10 +435,6 @@ zh-CN:
490
435
  my_accounts: 我的账号
491
436
  no_account_records: 暂无账号
492
437
  select_task: 选择任务
493
-
494
-
495
- # Views -> Home.
496
- #----------------------------------------------------------------------------
497
438
  action_commented: 评论于
498
439
  action_completed: 已完成
499
440
  action_created: 已创建
@@ -513,28 +454,25 @@ zh-CN:
513
454
  subject_lead: 线索
514
455
  subject_opportunity: 商机
515
456
  subject_task: 任务
516
-
517
- # Views -> Common.
518
- #----------------------------------------------------------------------------
519
457
  add_note: 添加注释
520
458
  save_note: 保存注释
521
459
  add_note_help: 添加一个新注释...
522
460
  edit_note: 编辑注释
523
461
  added_ago: 添加于 %{value} 之前
524
- added_by: 添加于 %{time_ago} 之前,由 %{user}
462
+ added_by: 添加于 %{time_ago} 之前,由 %{user}
525
463
  back: 返回
526
464
  cancel: 取消
527
465
  close_form: 关闭,由
528
466
  confirm_delete: 确认删除 %{value}?
529
467
  copy_permissions: 复制 %{value} 权限
530
- could_not_find: "未找到 %{value}. 请"
531
- could_not_find_matching: "未找到 %{value} 匹配"
468
+ could_not_find: 未找到 %{value}. 请
469
+ could_not_find_matching: 未找到 %{value} 匹配
532
470
  create_new: 创建新
533
471
  select_existing: 选择已有
534
472
  delete: 删除
535
- discard: Discard # TODO
473
+ discard: Discard
536
474
  edit: 编辑
537
- items_total: '%{count} 总计'
475
+ items_total: ! '%{count} 总计'
538
476
  me: 自己
539
477
  n_a: 无
540
478
  name: 名字
@@ -545,11 +483,11 @@ zh-CN:
545
483
  please_retry: 请再试一次
546
484
  recent_items: 最近项目
547
485
  search_assets: 查找 %{value}
548
- time_ago: "%{value} 以前"
486
+ time_ago: ! '%{value} 以前'
549
487
  background_info: 背景
550
488
  address: 地址
551
- street1: 街道 1 # NEW
552
- street2: 街道 2 # NEW
489
+ street1: 街道 1
490
+ street2: 街道 2
553
491
  city: 城市
554
492
  zipcode: 邮编
555
493
  state: 省
@@ -561,14 +499,8 @@ zh-CN:
561
499
  destroy: 删除
562
500
  expand_all: 展开
563
501
  collapse_all: 收起
564
-
565
- # Views -> Tag.
566
- #----------------------------------------------------------------------------
567
502
  select_or_create_tags: 选择标签
568
503
  tags: 标签
569
-
570
- # Views -> Layout.
571
- #----------------------------------------------------------------------------
572
504
  about: 关于
573
505
  about_dev_group: 开发者讨论组
574
506
  about_features: 特性与bugs
@@ -584,27 +516,14 @@ zh-CN:
584
516
  logout: 退出
585
517
  quick_find: 快速查找
586
518
  welcome: 欢迎
587
-
588
- # Views -> Comments.
589
- #----------------------------------------------------------------------------
590
519
  edit_comment: 编辑评论
591
520
  show: 显示
592
- update: 更新
593
-
594
- # Views -> Passwords.
595
- #----------------------------------------------------------------------------
596
521
  confirm_password_intro: 请输入新密码并确认
597
522
  password_intro: 请输入邮件地址,重置密码邮件将发到您的邮箱
598
523
  reset_password: 重置密码
599
524
  update_password_and_login: 更新密码并登录
600
-
601
- # Views -> Admin
602
- #----------------------------------------------------------------------------
603
525
  back_to_crm: 返回 Fat Free CRM
604
526
  crm_admin_page: Fat Free CRM 管理
605
-
606
- # Views -> Admin -> Users.
607
- #----------------------------------------------------------------------------
608
527
  approve: 批准
609
528
  create_user: 创建用户
610
529
  last_seen: 上次 %{value} 之前见到
@@ -617,7 +536,7 @@ zh-CN:
617
536
  user_awaits_approval: 等待您的批准
618
537
  user_confirm_delete: 只有没有其它相关信息的用户才能被删除
619
538
  user_is_admin: 此用户是管理员
620
- user_never_logged_in: "尚未登录"
539
+ user_never_logged_in: 尚未登录
621
540
  user_signed_up: 已申请
622
541
  user_signed_up_on: 申请于 %{value}
623
542
  user_since: 用户自 %{value}
@@ -625,38 +544,30 @@ zh-CN:
625
544
  user_suspended_on: 暂停于 %{value}
626
545
  users: 用户
627
546
  users_small: 用户
628
-
629
- # Pluralizations.
630
- #----------------------------------------------------------------------------
631
547
  pluralize:
632
548
  comment:
633
- one: '1 comment' # TODO
634
- other: '%{count} comments' # TODO
635
- contact:
636
- one: '1 个联系人'
637
- other: '%{count} 个联系人'
549
+ one: 1 comment
550
+ other: ! '%{count} comments'
551
+ contact:
552
+ one: 1 个联系人
553
+ other: ! '%{count} 个联系人'
638
554
  opportunity:
639
- one: '1 个商机'
640
- other: '%{count} 个商机'
555
+ one: 1 个商机
556
+ other: ! '%{count} 个商机'
641
557
  lead:
642
- one: '1 个线索'
643
- other: '%{count} 个线索'
558
+ one: 1 个线索
559
+ other: ! '%{count} 个线索'
644
560
  day:
645
- one: '1 天'
646
- other: '%{count} 天'
561
+ one: 1 天
562
+ other: ! '%{count} 天'
647
563
  login:
648
- one: '1 个登录'
649
- other: '%{count} 个登录'
650
-
651
- # Custom date/time formats.
652
- #----------------------------------------------------------------------------
564
+ one: 1 个登录
565
+ other: ! '%{count} 个登录'
653
566
  date:
654
567
  formats:
655
- mmddyyyy: "%Y-%m-%d"
656
- mmdd: "%b %e"
657
- mmddyy: "%b %e, %Y"
658
-
568
+ mmddyyyy: ! '%Y-%m-%d'
569
+ mmdd: ! '%b %e'
570
+ mmddyy: ! '%b %e, %Y'
659
571
  time:
660
572
  formats:
661
- mmddhhss: "%b %e at %l:%M%p"
662
-
573
+ mmddhhss: ! '%b %e at %l:%M%p'