enju_leaf 1.1.0.rc12 → 1.1.0.rc13

Sign up to get free protection for your applications and to get access to all the features.
Files changed (367) hide show
  1. checksums.yaml +4 -4
  2. data/app/assets/stylesheets/enju.css +0 -1
  3. data/app/controllers/my_accounts_controller.rb +26 -18
  4. data/app/controllers/page_controller.rb +6 -6
  5. data/app/controllers/profiles_controller.rb +155 -0
  6. data/app/controllers/roles_controller.rb +5 -5
  7. data/app/controllers/user_export_files_controller.rb +100 -0
  8. data/app/controllers/user_groups_controller.rb +11 -11
  9. data/app/controllers/user_import_files_controller.rb +22 -11
  10. data/app/controllers/user_import_results_controller.rb +1 -1
  11. data/app/mailers/notifier.rb +7 -7
  12. data/app/models/enju_leaf/ability.rb +14 -13
  13. data/app/models/profile.rb +63 -16
  14. data/app/models/role.rb +2 -2
  15. data/app/models/user_export_file.rb +52 -0
  16. data/app/models/user_export_file_state_machine.rb +15 -0
  17. data/app/models/user_export_file_transition.rb +20 -0
  18. data/app/models/user_group.rb +3 -3
  19. data/app/models/user_has_role.rb +2 -2
  20. data/app/models/user_import_file.rb +139 -53
  21. data/app/views/kaminari/_first_page.html.erb +1 -1
  22. data/app/views/kaminari/_last_page.html.erb +1 -1
  23. data/app/views/kaminari/_next_page.html.erb +1 -1
  24. data/app/views/kaminari/_page.html.erb +1 -1
  25. data/app/views/kaminari/_prev_page.html.erb +1 -1
  26. data/app/views/kaminari/enju_leaf_mobile/_next_page.html.erb +1 -1
  27. data/app/views/kaminari/enju_leaf_mobile/_page.html.erb +1 -1
  28. data/app/views/kaminari/enju_leaf_mobile/_prev_page.html.erb +1 -1
  29. data/app/views/layouts/application.html.erb +4 -4
  30. data/app/views/my_accounts/_edit_credential.html.erb +67 -59
  31. data/app/views/my_accounts/edit.html.erb +6 -46
  32. data/app/views/my_accounts/show.html.erb +8 -8
  33. data/app/views/page/_add.html.erb +2 -2
  34. data/app/views/page/_footer.html.erb +3 -2
  35. data/app/views/page/_footer.mobile.erb +1 -1
  36. data/app/views/page/_header.html.erb +4 -4
  37. data/app/views/page/_include.html.erb +1 -1
  38. data/app/views/page/_index.html.erb +8 -8
  39. data/app/views/page/_index.mobile.erb +4 -4
  40. data/app/views/page/_menu.html.erb +9 -6
  41. data/app/views/page/_msie_acceralator.html.erb +1 -1
  42. data/app/views/page/_position.html.erb +2 -2
  43. data/app/views/page/_search_form.html.erb +2 -2
  44. data/app/views/page/_search_form.mobile.erb +2 -2
  45. data/app/views/page/_select_locale.html.erb +2 -2
  46. data/app/views/page/about.en.html.erb +2 -2
  47. data/app/views/page/about.ja.html.erb +2 -2
  48. data/app/views/page/advanced_search.html.erb +8 -8
  49. data/app/views/page/configuration.html.erb +5 -3
  50. data/app/views/page/export.html.erb +7 -17
  51. data/app/views/page/import.html.erb +1 -4
  52. data/app/views/page/index.html.erb +2 -2
  53. data/app/views/page/msie_acceralator.builder +1 -1
  54. data/app/views/page/opensearch.builder +2 -2
  55. data/app/views/profiles/_edit_credential.html.erb +78 -0
  56. data/app/views/profiles/_edit_profile.html.erb +42 -0
  57. data/app/views/{users → profiles}/_form.html.erb +0 -0
  58. data/app/views/{users → profiles}/_show.html.erb +0 -0
  59. data/app/views/profiles/edit.html.erb +36 -0
  60. data/app/views/profiles/index.html.erb +61 -0
  61. data/app/views/{users → profiles}/new.html.erb +34 -36
  62. data/app/views/{users → profiles}/show.html.erb +24 -22
  63. data/app/views/{users → profiles}/show.mobile.erb +0 -0
  64. data/app/views/roles/_form.html.erb +1 -1
  65. data/app/views/roles/edit.html.erb +1 -1
  66. data/app/views/roles/index.html.erb +2 -2
  67. data/app/views/roles/new.html.erb +1 -1
  68. data/app/views/roles/show.html.erb +1 -1
  69. data/app/views/user_export_files/_form.html.erb +22 -0
  70. data/app/views/user_export_files/edit.html.erb +6 -0
  71. data/app/views/user_export_files/index.html.erb +44 -0
  72. data/app/views/user_export_files/new.html.erb +16 -0
  73. data/app/views/user_export_files/show.html.erb +31 -0
  74. data/app/views/user_groups/_form.html.erb +5 -5
  75. data/app/views/user_groups/edit.html.erb +1 -1
  76. data/app/views/user_groups/index.html.erb +14 -8
  77. data/app/views/user_groups/new.html.erb +1 -1
  78. data/app/views/user_groups/show.html.erb +3 -3
  79. data/app/views/user_import_files/index.html.erb +11 -10
  80. data/app/views/user_import_files/new.html.erb +15 -3
  81. data/app/views/user_import_files/show.html.erb +13 -3
  82. data/app/views/user_import_results/index.html.erb +7 -7
  83. data/app/views/user_import_results/{index.tsv.erb → index.txt.erb} +1 -1
  84. data/app/views/user_import_results/show.html.erb +2 -2
  85. data/app/workers/user_export_file_queue.rb +7 -0
  86. data/config/initializers/mime_types.rb +1 -1
  87. data/config/locales/devise.en.yml +19 -18
  88. data/config/locales/devise.ja.yml +45 -42
  89. data/config/locales/en.yml +214 -0
  90. data/config/locales/ja.yml +10 -6
  91. data/config/locales/translation_en.yml +34 -5
  92. data/config/locales/translation_ja.yml +35 -6
  93. data/config/routes.rb +4 -7
  94. data/db/migrate/20130221154434_add_additional_attributes_to_user.rb +0 -9
  95. data/db/migrate/20140122054321_create_profiles.rb +1 -1
  96. data/db/migrate/20140709113413_create_user_export_files.rb +11 -0
  97. data/db/migrate/20140709113905_create_user_export_file_transitions.rb +14 -0
  98. data/db/migrate/20140720170714_add_default_library_id_to_user_import_file.rb +5 -0
  99. data/db/migrate/20140720170735_add_default_user_group_id_to_user_import_file.rb +5 -0
  100. data/db/migrate/20140811031145_add_expired_at_to_profile.rb +5 -0
  101. data/lib/enju_leaf/calculate_stat.rb +9 -0
  102. data/lib/enju_leaf/controller.rb +1 -1
  103. data/lib/enju_leaf/export_file.rb +26 -0
  104. data/lib/enju_leaf/import_file.rb +25 -0
  105. data/lib/enju_leaf/master_model.rb +15 -6
  106. data/lib/enju_leaf/url_validator.rb +4 -2
  107. data/lib/enju_leaf/user.rb +74 -68
  108. data/lib/enju_leaf/version.rb +1 -1
  109. data/lib/enju_leaf.rb +23 -24
  110. data/lib/generators/enju_leaf/quick_install/quick_install_generator.rb +2 -1
  111. data/lib/generators/enju_leaf/setup/setup_generator.rb +6 -0
  112. data/lib/generators/enju_leaf/setup/templates/db/fixtures/user_groups.yml +1 -1
  113. data/lib/generators/enju_leaf/setup/templates/db/seeds.rb +5 -4
  114. data/lib/tasks/enju_leaf_tasks.rake +18 -9
  115. data/lib/tasks/profile.rb +15 -0
  116. data/spec/controllers/my_accounts_controller_spec.rb +61 -43
  117. data/spec/controllers/page_controller_spec.rb +20 -20
  118. data/spec/controllers/profiles_controller_spec.rb +530 -0
  119. data/spec/controllers/roles_controller_spec.rb +19 -19
  120. data/spec/controllers/user_export_files_controller_spec.rb +297 -0
  121. data/spec/controllers/user_groups_controller_spec.rb +48 -48
  122. data/spec/controllers/user_import_files_controller_spec.rb +45 -41
  123. data/spec/controllers/user_import_results_controller_spec.rb +9 -9
  124. data/spec/dummy/app/models/user.rb +3 -0
  125. data/spec/dummy/config/application.rb +3 -1
  126. data/spec/dummy/config/environments/test.rb +2 -0
  127. data/spec/dummy/db/development.sqlite3 +0 -0
  128. data/spec/dummy/db/migrate/{001_create_patrons.rb → 001_create_agents.rb} +1 -2
  129. data/spec/dummy/db/migrate/005_create_manifestations.rb +5 -17
  130. data/spec/dummy/db/migrate/006_create_items.rb +2 -3
  131. data/spec/dummy/db/migrate/032_create_checkins.rb +17 -0
  132. data/spec/dummy/db/migrate/033_create_checkouts.rb +25 -0
  133. data/spec/dummy/db/migrate/035_create_reserves.rb +27 -0
  134. data/spec/dummy/db/migrate/055_create_bookmarks.rb +22 -0
  135. data/spec/dummy/db/migrate/059_create_libraries.rb +5 -1
  136. data/spec/dummy/db/migrate/069_create_shelves.rb +5 -1
  137. data/spec/dummy/db/migrate/080_create_library_groups.rb +0 -2
  138. data/spec/dummy/db/migrate/113_create_events.rb +23 -0
  139. data/spec/dummy/db/migrate/114_create_event_categories.rb +16 -0
  140. data/spec/dummy/db/migrate/121_create_checked_items.rb +17 -0
  141. data/spec/dummy/db/migrate/127_create_use_restrictions.rb +16 -0
  142. data/spec/dummy/db/migrate/129_create_item_has_use_restrictions.rb +16 -0
  143. data/spec/dummy/db/migrate/130_create_request_status_types.rb +5 -1
  144. data/spec/dummy/db/migrate/131_create_request_types.rb +5 -1
  145. data/spec/dummy/db/migrate/132_create_circulation_statuses.rb +16 -0
  146. data/spec/dummy/db/migrate/149_create_message_templates.rb +18 -0
  147. data/spec/dummy/db/migrate/154_create_messages.rb +23 -0
  148. data/spec/dummy/db/migrate/20080819181903_create_message_requests.rb +18 -0
  149. data/spec/dummy/db/migrate/{20080905191442_create_patron_types.rb → 20080905191442_create_agent_types.rb} +1 -1
  150. data/spec/dummy/db/migrate/{20081028083142_create_patron_import_files.rb → 20081028083142_create_agent_import_files.rb} +2 -4
  151. data/spec/dummy/db/migrate/20081028083208_create_resource_import_files.rb +1 -3
  152. data/spec/dummy/db/migrate/20081030023412_create_checkout_types.rb +17 -0
  153. data/spec/dummy/db/migrate/20081030023518_create_user_group_has_checkout_types.rb +25 -0
  154. data/spec/dummy/db/migrate/20081030023615_create_carrier_type_has_checkout_types.rb +18 -0
  155. data/spec/dummy/db/migrate/20081212075554_create_checkout_stat_has_manifestations.rb +17 -0
  156. data/spec/dummy/db/migrate/20081212080038_create_manifestation_checkout_stats.rb +16 -0
  157. data/spec/dummy/db/migrate/20081212151614_create_bookmark_stats.rb +16 -0
  158. data/spec/dummy/db/migrate/20081212151820_create_bookmark_stat_has_manifestations.rb +13 -0
  159. data/spec/dummy/db/migrate/20081215094302_create_user_checkout_stats.rb +16 -0
  160. data/spec/dummy/db/migrate/20081215094955_create_checkout_stat_has_users.rb +17 -0
  161. data/spec/dummy/db/migrate/20081216190517_create_reserve_stat_has_manifestations.rb +17 -0
  162. data/spec/dummy/db/migrate/20081216190724_create_manifestation_reserve_stats.rb +16 -0
  163. data/spec/dummy/db/migrate/20081220023628_create_user_reserve_stats.rb +16 -0
  164. data/spec/dummy/db/migrate/20081220034117_create_reserve_stat_has_users.rb +17 -0
  165. data/spec/dummy/db/migrate/20090321130448_add_completed_at_to_user_checkout_stat.rb +27 -0
  166. data/spec/dummy/db/migrate/{20090812151902_create_patron_relationship_types.rb → 20090812151902_create_agent_relationship_types.rb} +1 -1
  167. data/spec/dummy/db/migrate/20090831220301_create_lending_policies.rb +21 -0
  168. data/spec/dummy/db/migrate/20100129142347_create_import_requests.rb +0 -1
  169. data/spec/dummy/db/migrate/20100222124420_add_allow_bookmark_external_url_to_library_group.rb +9 -0
  170. data/spec/dummy/db/migrate/20100525171356_acts_as_taggable_on_migration.rb +30 -0
  171. data/spec/dummy/db/migrate/{20100606073747_create_patron_relationships.rb → 20100606073747_create_agent_relationships.rb} +1 -1
  172. data/spec/dummy/db/migrate/{20100814091104_add_position_to_patron_relationship.rb → 20100814091104_add_position_to_agent_relationship.rb} +1 -1
  173. data/spec/dummy/db/migrate/{20100925074559_create_patron_import_results.rb → 20100925074559_create_agent_import_results.rb} +1 -1
  174. data/spec/dummy/db/migrate/{20110301121550_add_birth_date_and_death_date_to_patron.rb → 20110301121550_add_birth_date_and_death_date_to_agent.rb} +1 -1
  175. data/spec/dummy/db/migrate/20110301134521_add_expire_date_to_reserve.rb +9 -0
  176. data/spec/dummy/db/migrate/20110328130826_add_current_checkout_count_to_user_group_has_checkout_type.rb +9 -0
  177. data/spec/dummy/db/migrate/20110618091240_add_periodical_to_series_statement.rb +1 -1
  178. data/spec/dummy/db/migrate/20110621093332_remove_expire_date_from_reserve.rb +9 -0
  179. data/spec/dummy/db/migrate/20110913115320_add_lft_and_rgt_to_message.rb +11 -0
  180. data/spec/dummy/db/migrate/20111020063828_remove_dsbl_from_library_group.rb +11 -0
  181. data/spec/dummy/db/migrate/20111217234412_add_save_checkout_history_to_user.rb +5 -0
  182. data/spec/dummy/db/migrate/20111218002349_add_checkout_icalendar_token_to_user.rb +6 -0
  183. data/spec/dummy/db/migrate/20111231145823_add_share_bookmarks_to_user.rb +5 -0
  184. data/spec/dummy/db/migrate/20120125050502_add_depth_to_message.rb +6 -0
  185. data/spec/dummy/db/migrate/{20120413161403_add_fingerprint_to_patron_import_file.rb → 20120413161403_add_fingerprint_to_agent_import_file.rb} +1 -1
  186. data/spec/dummy/db/migrate/{20120413170720_add_error_message_to_patron_import_file.rb → 20120413170720_add_error_message_to_agent_import_file.rb} +1 -1
  187. data/spec/dummy/db/migrate/20120418121539_add_save_search_history_to_user.rb +5 -0
  188. data/spec/dummy/db/migrate/20120424103932_add_librarian_id_to_checked_item.rb +5 -0
  189. data/spec/dummy/db/migrate/{20120511072422_add_patron_identifier_to_patron.rb → 20120511072422_add_agent_identifier_to_agent.rb} +1 -1
  190. data/spec/dummy/db/migrate/{20120602141129_add_edit_mode_to_patron_import_file.rb → 20120602141129_add_edit_mode_to_agent_import_file.rb} +1 -1
  191. data/spec/dummy/db/migrate/20130303104849_add_state_index_to_reserve.rb +5 -0
  192. data/spec/dummy/db/migrate/20130303124821_add_retained_at_to_reserve.rb +5 -0
  193. data/spec/dummy/db/migrate/20130304015019_add_postponed_at_to_reserve.rb +5 -0
  194. data/spec/dummy/db/migrate/20130416054135_add_circulation_status_id_to_item.rb +8 -0
  195. data/spec/dummy/db/migrate/20130421155019_add_creator_string_to_series_statement.rb +7 -0
  196. data/spec/dummy/db/migrate/20130421164124_add_series_master_to_series_statement.rb +5 -0
  197. data/spec/dummy/db/migrate/20130509185724_add_statement_of_responsibility_to_manifestation.rb +5 -0
  198. data/spec/dummy/db/migrate/20130519065638_add_lock_version_to_reserve.rb +5 -0
  199. data/spec/dummy/db/migrate/20130519065837_add_lock_version_to_checkin.rb +5 -0
  200. data/spec/dummy/db/migrate/20140518050147_create_reserve_transitions.rb +14 -0
  201. data/spec/dummy/db/migrate/20140518111006_create_message_transitions.rb +14 -0
  202. data/spec/dummy/db/migrate/20140518135713_create_message_request_transitions.rb +14 -0
  203. data/spec/dummy/db/migrate/20140519170214_create_resource_import_file_transitions.rb +14 -0
  204. data/spec/dummy/db/migrate/20140519171220_create_import_request_transitions.rb +14 -0
  205. data/spec/dummy/db/migrate/20140524020735_create_agent_import_file_transitions.rb +14 -0
  206. data/spec/dummy/db/migrate/20140524135607_create_bookmark_stat_transitions.rb +14 -0
  207. data/spec/dummy/db/migrate/20140524142813_add_taggings_count_to_tag.rb +5 -0
  208. data/spec/dummy/db/migrate/20140528045518_create_user_checkout_stat_transitions.rb +14 -0
  209. data/spec/dummy/db/migrate/20140528045539_create_user_reserve_stat_transitions.rb +14 -0
  210. data/spec/dummy/db/migrate/20140528045600_create_manifestation_checkout_stat_transitions.rb +14 -0
  211. data/spec/dummy/db/migrate/20140528045617_create_manifestation_reserve_stat_transitions.rb +14 -0
  212. data/spec/dummy/db/migrate/20140529014410_create_item_transitions.rb +14 -0
  213. data/spec/dummy/db/migrate/20140614065404_create_resource_export_files.rb +11 -0
  214. data/spec/dummy/db/migrate/20140614141500_create_resource_export_file_transitions.rb +14 -0
  215. data/spec/dummy/db/migrate/20140628073524_add_user_encoding_to_agent_import_file.rb +5 -0
  216. data/spec/dummy/db/migrate/20140628073535_add_user_encoding_to_resource_import_file.rb +5 -0
  217. data/spec/dummy/db/migrate/20140810061942_add_user_id_to_stat.rb +12 -0
  218. data/spec/dummy/db/migrate/20140810091231_add_checkout_icalendar_token_to_profile.rb +6 -0
  219. data/spec/dummy/db/migrate/20140810091417_add_save_checkout_history_to_profile.rb +5 -0
  220. data/spec/dummy/db/migrate/20140811132912_add_save_search_history_to_profile.rb +5 -0
  221. data/spec/dummy/db/migrate/20140812093836_add_share_bookmarks_to_profile.rb +5 -0
  222. data/spec/dummy/db/schema.rb +632 -57
  223. data/spec/dummy/db/test.sqlite3 +0 -0
  224. data/spec/dummy/private/system/user_import_files/user_imports/980/190/963/original/user_delete_file.tsv +4 -0
  225. data/spec/dummy/private/system/user_import_files/user_imports/980/190/963/original/user_import_file_sample.tsv +7 -7
  226. data/spec/dummy/public/system/user_export_files/user_exports/000/000/003/original/user_export_file_20140815-3963-1s1td26.txt +8 -0
  227. data/spec/dummy/public/system/user_export_files/user_exports/000/000/003/original/user_export_file_20140815-69229-i0rcty.txt +8 -0
  228. data/spec/dummy/public/system/user_export_files/user_exports/000/000/003/original/user_export_file_20140816-21120-1w731r8.txt +8 -0
  229. data/spec/dummy/public/system/user_export_files/user_exports/000/000/004/original/user_export_file_20140711-28652-1dj3e98.txt +148 -0
  230. data/spec/dummy/public/system/user_export_files/user_exports/000/000/004/original/user_export_file_20140711-29117-13jb6ol.txt +148 -0
  231. data/spec/dummy/public/system/user_export_files/user_exports/000/000/004/original/user_export_file_20140721-65743-1tnagd4.txt +8 -0
  232. data/spec/dummy/public/system/user_export_files/user_exports/000/000/004/original/user_export_file_20140815-3963-1kk8o87.txt +8 -0
  233. data/spec/dummy/public/system/user_export_files/user_exports/000/000/004/original/user_export_file_20140815-69229-188nwub.txt +8 -0
  234. data/spec/dummy/public/system/user_export_files/user_exports/000/000/004/original/user_export_file_20140816-21120-twzfb6.txt +8 -0
  235. data/spec/dummy/solr/default/data/index/_4h.fdt +0 -0
  236. data/spec/dummy/solr/default/data/index/{_3h.fdx → _4h.fdx} +0 -0
  237. data/spec/dummy/solr/default/data/index/{_3h.fnm → _4h.fnm} +0 -0
  238. data/spec/dummy/solr/default/data/index/{_3h.nvd → _4h.nvd} +0 -0
  239. data/spec/dummy/solr/default/data/index/{_3h.nvm → _4h.nvm} +0 -0
  240. data/spec/dummy/solr/default/data/index/{_3h.si → _4h.si} +0 -0
  241. data/spec/dummy/solr/default/data/index/_4h_Lucene41_0.doc +0 -0
  242. data/spec/dummy/solr/default/data/index/_4h_Lucene41_0.pos +0 -0
  243. data/spec/dummy/solr/default/data/index/_4h_Lucene41_0.tim +0 -0
  244. data/spec/dummy/solr/default/data/index/_4h_Lucene41_0.tip +0 -0
  245. data/spec/dummy/solr/default/data/index/segments.gen +0 -0
  246. data/spec/dummy/solr/default/data/index/segments_97 +0 -0
  247. data/spec/dummy/solr/default/data/tlog/tlog.0000000000000000320 +0 -0
  248. data/spec/dummy/solr/default/data/tlog/tlog.0000000000000000321 +0 -0
  249. data/spec/dummy/solr/default/data/tlog/tlog.0000000000000000322 +0 -0
  250. data/spec/dummy/solr/default/data/tlog/tlog.0000000000000000323 +0 -0
  251. data/spec/dummy/solr/default/data/tlog/tlog.0000000000000000324 +0 -0
  252. data/spec/dummy/solr/default/data/tlog/tlog.0000000000000000325 +0 -0
  253. data/spec/dummy/solr/default/data/tlog/tlog.0000000000000000326 +0 -0
  254. data/spec/dummy/solr/default/data/tlog/tlog.0000000000000000327 +0 -0
  255. data/spec/dummy/solr/default/data/tlog/tlog.0000000000000000328 +0 -0
  256. data/spec/dummy/solr/default/data/tlog/tlog.0000000000000000329 +0 -0
  257. data/spec/dummy/tmp/cache/4F7/F90/default_role +0 -0
  258. data/spec/dummy/tmp/cache/ACB/B20/manifestation_search_total +0 -0
  259. data/spec/dummy/tmp/cache/assets/test/sprockets/13fe41fee1fe35b49d145bcc06610705 +0 -0
  260. data/spec/dummy/tmp/cache/assets/test/sprockets/154f7b83f2da0e86effbe25f32135177 +0 -0
  261. data/spec/dummy/tmp/cache/assets/test/sprockets/1b984bdbd3204a51a82d0e01a1569e2d +0 -0
  262. data/spec/dummy/tmp/cache/assets/test/sprockets/2f5173deea6c795b8fdde723bb4b63af +0 -0
  263. data/spec/dummy/tmp/cache/assets/test/sprockets/3054c50144654f9c7e57bb0639a276e9 +0 -0
  264. data/spec/dummy/tmp/cache/assets/test/sprockets/357970feca3ac29060c1e3861e2c0953 +0 -0
  265. data/spec/dummy/tmp/cache/assets/test/sprockets/3bd7a263237ba366f64d938fe5303757 +0 -0
  266. data/spec/dummy/tmp/cache/assets/test/sprockets/62899096da1a3e67660f3b88068be8c9 +0 -0
  267. data/spec/dummy/tmp/cache/assets/test/sprockets/65b2e4f67eab21b30217e29075f433b2 +0 -0
  268. data/spec/dummy/tmp/cache/assets/test/sprockets/87d24a3f43f175d4d17babe9203c79a7 +0 -0
  269. data/spec/dummy/tmp/cache/assets/test/sprockets/cffd775d018f68ce5dba1ee0d951a994 +0 -0
  270. data/spec/dummy/tmp/cache/assets/test/sprockets/d38d8658b30de1d068603968227680d4 +0 -0
  271. data/spec/dummy/tmp/cache/assets/test/sprockets/d771ace226fc8215a3572e0aa35bb0d6 +0 -0
  272. data/spec/dummy/tmp/cache/assets/test/sprockets/f7cbd26ba1d28d48de824f0e94586655 +0 -0
  273. data/spec/dummy/tmp/cache/stdout +246 -279
  274. data/spec/dummy/tmp/pids/redis-test.pid +1 -1
  275. data/spec/factories/profile.rb +9 -0
  276. data/spec/factories/user.rb +0 -13
  277. data/spec/fixtures/agent_import_files.yml +0 -3
  278. data/spec/fixtures/agents.yml +54 -54
  279. data/spec/fixtures/baskets.yml +4 -4
  280. data/spec/fixtures/carrier_type_has_checkout_types.yml +30 -0
  281. data/spec/fixtures/checked_items.yml +34 -0
  282. data/spec/fixtures/checkins.yml +54 -0
  283. data/spec/fixtures/checkout_stat_has_manifestations.yml +23 -0
  284. data/spec/fixtures/checkout_stat_has_users.yml +23 -0
  285. data/spec/fixtures/checkout_types.yml +33 -0
  286. data/spec/fixtures/checkouts.yml +162 -0
  287. data/spec/fixtures/circulation_statuses.yml +119 -0
  288. data/spec/fixtures/event_categories.yml +55 -0
  289. data/spec/fixtures/events.yml +142 -0
  290. data/spec/fixtures/exemplifies.yml +12 -0
  291. data/spec/fixtures/import_requests.yml +0 -2
  292. data/spec/fixtures/item_has_use_restrictions.yml +60 -0
  293. data/spec/fixtures/items.yml +101 -11
  294. data/spec/fixtures/lending_policies.yml +98 -0
  295. data/spec/fixtures/libraries.yml +26 -25
  296. data/spec/fixtures/library_groups.yml +6 -8
  297. data/spec/fixtures/manifestation_checkout_stats.yml +30 -0
  298. data/spec/fixtures/manifestation_reserve_stats.yml +30 -0
  299. data/spec/fixtures/manifestations.yml +69 -207
  300. data/spec/fixtures/message_requests.yml +27 -0
  301. data/spec/fixtures/message_templates.yml +105 -0
  302. data/spec/fixtures/profiles.yml +98 -0
  303. data/spec/fixtures/request_status_types.yml +63 -0
  304. data/spec/fixtures/request_types.yml +55 -0
  305. data/spec/fixtures/reserve_stat_has_manifestations.yml +23 -0
  306. data/spec/fixtures/reserve_stat_has_users.yml +23 -0
  307. data/spec/fixtures/reserve_transitions.yml +88 -0
  308. data/spec/fixtures/reserves.yml +162 -0
  309. data/spec/fixtures/resource_import_files.yml +0 -3
  310. data/spec/fixtures/roles.yml +0 -4
  311. data/spec/fixtures/shelves.yml +2 -3
  312. data/spec/fixtures/use_restrictions.yml +92 -0
  313. data/spec/fixtures/user_checkout_stats.yml +30 -0
  314. data/spec/fixtures/user_export_files.yml +26 -0
  315. data/spec/fixtures/user_group_has_checkout_types.yml +110 -0
  316. data/spec/fixtures/user_import_files.yml +2 -0
  317. data/spec/fixtures/user_reserve_stats.yml +30 -0
  318. data/spec/fixtures/users.yml +1 -101
  319. data/spec/models/profile_spec.rb +66 -0
  320. data/spec/models/user_export_file_spec.rb +31 -0
  321. data/spec/models/user_import_file_spec.rb +42 -20
  322. data/spec/models/user_spec.rb +1 -18
  323. data/spec/requests/{users_spec.rb → profiles_spec.rb} +3 -3
  324. data/spec/routing/accounts_spec.rb +1 -1
  325. data/spec/routing/profiles_routing_spec.rb +35 -0
  326. data/spec/support/resque.rb +1 -0
  327. data/spec/views/{users → profiles}/edit.html.erb_spec.rb +5 -7
  328. data/spec/views/{users → profiles}/index.html.erb_spec.rb +3 -3
  329. data/spec/views/{users → profiles}/new.html.erb_spec.rb +5 -5
  330. data/spec/views/profiles/show.html.erb_spec.rb +20 -0
  331. data/vendor/assets/javascripts/jquery.colorbox.js +4 -3
  332. data/vendor/assets/stylesheets/colorbox.css +1 -1
  333. metadata +416 -132
  334. data/app/controllers/users_controller.rb +0 -195
  335. data/app/models/user_sweeper.rb +0 -18
  336. data/app/views/users/_edit_credential.html.erb +0 -79
  337. data/app/views/users/edit.html.erb +0 -76
  338. data/app/views/users/index.html.erb +0 -56
  339. data/lib/enju_leaf/expire_editable_fragment.rb +0 -30
  340. data/lib/enju_leaf/expire_fragment_cache.rb +0 -17
  341. data/spec/controllers/users_controller_spec.rb +0 -539
  342. data/spec/dummy/db/migrate/20110916053430_rename_manifestation_number_list_to_number_string.rb +0 -13
  343. data/spec/dummy/db/migrate/20120415060308_rename_resource_import_file_imported_at_to_executed_at.rb +0 -9
  344. data/spec/dummy/db/migrate/20120415060323_rename_patron_import_file_imported_at_to_executed_at.rb +0 -9
  345. data/spec/dummy/db/migrate/20121119153944_add_manifestation_id_to_item.rb +0 -5
  346. data/spec/dummy/solr/default/data/index/_3h.fdt +0 -0
  347. data/spec/dummy/solr/default/data/index/_3h_Lucene41_0.doc +0 -0
  348. data/spec/dummy/solr/default/data/index/_3h_Lucene41_0.pos +0 -0
  349. data/spec/dummy/solr/default/data/index/_3h_Lucene41_0.tim +0 -0
  350. data/spec/dummy/solr/default/data/index/_3h_Lucene41_0.tip +0 -0
  351. data/spec/dummy/solr/default/data/index/segments_71 +0 -0
  352. data/spec/dummy/solr/default/data/tlog/tlog.0000000000000000242 +0 -0
  353. data/spec/dummy/solr/default/data/tlog/tlog.0000000000000000243 +0 -0
  354. data/spec/dummy/solr/default/data/tlog/tlog.0000000000000000244 +0 -0
  355. data/spec/dummy/solr/default/data/tlog/tlog.0000000000000000245 +0 -0
  356. data/spec/dummy/solr/default/data/tlog/tlog.0000000000000000246 +0 -0
  357. data/spec/dummy/solr/default/data/tlog/tlog.0000000000000000247 +0 -0
  358. data/spec/dummy/solr/default/data/tlog/tlog.0000000000000000248 +0 -0
  359. data/spec/dummy/solr/default/data/tlog/tlog.0000000000000000249 +0 -0
  360. data/spec/dummy/solr/default/data/tlog/tlog.0000000000000000250 +0 -0
  361. data/spec/dummy/solr/default/data/tlog/tlog.0000000000000000251 +0 -0
  362. data/spec/dummy/tmp/cache/assets/test/sprockets/3f8d795856d1fdf902b0be679120571a +0 -0
  363. data/spec/dummy/tmp/cache/assets/test/sprockets/5998e66e374537d52eed3fe1ca5f2bfc +0 -0
  364. data/spec/dummy/tmp/cache/assets/test/sprockets/5ea4a1824e1d67da6c4fb9aeef9f49f4 +0 -0
  365. data/spec/dummy/tmp/cache/assets/test/sprockets/87f0cb69a0df1355e33cce3949919d5a +0 -0
  366. data/spec/routing/users_routing_spec.rb +0 -35
  367. data/spec/views/users/show.html.erb_spec.rb +0 -15
@@ -1,55 +1,58 @@
1
1
  ja:
2
2
  devise:
3
- failure:
4
- already_authenticated: 'すでにログインしています。'
5
- unauthenticated: '操作を続けるにはログインが必要です。'
6
- unconfirmed: '操作を続けるにはアカウントの確認が必要です。'
7
- locked: 'アカウントは停止されています。'
8
- not_found_in_database: 'ユーザ名かパスワードが正しくありません。'
9
- invalid: 'ユーザ名かパスワードが正しくありません。'
10
- invalid_token: 'Invalid authentication token.'
11
- timeout: 'Your session expired, please sign in again to continue.'
12
- inactive: 'アカウントが有効になっていません。'
13
- sessions:
14
- signed_in: 'ログインしました。'
15
- signed_out: 'ログアウトしました。'
16
- passwords:
17
- send_instructions: 'パスワードを再設定する手順についてのメールが数分のうちに届きます。'
18
- updated: 'パスワードは正しく更新されました。ログインしました。'
19
- updated_not_active: 'パスワードは正しく更新されました。'
20
- send_paranoid_instructions: "データベース上にあなたの電子メールが見つかりましたら、パスワード再発行のためのリンクをお送りします。"
21
3
  confirmations:
22
- send_instructions: 'You will receive an email with instructions about how to confirm your account in a few minutes.'
23
- send_paranoid_instructions: 'データベース上にあなたの電子メールが見つかりましたら、アカウント確認のためのリンクをお送りします。'
24
- confirmed: 'Your account was successfully confirmed. You are now signed in.'
25
- registrations:
26
- signed_up: 'Welcome! You have signed up successfully.'
27
- signed_up_but_unconfirmed: 'A message with a confirmation link has been sent to your email address. Please open the link to activate your account.'
28
- signed_up_but_inactive: 'You have signed up successfully. However, we could not sign you in because your account is not yet activated.'
29
- signed_up_but_locked: 'You have signed up successfully. However, we could not sign you in because your account is locked.'
30
- updated: 'You updated your account successfully.'
31
- update_needs_confirmation: "You updated your account successfully, but we need to verify your new email address. Please check your email and click on the confirm link to finalize confirming your new email address."
32
- destroyed: 'Bye! Your account was successfully cancelled. We hope to see you again soon.'
33
- unlocks:
34
- send_instructions: 'You will receive an email with instructions about how to unlock your account in a few minutes.'
35
- unlocked: 'Your account has been unlocked successfully. Please sign in to continue.'
36
- send_paranoid_instructions: 'If your account exists, you will receive an email with instructions about how to unlock it in a few minutes.'
37
- omniauth_callbacks:
38
- success: 'Successfully authorized from %{kind} account.'
39
- failure: 'Could not authorize you from %{kind} because "%{reason}".'
4
+ confirmed: "Your email address has been successfully confirmed."
5
+ send_instructions: "You will receive an email with instructions about how to confirm your account in a few minutes."
6
+ send_paranoid_instructions: "データベース上にあなたの電子メールが見つかりましたら、アカウント確認のためのリンクをお送りします。"
7
+ failure:
8
+ already_authenticated: "すでにログインしています。"
9
+ inactive: "アカウントが有効になっていません。"
10
+ invalid: "ユーザ名かパスワードが正しくありません。"
11
+ locked: "アカウントは停止されています。"
12
+ last_attempt: "アカウントがロックされる前に一度以上ログインを試行しました。"
13
+ not_found_in_database: "ユーザ名かパスワードが正しくありません。"
14
+ timeout: "セッションが切れました。続行するにはもう一度ログインしてください。"
15
+ unauthenticated: "操作を続けるにはログインが必要です。"
16
+ unconfirmed: "操作を続けるにはアカウントの確認が必要です。"
40
17
  mailer:
41
18
  confirmation_instructions:
42
- subject: 'Confirmation instructions'
19
+ subject: "Confirmation instructions"
43
20
  reset_password_instructions:
44
- subject: 'Reset password instructions'
21
+ subject: "Reset password instructions"
45
22
  unlock_instructions:
46
- subject: 'Unlock Instructions'
23
+ subject: "Unlock instructions"
24
+ omniauth_callbacks:
25
+ failure: "Could not authenticate you from %{kind} because \"%{reason}\"."
26
+ success: "Successfully authenticated from %{kind} account."
27
+ passwords:
28
+ no_token: "You can't access this page without coming from a password reset email. If you do come from a password reset email, please make sure you used the full URL provided."
29
+ send_instructions: "パスワードを再設定する手順についてのメールが数分のうちに届きます。"
30
+ send_paranoid_instructions: "データベース上にあなたの電子メールが見つかりましたら、パスワード再発行のためのリンクをお送りします。"
31
+ updated: "パスワードは正しく更新されました。ログインしました。"
32
+ updated_not_active: "パスワードは正しく更新されました。"
33
+ registrations:
34
+ destroyed: "Bye! Your account has been successfully cancelled. We hope to see you again soon."
35
+ signed_up: "Welcome! You have signed up successfully."
36
+ signed_up_but_inactive: "You have signed up successfully. However, we could not sign you in because your account is not yet activated."
37
+ signed_up_but_locked: "You have signed up successfully. However, we could not sign you in because your account is locked."
38
+ signed_up_but_unconfirmed: "A message with a confirmation link has been sent to your email address. Please follow the link to activate your account."
39
+ update_needs_confirmation: "You updated your account successfully, but we need to verify your new email address. Please check your email and follow the confirm link to confirm your new email address."
40
+ updated: "Your account has been updated successfully."
41
+ sessions:
42
+ signed_in: "ログインしました。"
43
+ signed_out: "ログアウトしました。"
44
+ already_signed_out: "ログアウトしました。"
45
+ unlocks:
46
+ send_instructions: "You will receive an email with instructions for how to unlock your account in a few minutes."
47
+ send_paranoid_instructions: "If your account exists, you will receive an email with instructions for how to unlock it in a few minutes."
48
+ unlocked: "Your account has been unlocked successfully. Please sign in to continue."
47
49
  errors:
48
50
  messages:
51
+ already_confirmed: "was already confirmed, please try signing in"
52
+ confirmation_period_expired: "needs to be confirmed within %{period}, please request a new one"
49
53
  expired: "有効期限が切れています。新しく登録してください。"
50
54
  not_found: "not found"
51
- already_confirmed: "was already confirmed, please try signing in"
52
55
  not_locked: "was not locked"
53
56
  not_saved:
54
- one: "%{resource} を保存するときに1つのエラーが発生しました:"
55
- other: "%{resource} を保存するときに%{count}つのエラーが発生しました:"
57
+ one: "%{resource} を保存するときに1個のエラーが発生しました:"
58
+ other: "%{resource} を保存するときに%{count}個のエラーが発生しました:"
@@ -0,0 +1,214 @@
1
+ en:
2
+ date:
3
+ abbr_day_names:
4
+ - Sun
5
+ - Mon
6
+ - Tue
7
+ - Wed
8
+ - Thu
9
+ - Fri
10
+ - Sat
11
+ abbr_month_names:
12
+ -
13
+ - Jan
14
+ - Feb
15
+ - Mar
16
+ - Apr
17
+ - May
18
+ - Jun
19
+ - Jul
20
+ - Aug
21
+ - Sep
22
+ - Oct
23
+ - Nov
24
+ - Dec
25
+ day_names:
26
+ - Sunday
27
+ - Monday
28
+ - Tuesday
29
+ - Wednesday
30
+ - Thursday
31
+ - Friday
32
+ - Saturday
33
+ formats:
34
+ default: ! '%Y-%m-%d'
35
+ long: ! '%B %d, %Y'
36
+ short: ! '%b %d'
37
+ month_names:
38
+ -
39
+ - January
40
+ - February
41
+ - March
42
+ - April
43
+ - May
44
+ - June
45
+ - July
46
+ - August
47
+ - September
48
+ - October
49
+ - November
50
+ - December
51
+ order:
52
+ - :year
53
+ - :month
54
+ - :day
55
+ datetime:
56
+ distance_in_words:
57
+ about_x_hours:
58
+ one: about 1 hour
59
+ other: about %{count} hours
60
+ about_x_months:
61
+ one: about 1 month
62
+ other: about %{count} months
63
+ about_x_years:
64
+ one: about 1 year
65
+ other: about %{count} years
66
+ almost_x_years:
67
+ one: almost 1 year
68
+ other: almost %{count} years
69
+ half_a_minute: half a minute
70
+ less_than_x_minutes:
71
+ one: less than a minute
72
+ other: less than %{count} minutes
73
+ less_than_x_seconds:
74
+ one: less than 1 second
75
+ other: less than %{count} seconds
76
+ over_x_years:
77
+ one: over 1 year
78
+ other: over %{count} years
79
+ x_days:
80
+ one: 1 day
81
+ other: ! '%{count} days'
82
+ x_minutes:
83
+ one: 1 minute
84
+ other: ! '%{count} minutes'
85
+ x_months:
86
+ one: 1 month
87
+ other: ! '%{count} months'
88
+ x_seconds:
89
+ one: 1 second
90
+ other: ! '%{count} seconds'
91
+ prompts:
92
+ day: Day
93
+ hour: Hour
94
+ minute: Minute
95
+ month: Month
96
+ second: Seconds
97
+ year: Year
98
+ errors: &errors
99
+ format: ! '%{attribute} %{message}'
100
+ messages:
101
+ accepted: must be accepted
102
+ blank: can't be blank
103
+ present: must be blank
104
+ confirmation: ! "doesn't match %{attribute}"
105
+ empty: can't be empty
106
+ equal_to: must be equal to %{count}
107
+ even: must be even
108
+ exclusion: is reserved
109
+ greater_than: must be greater than %{count}
110
+ greater_than_or_equal_to: must be greater than or equal to %{count}
111
+ inclusion: is not included in the list
112
+ invalid: is invalid
113
+ less_than: must be less than %{count}
114
+ less_than_or_equal_to: must be less than or equal to %{count}
115
+ not_a_number: is not a number
116
+ not_an_integer: must be an integer
117
+ odd: must be odd
118
+ record_invalid: ! 'Validation failed: %{errors}'
119
+ restrict_dependent_destroy:
120
+ one: "Cannot delete record because a dependent %{record} exists"
121
+ many: "Cannot delete record because dependent %{record} exist"
122
+ taken: has already been taken
123
+ too_long:
124
+ one: is too long (maximum is 1 character)
125
+ other: is too long (maximum is %{count} characters)
126
+ too_short:
127
+ one: is too short (minimum is 1 character)
128
+ other: is too short (minimum is %{count} characters)
129
+ wrong_length:
130
+ one: is the wrong length (should be 1 character)
131
+ other: is the wrong length (should be %{count} characters)
132
+ other_than: "must be other than %{count}"
133
+ template:
134
+ body: ! 'There were problems with the following fields:'
135
+ header:
136
+ one: 1 error prohibited this %{model} from being saved
137
+ other: ! '%{count} errors prohibited this %{model} from being saved'
138
+ helpers:
139
+ select:
140
+ prompt: Please select
141
+ submit:
142
+ create: Create %{model}
143
+ submit: Save %{model}
144
+ update: Update %{model}
145
+ number:
146
+ currency:
147
+ format:
148
+ delimiter: ! ','
149
+ format: ! '%u%n'
150
+ precision: 2
151
+ separator: .
152
+ significant: false
153
+ strip_insignificant_zeros: false
154
+ unit: $
155
+ format:
156
+ delimiter: ! ','
157
+ precision: 3
158
+ separator: .
159
+ significant: false
160
+ strip_insignificant_zeros: false
161
+ human:
162
+ decimal_units:
163
+ format: ! '%n %u'
164
+ units:
165
+ billion: Billion
166
+ million: Million
167
+ quadrillion: Quadrillion
168
+ thousand: Thousand
169
+ trillion: Trillion
170
+ unit: ''
171
+ format:
172
+ delimiter: ''
173
+ precision: 3
174
+ significant: true
175
+ strip_insignificant_zeros: true
176
+ storage_units:
177
+ format: ! '%n %u'
178
+ units:
179
+ byte:
180
+ one: Byte
181
+ other: Bytes
182
+ gb: GB
183
+ kb: KB
184
+ mb: MB
185
+ tb: TB
186
+ percentage:
187
+ format:
188
+ delimiter: ''
189
+ format: "%n%"
190
+ precision:
191
+ format:
192
+ delimiter: ''
193
+ support:
194
+ array:
195
+ last_word_connector: ! ', and '
196
+ two_words_connector: ! ' and '
197
+ words_connector: ! ', '
198
+ time:
199
+ am: am
200
+ formats:
201
+ default: ! '%a, %d %b %Y %H:%M:%S %z'
202
+ long: ! '%B %d, %Y %H:%M'
203
+ short: ! '%d %b %H:%M'
204
+ only_date: "%B %d, %Y"
205
+ only_year_and_month: "%m, %Y"
206
+ only_month: "%m"
207
+ pm: pm
208
+ # remove these aliases after 'activemodel' and 'activerecord' namespaces are removed from Rails repository
209
+ activemodel:
210
+ errors:
211
+ <<: *errors
212
+ activerecord:
213
+ errors:
214
+ <<: *errors
@@ -9,7 +9,7 @@ ja:
9
9
  - 金
10
10
  - 土
11
11
  abbr_month_names:
12
- -
12
+ -
13
13
  - 1月
14
14
  - 2月
15
15
  - 3月
@@ -35,7 +35,7 @@ ja:
35
35
  long: ! '%Y年%m月%d日(%a)'
36
36
  short: ! '%m/%d'
37
37
  month_names:
38
- -
38
+ -
39
39
  - 1月
40
40
  - 2月
41
41
  - 3月
@@ -69,10 +69,10 @@ ja:
69
69
  half_a_minute: 30秒前後
70
70
  less_than_x_minutes:
71
71
  one: 1分以内
72
- other: ! '%{count}分以内'
72
+ other: ! '%{count}分未満'
73
73
  less_than_x_seconds:
74
74
  one: 1秒以内
75
- other: ! '%{count}秒以内'
75
+ other: ! '%{count}秒未満'
76
76
  over_x_years:
77
77
  one: 1年以上
78
78
  other: ! '%{count}年以上'
@@ -100,7 +100,8 @@ ja:
100
100
  messages:
101
101
  accepted: を受諾してください。
102
102
  blank: を入力してください。
103
- confirmation: と確認の入力が一致しません。
103
+ present: は入力しないでください。
104
+ confirmation: と%{attribute}の入力が一致しません。
104
105
  empty: を入力してください。
105
106
  equal_to: は%{count}にしてください。
106
107
  even: は偶数にしてください。
@@ -115,15 +116,17 @@ ja:
115
116
  not_an_integer: は整数で入力してください。
116
117
  odd: は奇数にしてください。
117
118
  record_invalid: バリデーションに失敗しました。 %{errors}
119
+ restrict_dependent_destroy: ! '%{record}が存在しているので削除できません。'
118
120
  taken: はすでに存在します。
119
121
  too_long: は%{count}文字以内で入力してください。
120
122
  too_short: は%{count}文字以上で入力してください。
121
123
  wrong_length: は%{count}文字で入力してください。
124
+ other_than: "は%{count}以外の値にしてください。"
122
125
  template:
123
126
  body: 次の項目を確認してください。
124
127
  header:
125
128
  one: ! '%{model}にエラーが発生しました。'
126
- other: ! '%{model}に%{count}つのエラーが発生しました。'
129
+ other: ! '%{model}に%{count}個のエラーが発生しました。'
127
130
  helpers:
128
131
  select:
129
132
  prompt: 選択してください。
@@ -173,6 +176,7 @@ ja:
173
176
  percentage:
174
177
  format:
175
178
  delimiter: ''
179
+ format: "%n%"
176
180
  precision:
177
181
  format:
178
182
  delimiter: ''
@@ -7,6 +7,8 @@ en:
7
7
  user_has_role: User and roles
8
8
  user_import_file: User import file
9
9
  user_import_result: User import result
10
+ profile: Profile
11
+ user_export_file: User export
10
12
 
11
13
  attributes:
12
14
  user:
@@ -23,16 +25,12 @@ en:
23
25
  remember_token_expires_at: Remember token expires at
24
26
  activation_code: Activation code
25
27
  activated_at: Activated at
26
- expired_at: Expired at
27
28
  locked: Locked
28
29
  confirmed: Confirmed
29
30
  approved: Approved
30
- checkout_icalendar_token: Checkout iCalendar token
31
31
  due_date_reminder_days: Due date reminder days
32
32
  note: Note
33
- save_checkout_history: Save checkout history
34
33
  lock_version: Lock version
35
- keyword_list: Keyword list
36
34
  user_number: User number
37
35
  state: State
38
36
  agent: Agent
@@ -43,6 +41,7 @@ en:
43
41
  current_password: Current password
44
42
  locale: Locale
45
43
  password_confirmation: Password confirmation
44
+ auto_generated_password: Set auto-generated password
46
45
  role:
47
46
  name: Name
48
47
  display_name: Display name
@@ -71,8 +70,26 @@ en:
71
70
  edit_mode: Edit mode
72
71
  error_message: Error message
73
72
  user_encoding: Encoding
73
+ default_user_group_id: Default user group
74
+ default_library_id: Default library
74
75
  user_import_result:
75
76
  body: Body
77
+ user_export_file:
78
+ user_export_file_name: Filename
79
+ user_export_file_size: Size
80
+ state: State
81
+ profile:
82
+ note: Note
83
+ keyword_list: Keyword list
84
+ required_role_id: Required role
85
+ user_id: User
86
+ user: User
87
+ user_group_id: User group
88
+ library_id: Library
89
+ locale: Locale
90
+ full_name: Full name
91
+ user_number: User number
92
+ expired_at: Expired at
76
93
 
77
94
  page:
78
95
  user_title: "Welcome %{login_name}"
@@ -184,6 +201,7 @@ en:
184
201
  number_of_pages: "Number of pages"
185
202
  holding_library: "Holding library"
186
203
  resource: "Resource"
204
+ manifestation_and_item: "Manifestation and Item"
187
205
  type: "Type"
188
206
  search_result_feed: "Search result feed"
189
207
  force_reload: "Force reload"
@@ -258,11 +276,12 @@ en:
258
276
  standard_view: "Standard view"
259
277
  mobile_view: "Mobile view"
260
278
  rearrange_order: "Rearrange order"
261
- only_lowercase_letters_and_numbers_are_allowed: "Only lowercase letters and numbers are allowed. The first character must be alphabetic."
279
+ only_lowercase_letters_and_numbers_are_allowed: "is invalid. Only lowercase letters, numbers and underscore are allowed. The first character must be alphabetic."
262
280
  not_logged_in: "Not logged in"
263
281
  add_child: "Add a child"
264
282
  electronic_resource_management: "Electronic resource management"
265
283
  system: System
284
+ manual: Manual
266
285
  title:
267
286
  index: "index"
268
287
  show: "show"
@@ -367,6 +386,12 @@ en:
367
386
  one: "Resource will be impored in a %{minute} minute."
368
387
  other: "Resource will be impored in %{minute} minutes."
369
388
  auto_detect: "Auto detect"
389
+ successfully_created: "%{model} was created successfully. When the task is completed, its status on the list will be updated to 'completed'."
390
+ following_column_were_ignored: "The follwing column(s) were ignored: %{column}"
391
+ export:
392
+ export_completed: Export completed.
393
+ are_you_sure_to_export: It may take some time to complete. Are you sure to export?
394
+ successfully_created: "%{model} task was created successfully. A notification message will be sent to you when the task is completed. You can download the export file from 'Listing %{model}'."
370
395
  user:
371
396
  current_password: "Current password"
372
397
  new_password: "New password"
@@ -401,6 +426,7 @@ en:
401
426
  change_my_password: "Change my password"
402
427
  management: "User management"
403
428
  not_found: "User not found."
429
+ role_is_not_set: "Role is not set."
404
430
  subscribe:
405
431
  this_subscription_is_expired: "This subscription is expired!"
406
432
  role:
@@ -436,3 +462,6 @@ en:
436
462
  already_accepted: "This item is already accepted."
437
463
  accept: "Accept!"
438
464
  successfully_accepted: "This items was successfully accepted."
465
+ user_import_file:
466
+ default_user_group: If "user_group" column is not set in the TSV file, this user group is set to the new user.
467
+ default_library: If "library" column is not set in the TSV file, this library is set to the new user.
@@ -1,12 +1,14 @@
1
1
  ja:
2
2
  activerecord:
3
3
  models:
4
- user: 利用者
4
+ user: 利用者アカウント
5
5
  role: 権限
6
6
  user_group: 利用者グループ
7
7
  user_has_role: 利用者と権限
8
8
  user_import_file: 利用者のインポート用ファイル
9
9
  user_import_result: 利用者インポートの結果
10
+ profile: 利用者
11
+ user_export_file: 利用者情報のエクスポート
10
12
 
11
13
  attributes:
12
14
  user:
@@ -23,16 +25,12 @@ ja:
23
25
  remember_token_expires_at: トークンを忘れないで期限が切れる
24
26
  activation_code: 活性化コード
25
27
  activated_at: 登録時刻
26
- expired_at: 有効期限
27
28
  locked: 利用不可
28
29
  confirmed: 確認済み
29
30
  approved: 承認済み
30
- checkout_icalendar_token: 貸出iCalendarのトークン
31
31
  due_date_reminder_days: Duedateリマインダー日
32
32
  note: 注記
33
- save_checkout_history: 貸出の履歴を保存する
34
33
  lock_version: ロックバージョン
35
- keyword_list: キーワードリスト
36
34
  user_number: 利用者番号
37
35
  state: 状態
38
36
  agent: 人物・団体
@@ -43,6 +41,7 @@ ja:
43
41
  current_password: 現在のパスワード
44
42
  locale: 言語
45
43
  password_confirmation: パスワード(確認)
44
+ auto_generated_password: パスワードの自動生成
46
45
  role:
47
46
  name: 名前
48
47
  display_name: 表示名
@@ -71,8 +70,26 @@ ja:
71
70
  edit_mode: 編集モード
72
71
  error_message: エラーメッセージ
73
72
  user_encoding: 文字コード
73
+ default_user_group_id: 既定の利用者グループ
74
+ default_library_id: 既定の図書館
74
75
  user_import_result:
75
76
  body: 本文
77
+ user_export_file:
78
+ user_export_file_name: ファイル名
79
+ user_export_file_size: ファイルサイズ
80
+ state: 状態
81
+ profile:
82
+ note: 注記
83
+ keyword_list: キーワードリスト
84
+ required_role_id: 閲覧に必要な権限
85
+ user_id: 利用者
86
+ user: 利用者
87
+ user_group_id: 利用者グループ
88
+ library_id: 所属館
89
+ locale: 言語
90
+ full_name: フルネーム
91
+ user_number: 利用者番号
92
+ expired_at: 有効期限
76
93
 
77
94
  page:
78
95
  user_title: "ようこそ %{login_name} さん"
@@ -172,6 +189,7 @@ ja:
172
189
  number_of_pages: "ページ数"
173
190
  holding_library: "所蔵館"
174
191
  resource: "資料"
192
+ manifestation_and_item: "書誌と所蔵"
175
193
  type: "種類"
176
194
  search_result_feed: "検索結果のフィード"
177
195
  force_reload: "強制的に再読込を行う"
@@ -242,11 +260,12 @@ ja:
242
260
  standard_view: "パソコン用の画面"
243
261
  mobile_view: "携帯機器用の画面"
244
262
  rearrange_order: "順番を変更する"
245
- only_lowercase_letters_and_numbers_are_allowed: "英数小文字のみ使用できます。最初の文字に数字は使用できません。"
263
+ only_lowercase_letters_and_numbers_are_allowed: "には英数小文字・アンダースコアのみ使用できます。最初の文字に数字は使用できません。"
246
264
  not_logged_in: "ログインしていません"
247
265
  add_child: "子を追加"
248
266
  electronic_resource_management: 電子リソース管理
249
267
  system: システム
268
+ manual: マニュアル
250
269
  title:
251
270
  index: "一覧"
252
271
  show: "表示"
@@ -348,6 +367,12 @@ ja:
348
367
  from_isbn: "ISBNから"
349
368
  will_be_imported: "%{minute} 分以内にインポートされます。"
350
369
  auto_detect: "自動判別"
370
+ successfully_created: "%{model}は正常に作成されました。インポートが完了すると「%{model}の一覧」の状態が「完了」となります。"
371
+ following_column_were_ignored: "次の列は無視されました。 %{column}"
372
+ export:
373
+ export_completed: エクスポートが完了しました。
374
+ are_you_sure_to_export: エクスポートに時間がかかることがあります。本当にエクスポートしますか?
375
+ successfully_created: "%{model}の処理は正常に作成されました。エクスポートが完了しましたら、メッセージでお知らせします。エクスポートしたファイルは「%{model}の一覧」からダウンロードできます。"
351
376
  user:
352
377
  current_password: "現在のパスワード"
353
378
  new_password: "新しいパスワード"
@@ -382,6 +407,7 @@ ja:
382
407
  change_my_password: "パスワードを変更する"
383
408
  management: "利用者の管理"
384
409
  not_found: "利用者が見つかりません。"
410
+ role_is_not_set: "権限が設定されていません。"
385
411
  subscribe:
386
412
  this_subscription_is_expired: "購読期間が過ぎています。"
387
413
  role:
@@ -417,3 +443,6 @@ ja:
417
443
  already_accepted: "この資料はすでに検収されています。"
418
444
  accept: "検収"
419
445
  successfully_accepted: "この資料は正常に検収されました。"
446
+ user_import_file:
447
+ default_user_group: TSVファイルで"user_group"列が指定されていない場合、この利用者グループが登録されます。
448
+ default_library: TSVファイルで"library"列が指定されていない場合、この図書館が登録されます。
data/config/routes.rb CHANGED
@@ -3,6 +3,10 @@ Rails.application.routes.draw do
3
3
  mount Resque::Server.new, :at => "/resque", :as => :resque
4
4
  end
5
5
 
6
+ resources :profiles
7
+
8
+ resources :user_export_files
9
+
6
10
  resources :user_import_results, :only => [:index, :show, :destroy]
7
11
 
8
12
  resources :user_import_files do
@@ -11,17 +15,10 @@ Rails.application.routes.draw do
11
15
 
12
16
  resource :my_account
13
17
 
14
- #resources :users do
15
- # resource :patron
16
- #end
17
- resources :users
18
-
19
18
  resources :roles, :except => [:new, :create, :destroy]
20
19
 
21
20
  resources :user_groups
22
21
 
23
- resources :local_patrons, :only => :show
24
-
25
22
  resources :accepts
26
23
 
27
24
  resources :baskets do
@@ -1,15 +1,8 @@
1
1
  class AddAdditionalAttributesToUser < ActiveRecord::Migration
2
2
  def change
3
3
  add_column :users, :username, :string
4
- add_column :users, :user_number, :string
5
- add_column :users, :locale, :string
6
4
  add_column :users, :deleted_at, :datetime
7
5
  add_column :users, :expired_at, :datetime
8
- add_column :users, :library_id, :integer, :default => 1, :null => false
9
- add_column :users, :required_role_id, :integer, :default => 1, :null => false
10
- add_column :users, :user_group_id, :integer, :default => 1, :null => false
11
- add_column :users, :note, :text
12
- add_column :users, :keyword_list, :text
13
6
 
14
7
  add_column :users, :failed_attempts, :integer, :default => 0
15
8
  add_column :users, :unlock_token, :string
@@ -18,8 +11,6 @@ class AddAdditionalAttributesToUser < ActiveRecord::Migration
18
11
  add_column :users, :confirmed_at, :datetime
19
12
 
20
13
  add_index :users, :username, :unique => true
21
- add_index :users, :user_group_id
22
- add_index :users, :user_number, :unique => true
23
14
  add_index :users, :unlock_token, :unique => true
24
15
  end
25
16
  end
@@ -15,6 +15,6 @@ class CreateProfiles < ActiveRecord::Migration
15
15
  end
16
16
 
17
17
  add_index :profiles, :user_id
18
- add_index :profiles, :user_number
18
+ add_index :profiles, :user_number, :unique => true
19
19
  end
20
20
  end
@@ -0,0 +1,11 @@
1
+ class CreateUserExportFiles < ActiveRecord::Migration
2
+ def change
3
+ create_table :user_export_files do |t|
4
+ t.integer :user_id
5
+ t.attachment :user_export
6
+ t.datetime :executed_at
7
+
8
+ t.timestamps
9
+ end
10
+ end
11
+ end