enju_circulation 0.1.0.pre36 → 0.1.0.pre37

Sign up to get free protection for your applications and to get access to all the features.
Files changed (398) hide show
  1. checksums.yaml +4 -4
  2. data/app/controllers/carrier_type_has_checkout_types_controller.rb +11 -11
  3. data/app/controllers/checked_items_controller.rb +13 -13
  4. data/app/controllers/checkins_controller.rb +14 -15
  5. data/app/controllers/checkout_types_controller.rb +10 -10
  6. data/app/controllers/checkouts_controller.rb +18 -19
  7. data/app/controllers/item_has_use_restrictions_controller.rb +10 -10
  8. data/app/controllers/lending_policies_controller.rb +1 -1
  9. data/app/controllers/manifestation_checkout_stats_controller.rb +15 -13
  10. data/app/controllers/manifestation_reserve_stats_controller.rb +15 -13
  11. data/app/controllers/reserves_controller.rb +27 -28
  12. data/app/controllers/user_checkout_stats_controller.rb +15 -13
  13. data/app/controllers/user_group_has_checkout_types_controller.rb +11 -11
  14. data/app/controllers/user_reserve_stats_controller.rb +15 -13
  15. data/app/models/carrier_type_has_checkout_type.rb +6 -6
  16. data/app/models/checked_item.rb +20 -18
  17. data/app/models/checkin.rb +13 -14
  18. data/app/models/checkout.rb +20 -21
  19. data/app/models/checkout_stat_has_manifestation.rb +2 -2
  20. data/app/models/checkout_stat_has_user.rb +2 -2
  21. data/app/models/checkout_type.rb +9 -9
  22. data/app/models/circulation_status.rb +13 -3
  23. data/app/models/enju_circulation/ability.rb +1 -1
  24. data/app/models/item_has_use_restriction.rb +3 -3
  25. data/app/models/lending_policy.rb +4 -4
  26. data/app/models/manifestation_checkout_stat.rb +4 -3
  27. data/app/models/manifestation_checkout_stat_transition.rb +13 -0
  28. data/app/models/manifestation_reserve_stat.rb +4 -3
  29. data/app/models/manifestation_reserve_stat_transition.rb +13 -0
  30. data/app/models/reserve.rb +123 -157
  31. data/app/models/reserve_stat_has_manifestation.rb +2 -2
  32. data/app/models/reserve_stat_has_user.rb +2 -2
  33. data/app/models/reserve_state_machine.rb +93 -0
  34. data/app/models/reserve_transition.rb +20 -0
  35. data/app/models/use_restriction.rb +5 -5
  36. data/app/models/user_checkout_stat.rb +4 -3
  37. data/app/models/user_checkout_stat_transition.rb +13 -0
  38. data/app/models/user_group_has_checkout_type.rb +8 -8
  39. data/app/models/user_reserve_stat.rb +4 -3
  40. data/app/models/user_reserve_stat_transition.rb +13 -0
  41. data/app/views/carrier_type_has_checkout_types/_form.html.erb +3 -3
  42. data/app/views/carrier_type_has_checkout_types/edit.html.erb +1 -1
  43. data/app/views/carrier_type_has_checkout_types/index.html.erb +3 -3
  44. data/app/views/carrier_type_has_checkout_types/new.html.erb +1 -1
  45. data/app/views/carrier_type_has_checkout_types/show.html.erb +1 -1
  46. data/app/views/carrier_types/_checkout_form.html.erb +1 -1
  47. data/app/views/checked_items/_checked_item.html.erb +3 -3
  48. data/app/views/checked_items/_checkout.html.erb +3 -3
  49. data/app/views/checked_items/_list.html.erb +3 -3
  50. data/app/views/checked_items/edit.html.erb +1 -1
  51. data/app/views/checked_items/index.html.erb +1 -1
  52. data/app/views/checked_items/new.html.erb +3 -3
  53. data/app/views/checked_items/show.html.erb +1 -1
  54. data/app/views/checkins/_checkin.html.erb +3 -3
  55. data/app/views/checkins/_form.html.erb +1 -1
  56. data/app/views/checkins/_list.html.erb +2 -2
  57. data/app/views/checkins/edit.html.erb +1 -1
  58. data/app/views/checkins/index.html.erb +2 -2
  59. data/app/views/checkins/new.html.erb +3 -3
  60. data/app/views/checkins/show.html.erb +1 -1
  61. data/app/views/checkout_types/_form.html.erb +2 -2
  62. data/app/views/checkout_types/edit.html.erb +1 -1
  63. data/app/views/checkout_types/index.html.erb +4 -4
  64. data/app/views/checkout_types/new.html.erb +1 -1
  65. data/app/views/checkout_types/show.html.erb +2 -2
  66. data/app/views/checkouts/_index.html.erb +7 -7
  67. data/app/views/checkouts/_index_item.html.erb +5 -5
  68. data/app/views/checkouts/_index_overdue.html.erb +7 -7
  69. data/app/views/checkouts/_index_user.html.erb +13 -13
  70. data/app/views/checkouts/_list.html.erb +5 -5
  71. data/app/views/checkouts/_reserved_facet.html.erb +2 -2
  72. data/app/views/checkouts/edit.html.erb +8 -8
  73. data/app/views/checkouts/index.atom.builder +3 -3
  74. data/app/views/checkouts/index.html.erb +3 -3
  75. data/app/views/checkouts/index.rss.builder +9 -9
  76. data/app/views/checkouts/index.txt.erb +4 -0
  77. data/app/views/checkouts/new.html.erb +2 -2
  78. data/app/views/checkouts/show.html.erb +7 -7
  79. data/app/views/circulation_statuses/_form.html.erb +2 -2
  80. data/app/views/circulation_statuses/edit.html.erb +1 -1
  81. data/app/views/circulation_statuses/index.html.erb +3 -3
  82. data/app/views/circulation_statuses/new.html.erb +1 -1
  83. data/app/views/circulation_statuses/show.html.erb +1 -1
  84. data/app/views/item_has_use_restrictions/edit.html.erb +1 -1
  85. data/app/views/item_has_use_restrictions/index.html.erb +4 -4
  86. data/app/views/item_has_use_restrictions/new.html.erb +2 -2
  87. data/app/views/item_has_use_restrictions/show.html.erb +1 -1
  88. data/app/views/lending_policies/_form.html.erb +1 -1
  89. data/app/views/lending_policies/edit.html.erb +1 -1
  90. data/app/views/lending_policies/index.html.erb +2 -2
  91. data/app/views/lending_policies/new.html.erb +1 -1
  92. data/app/views/lending_policies/show.html.erb +2 -2
  93. data/app/views/manifestation_checkout_stats/_form.html.erb +1 -1
  94. data/app/views/manifestation_checkout_stats/edit.html.erb +1 -1
  95. data/app/views/manifestation_checkout_stats/index.html.erb +3 -4
  96. data/app/views/manifestation_checkout_stats/new.html.erb +1 -1
  97. data/app/views/manifestation_checkout_stats/show.html.erb +3 -4
  98. data/app/views/manifestation_checkout_stats/show.txt.erb +4 -0
  99. data/app/views/manifestation_reserve_stats/_form.html.erb +1 -1
  100. data/app/views/manifestation_reserve_stats/edit.html.erb +1 -1
  101. data/app/views/manifestation_reserve_stats/index.html.erb +3 -4
  102. data/app/views/manifestation_reserve_stats/new.html.erb +1 -1
  103. data/app/views/manifestation_reserve_stats/show.html.erb +3 -4
  104. data/app/views/manifestation_reserve_stats/show.txt.erb +4 -0
  105. data/app/views/my_accounts/_feed_token.html.erb +3 -3
  106. data/app/views/reserves/_form.html.erb +1 -1
  107. data/app/views/reserves/_new.html.erb +9 -9
  108. data/app/views/reserves/_new_user.html.erb +13 -13
  109. data/app/views/reserves/_state_facet.html.erb +2 -2
  110. data/app/views/reserves/_title.html.erb +1 -1
  111. data/app/views/reserves/edit.html.erb +7 -7
  112. data/app/views/reserves/index.atom.builder +3 -3
  113. data/app/views/reserves/index.html.erb +26 -26
  114. data/app/views/reserves/index.rss.builder +10 -10
  115. data/app/views/reserves/index.txt.erb +4 -0
  116. data/app/views/reserves/show.html.erb +9 -9
  117. data/app/views/use_restrictions/_form.html.erb +2 -2
  118. data/app/views/use_restrictions/edit.html.erb +1 -1
  119. data/app/views/use_restrictions/index.html.erb +3 -3
  120. data/app/views/use_restrictions/new.html.erb +1 -1
  121. data/app/views/use_restrictions/show.html.erb +1 -1
  122. data/app/views/user_checkout_stats/_form.html.erb +1 -1
  123. data/app/views/user_checkout_stats/edit.html.erb +1 -1
  124. data/app/views/user_checkout_stats/index.html.erb +3 -4
  125. data/app/views/user_checkout_stats/new.html.erb +1 -1
  126. data/app/views/user_checkout_stats/show.html.erb +3 -4
  127. data/app/views/user_checkout_stats/show.txt.erb +4 -0
  128. data/app/views/user_group_has_checkout_types/edit.html.erb +7 -7
  129. data/app/views/user_group_has_checkout_types/index.html.erb +3 -3
  130. data/app/views/user_group_has_checkout_types/new.html.erb +9 -9
  131. data/app/views/user_group_has_checkout_types/show.html.erb +1 -1
  132. data/app/views/user_groups/_checkout_form.html.erb +6 -6
  133. data/app/views/user_reserve_stats/_form.html.erb +1 -1
  134. data/app/views/user_reserve_stats/edit.html.erb +1 -1
  135. data/app/views/user_reserve_stats/index.html.erb +3 -4
  136. data/app/views/user_reserve_stats/new.html.erb +1 -1
  137. data/app/views/user_reserve_stats/show.html.erb +3 -4
  138. data/app/views/user_reserve_stats/show.txt.erb +4 -0
  139. data/app/views/users/_feed_token.html.erb +3 -3
  140. data/config/initializers/inflections.rb +3 -0
  141. data/config/locales/translation_en.yml +6 -0
  142. data/config/locales/translation_ja.yml +6 -0
  143. data/config/routes.rb +8 -10
  144. data/db/migrate/035_create_reserves.rb +0 -1
  145. data/db/migrate/20081212080038_create_manifestation_checkout_stats.rb +0 -1
  146. data/db/migrate/20081215094302_create_user_checkout_stats.rb +0 -1
  147. data/db/migrate/20081216190724_create_manifestation_reserve_stats.rb +0 -1
  148. data/db/migrate/20081220023628_create_user_reserve_stats.rb +0 -1
  149. data/db/migrate/20090321130448_add_completed_at_to_user_checkout_stat.rb +0 -4
  150. data/db/migrate/20140518050147_create_reserve_transitions.rb +14 -0
  151. data/db/migrate/20140810061942_add_user_id_to_user_checkout_stat.rb +12 -0
  152. data/db/migrate/20140810091231_add_checkout_icalendar_token_to_profile.rb +6 -0
  153. data/db/migrate/20140810091417_add_save_checkout_history_to_profile.rb +5 -0
  154. data/lib/enju_circulation/engine.rb +0 -4
  155. data/lib/enju_circulation/item.rb +4 -4
  156. data/lib/enju_circulation/manifestation.rb +2 -2
  157. data/lib/enju_circulation/profile.rb +26 -0
  158. data/lib/enju_circulation/user.rb +1 -1
  159. data/lib/enju_circulation/version.rb +1 -1
  160. data/lib/enju_circulation.rb +2 -0
  161. data/lib/generators/enju_circulation/setup/setup_generator.rb +2 -0
  162. data/lib/generators/enju_circulation/setup/templates/db/fixtures/circulation_statuses.yml +48 -25
  163. data/lib/generators/enju_circulation/setup/templates/db/fixtures/use_restrictions.yml +39 -13
  164. data/lib/tasks/circulation_status.rb +6 -0
  165. data/lib/tasks/enju_circulation_tasks.rake +14 -0
  166. data/lib/tasks/reserve.rb +5 -0
  167. data/lib/tasks/use_restriction.rb +6 -0
  168. data/spec/controllers/carrier_type_has_checkout_types_controller_spec.rb +21 -21
  169. data/spec/controllers/checkins_controller_spec.rb +22 -22
  170. data/spec/controllers/checkout_types_controller_spec.rb +21 -21
  171. data/spec/controllers/checkouts_controller_spec.rb +14 -14
  172. data/spec/controllers/circulation_statuses_controller_spec.rb +21 -21
  173. data/spec/controllers/item_has_use_restrictions_controller_spec.rb +21 -21
  174. data/spec/controllers/lending_policies_controller_spec.rb +21 -21
  175. data/spec/controllers/manifestation_checkout_stats_controller_spec.rb +21 -21
  176. data/spec/controllers/manifestation_reserve_stats_controller_spec.rb +21 -21
  177. data/spec/controllers/reserves_controller_spec.rb +32 -32
  178. data/spec/controllers/use_restrictions_controller_spec.rb +21 -21
  179. data/spec/controllers/user_checkout_stats_controller_spec.rb +21 -21
  180. data/spec/controllers/user_group_has_checkout_types_controller_spec.rb +21 -21
  181. data/spec/controllers/user_reserve_stats_controller_spec.rb +21 -21
  182. data/spec/dummy/app/models/user.rb +2 -46
  183. data/spec/dummy/config/environments/test.rb +2 -0
  184. data/spec/dummy/db/development.sqlite3 +0 -0
  185. data/spec/dummy/db/migrate/001_create_agents.rb +0 -8
  186. data/spec/dummy/db/migrate/005_create_manifestations.rb +7 -12
  187. data/spec/dummy/db/migrate/006_create_items.rb +0 -6
  188. data/spec/dummy/db/migrate/112_create_frequencies.rb +12 -0
  189. data/spec/dummy/db/migrate/117_create_form_of_works.rb +12 -0
  190. data/spec/dummy/db/migrate/154_create_messages.rb +0 -1
  191. data/spec/dummy/db/migrate/20080819181903_create_message_requests.rb +0 -2
  192. data/spec/dummy/db/migrate/20081028083142_create_agent_import_files.rb +20 -0
  193. data/spec/dummy/db/migrate/20081028083208_create_resource_import_files.rb +20 -0
  194. data/spec/dummy/db/migrate/20090705133942_add_attachments_picture_to_picture_file.rb +15 -0
  195. data/spec/dummy/db/migrate/20090705212043_add_attachments_attachment_to_manifestation.rb +15 -0
  196. data/spec/dummy/db/migrate/20090719201843_create_extents.rb +12 -0
  197. data/spec/dummy/db/migrate/20090720091106_create_medium_of_performances.rb +12 -0
  198. data/spec/dummy/db/migrate/20090720091429_create_content_types.rb +12 -0
  199. data/spec/dummy/db/migrate/20091025080447_create_licenses.rb +12 -0
  200. data/spec/dummy/db/migrate/20100129142347_create_import_requests.rb +14 -0
  201. data/spec/dummy/db/migrate/20100925043847_create_resource_import_results.rb +15 -0
  202. data/spec/dummy/db/migrate/20100925074559_create_agent_import_results.rb +12 -0
  203. data/spec/dummy/db/migrate/20110603184217_add_edit_mode_to_resource_import_file.rb +9 -0
  204. data/spec/dummy/db/migrate/20110620173525_add_bookstore_id_to_item.rb +11 -0
  205. data/spec/dummy/db/migrate/20111201155456_devise_create_users.rb +42 -0
  206. data/spec/dummy/db/migrate/20120125050502_add_depth_to_message.rb +6 -0
  207. data/spec/dummy/db/migrate/20120129020544_add_budget_type_id_to_item.rb +6 -0
  208. data/spec/dummy/db/migrate/20120319120638_add_content_type_id_to_manifestation.rb +6 -0
  209. data/spec/dummy/db/migrate/20120410104851_add_year_of_publication_to_manifestation.rb +5 -0
  210. data/spec/dummy/db/migrate/20120413072700_add_picture_meta_to_picture_file.rb +5 -0
  211. data/spec/dummy/db/migrate/20120413100352_add_fingerprint_to_picture_file.rb +5 -0
  212. data/spec/dummy/db/migrate/20120413161340_add_fingerprint_to_resource_import_file.rb +5 -0
  213. data/spec/dummy/db/migrate/20120413161403_add_fingerprint_to_agent_import_file.rb +5 -0
  214. data/spec/dummy/db/migrate/20120413170705_add_error_message_to_resource_import_file.rb +5 -0
  215. data/spec/dummy/db/migrate/20120413170720_add_error_message_to_agent_import_file.rb +5 -0
  216. data/spec/dummy/db/migrate/20120415164821_add_attachment_meta_to_manifestation.rb +5 -0
  217. data/spec/dummy/db/migrate/20120418081407_add_month_of_publication_to_manifestation.rb +5 -0
  218. data/spec/dummy/db/migrate/20120511072422_add_agent_identifier_to_agent.rb +6 -0
  219. data/spec/dummy/db/migrate/20120602141129_add_edit_mode_to_agent_import_file.rb +5 -0
  220. data/spec/dummy/db/migrate/20121116031206_add_fulltext_content_to_manifestation.rb +5 -0
  221. data/spec/dummy/db/migrate/20130221154434_add_additional_attributes_to_user.rb +16 -0
  222. data/spec/dummy/db/migrate/20130421155019_add_creator_string_to_series_statement.rb +7 -0
  223. data/spec/dummy/db/migrate/20130421164124_add_series_master_to_series_statement.rb +5 -0
  224. data/spec/dummy/db/migrate/20130429020822_add_root_manifestation_id_to_series_statement.rb +6 -0
  225. data/spec/dummy/db/migrate/20140122054321_create_profiles.rb +20 -0
  226. data/spec/dummy/db/migrate/20140518111006_create_message_transitions.rb +14 -0
  227. data/spec/dummy/db/migrate/20140518135713_create_message_request_transitions.rb +14 -0
  228. data/spec/dummy/db/migrate/20140519170214_create_resource_import_file_transitions.rb +14 -0
  229. data/spec/dummy/db/migrate/20140519171220_create_import_request_transitions.rb +14 -0
  230. data/spec/dummy/db/migrate/20140524020735_create_agent_import_file_transitions.rb +14 -0
  231. data/spec/dummy/db/migrate/20140614065404_create_resource_export_files.rb +11 -0
  232. data/spec/dummy/db/migrate/20140614141500_create_resource_export_file_transitions.rb +14 -0
  233. data/spec/dummy/db/migrate/20140628073524_add_user_encoding_to_agent_import_file.rb +5 -0
  234. data/spec/dummy/db/migrate/20140628073535_add_user_encoding_to_resource_import_file.rb +5 -0
  235. data/spec/dummy/db/migrate/20140720140916_add_binding_item_identifier_to_item.rb +8 -0
  236. data/spec/dummy/db/migrate/20140721151416_add_default_shelf_id_to_resource_import_file.rb +5 -0
  237. data/spec/dummy/db/migrate/20140802082007_add_manifestation_id_to_item.rb +6 -0
  238. data/spec/dummy/db/migrate/20140811031145_add_expired_at_to_profile.rb +5 -0
  239. data/spec/dummy/db/schema.rb +315 -56
  240. data/spec/dummy/db/test.sqlite3 +0 -0
  241. data/spec/dummy/solr/conf/admin-extra.html +31 -0
  242. data/spec/dummy/solr/conf/elevate.xml +36 -0
  243. data/spec/dummy/solr/conf/mapping-ISOLatin1Accent.txt +246 -0
  244. data/spec/dummy/solr/conf/protwords.txt +21 -0
  245. data/spec/dummy/solr/conf/schema.xml +255 -0
  246. data/spec/dummy/solr/conf/scripts.conf +24 -0
  247. data/spec/dummy/solr/conf/solrconfig.xml +667 -0
  248. data/spec/dummy/solr/conf/spellings.txt +2 -0
  249. data/spec/dummy/solr/conf/stopwords.txt +58 -0
  250. data/spec/dummy/solr/conf/synonyms.txt +31 -0
  251. data/spec/dummy/solr/default/data/index/_7f0.fdt +0 -0
  252. data/spec/dummy/solr/default/data/index/_7f0.fdx +0 -0
  253. data/spec/dummy/solr/default/data/index/_7f0.fnm +0 -0
  254. data/spec/dummy/solr/default/data/index/_7f0.nvd +0 -0
  255. data/spec/dummy/solr/default/data/index/_7f0.nvm +0 -0
  256. data/spec/dummy/solr/default/data/index/_7f0.si +0 -0
  257. data/spec/dummy/solr/default/data/index/_7f0_Lucene41_0.doc +0 -0
  258. data/spec/dummy/solr/default/data/index/_7f0_Lucene41_0.pos +0 -0
  259. data/spec/dummy/solr/default/data/index/_7f0_Lucene41_0.tim +0 -0
  260. data/spec/dummy/solr/default/data/index/_7f0_Lucene41_0.tip +0 -0
  261. data/spec/dummy/solr/default/data/index/segments.gen +0 -0
  262. data/spec/dummy/solr/default/data/index/segments_bvw +0 -0
  263. data/spec/dummy/solr/default/data/tlog/tlog.0000000000000015394 +0 -0
  264. data/spec/dummy/solr/default/data/tlog/tlog.0000000000000015395 +0 -0
  265. data/spec/dummy/solr/default/data/tlog/tlog.0000000000000015396 +0 -0
  266. data/spec/dummy/solr/default/data/tlog/tlog.0000000000000015397 +0 -0
  267. data/spec/dummy/solr/default/data/tlog/tlog.0000000000000015398 +0 -0
  268. data/spec/dummy/solr/default/data/tlog/tlog.0000000000000015399 +0 -0
  269. data/spec/dummy/solr/default/data/tlog/tlog.0000000000000015400 +0 -0
  270. data/spec/dummy/solr/default/data/tlog/tlog.0000000000000015401 +0 -0
  271. data/spec/dummy/solr/default/data/tlog/tlog.0000000000000015402 +0 -0
  272. data/spec/dummy/solr/development/data/index/segments.gen +0 -0
  273. data/spec/dummy/solr/development/data/index/segments_1 +0 -0
  274. data/spec/dummy/solr/solr.xml +8 -0
  275. data/spec/dummy/solr/test/data/index/segments.gen +0 -0
  276. data/spec/dummy/solr/test/data/index/segments_1 +0 -0
  277. data/spec/dummy/tmp/cache/assets/test/sprockets/0007f9aec08cc2727b3d00cd62cf1d0f +0 -0
  278. data/spec/dummy/tmp/cache/assets/test/sprockets/0440b81b0aae840cf287a686585a8cec +0 -0
  279. data/spec/dummy/tmp/cache/assets/test/sprockets/0e3e358e4fe4601ba5e435f6d0c86f12 +0 -0
  280. data/spec/dummy/tmp/cache/assets/test/sprockets/129cec5384c0f26fcfb0ce65048298c5 +0 -0
  281. data/spec/dummy/tmp/cache/assets/test/sprockets/1572dfd6f1e555f4be1aa60ddc3cb0c0 +0 -0
  282. data/spec/dummy/tmp/cache/assets/test/sprockets/181c975b1296d7ebe81714d5e64bc098 +0 -0
  283. data/spec/dummy/tmp/cache/assets/test/sprockets/1c1fbab93e4552626da626e0dbe70c74 +0 -0
  284. data/spec/dummy/tmp/cache/assets/test/sprockets/1e58a07a3701da9fb9c176d67162af2b +0 -0
  285. data/spec/dummy/tmp/cache/assets/test/sprockets/2b35ad8fee7e1228e205669278e2adda +0 -0
  286. data/spec/dummy/tmp/cache/assets/test/sprockets/2f09f58943a88f21e3a0318621391785 +0 -0
  287. data/spec/dummy/tmp/cache/assets/test/sprockets/2ffe508d0533d0afd2a37bb574eda40d +0 -0
  288. data/spec/dummy/tmp/cache/assets/test/sprockets/3753d928863ee65118b9f2da1c6e504d +0 -0
  289. data/spec/dummy/tmp/cache/assets/test/sprockets/40e90f0c329b14292a9ff1a2fe907b39 +0 -0
  290. data/spec/dummy/tmp/cache/assets/test/sprockets/45f3c74e1e31b58d9bda6908d5623290 +0 -0
  291. data/spec/dummy/tmp/cache/assets/test/sprockets/49a3464eb6bcffb3d9f5b47b133edabb +0 -0
  292. data/spec/dummy/tmp/cache/assets/test/sprockets/49d32c13d390c1b80d8b2705aac86579 +0 -0
  293. data/spec/dummy/tmp/cache/assets/test/sprockets/4aa18096a209e515f5f1df487622cdf4 +0 -0
  294. data/spec/dummy/tmp/cache/assets/test/sprockets/50e64f45f0cb4cee52fd3f3908f89a82 +0 -0
  295. data/spec/dummy/tmp/cache/assets/test/sprockets/51f7d34a9e9bebb47b7201cfebfec34d +0 -0
  296. data/spec/dummy/tmp/cache/assets/test/sprockets/5995180d1cfd7cad71ec6d9e1a538f0e +0 -0
  297. data/spec/dummy/tmp/cache/assets/test/sprockets/604e0e4b3c01d488d6fb087e9fdaeb94 +0 -0
  298. data/spec/dummy/tmp/cache/assets/test/sprockets/6401fc09d2b894df2ad251b007df145a +0 -0
  299. data/spec/dummy/tmp/cache/assets/test/sprockets/65a8d4d288e5f082f0166aa7be7a2464 +0 -0
  300. data/spec/dummy/tmp/cache/assets/test/sprockets/6f5d66df18892df6af39c9cfd784f0f5 +0 -0
  301. data/spec/dummy/tmp/cache/assets/test/sprockets/6fcdd2234a7c25f9d4179ca12fd9f7b4 +0 -0
  302. data/spec/dummy/tmp/cache/assets/test/sprockets/6fdb4513af157010ef79b56df44d665e +0 -0
  303. data/spec/dummy/tmp/cache/assets/test/sprockets/750439d8043ed022910956fbb55faa65 +0 -0
  304. data/spec/dummy/tmp/cache/assets/test/sprockets/811e5198d0dc4efe02d28c0c2215e207 +0 -0
  305. data/spec/dummy/tmp/cache/assets/test/sprockets/83ea20e0b25e77f5dce5bf733b088292 +0 -0
  306. data/spec/dummy/tmp/cache/assets/test/sprockets/9604073a83f822f13caaabd7e157bbbb +0 -0
  307. data/spec/dummy/tmp/cache/assets/test/sprockets/98d02556564ee10aef4c3397bb94d5b9 +0 -0
  308. data/spec/dummy/tmp/cache/assets/test/sprockets/9cfe4d48f5258863dbfb3623c797fb15 +0 -0
  309. data/spec/dummy/tmp/cache/assets/test/sprockets/a296264dcc89e1f8ab6382e678ffbe38 +0 -0
  310. data/spec/dummy/tmp/cache/assets/test/sprockets/aa2e1ada35daa496bb08e85fcb817536 +0 -0
  311. data/spec/dummy/tmp/cache/assets/test/sprockets/abee2d4cb18d15789dcdc9c680f3e6de +0 -0
  312. data/spec/dummy/tmp/cache/assets/test/sprockets/c1ab0ecf3cf57db41d9e4cd9306d8829 +0 -0
  313. data/spec/dummy/tmp/cache/assets/test/sprockets/c4a984c6feb506f3e1f9120a8d029bda +0 -0
  314. data/spec/dummy/tmp/cache/assets/test/sprockets/ccdcb26ebc6ef3b684368b368edf4f99 +0 -0
  315. data/spec/dummy/tmp/cache/assets/test/sprockets/d34b5413caa9407126db68d5d590804a +0 -0
  316. data/spec/dummy/tmp/cache/assets/test/sprockets/d4ac74c17332ad931b72f42d7997fcc0 +0 -0
  317. data/spec/dummy/tmp/cache/assets/test/sprockets/dd672deb061233e0db1d2f413d27213f +0 -0
  318. data/spec/dummy/tmp/cache/assets/test/sprockets/e1fcfb0faa3c12467a1c35251e04c8b1 +0 -0
  319. data/spec/dummy/tmp/cache/assets/test/sprockets/e2d21478696ac96ad895f7c3b8d31594 +0 -0
  320. data/spec/dummy/tmp/cache/assets/test/sprockets/e577e9ce00153ad2e59111f761d0fb15 +0 -0
  321. data/spec/dummy/tmp/cache/assets/test/sprockets/e9738177de2083b68d42e053a1529244 +0 -0
  322. data/spec/dummy/tmp/cache/assets/test/sprockets/e9ce2df3f0160329df69b22a911dbd04 +0 -0
  323. data/spec/dummy/tmp/cache/assets/test/sprockets/f2e83d3b5fe984832bfeff09b0e3b8d2 +0 -0
  324. data/spec/dummy/tmp/cache/assets/test/sprockets/f90eee17e0e5eaea50e6064ded54617c +0 -0
  325. data/spec/dummy/tmp/cache/assets/test/sprockets/fa8e81ce1d45228121b9df5618542190 +0 -0
  326. data/spec/dummy/tmp/cache/assets/test/sprockets/fbdc1d9347cb228f06807b76c6c2974e +0 -0
  327. data/spec/dummy/tmp/cache/stdout +1262 -0
  328. data/spec/dummy/tmp/pids/redis-test.pid +1 -0
  329. data/spec/factories/profile.rb +9 -0
  330. data/spec/factories/reserve.rb +7 -1
  331. data/spec/factories/user.rb +3 -9
  332. data/spec/fixtures/agents.yml +0 -12
  333. data/spec/fixtures/checkouts.yml +12 -1
  334. data/spec/fixtures/items.yml +48 -25
  335. data/spec/fixtures/manifestation_checkout_stats.yml +3 -4
  336. data/spec/fixtures/manifestation_reserve_stats.yml +3 -4
  337. data/spec/fixtures/message_requests.yml +0 -3
  338. data/spec/fixtures/message_templates.yml +41 -20
  339. data/spec/fixtures/profiles.yml +83 -0
  340. data/spec/fixtures/reserve_transitions.yml +88 -0
  341. data/spec/fixtures/reserves.yml +1 -18
  342. data/spec/fixtures/user_checkout_stats.yml +3 -4
  343. data/spec/fixtures/user_groups.yml +3 -3
  344. data/spec/fixtures/user_reserve_stats.yml +3 -4
  345. data/spec/fixtures/users.yml +0 -55
  346. data/spec/models/checked_item_spec.rb +2 -1
  347. data/spec/models/checkout_spec.rb +0 -1
  348. data/spec/models/manifestation_checkout_stat_spec.rb +4 -2
  349. data/spec/models/manifestation_reserve_stat_spec.rb +4 -2
  350. data/spec/models/reserve_spec.rb +9 -11
  351. data/spec/models/user_checkout_stat_spec.rb +4 -2
  352. data/spec/models/user_reserve_stat_spec.rb +4 -2
  353. data/spec/support/resque.rb +25 -22
  354. metadata +325 -92
  355. data/app/controllers/checkout_stat_has_manifestations_controller.rb +0 -81
  356. data/app/controllers/checkout_stat_has_users_controller.rb +0 -81
  357. data/app/controllers/reserve_stat_has_manifestations_controller.rb +0 -81
  358. data/app/controllers/reserve_stat_has_users_controller.rb +0 -81
  359. data/app/models/circulation_sweeper.rb +0 -24
  360. data/app/views/checkout_stat_has_manifestations/_form.html.erb +0 -15
  361. data/app/views/checkout_stat_has_manifestations/edit.html.erb +0 -13
  362. data/app/views/checkout_stat_has_manifestations/index.html.erb +0 -33
  363. data/app/views/checkout_stat_has_manifestations/new.html.erb +0 -12
  364. data/app/views/checkout_stat_has_manifestations/show.html.erb +0 -28
  365. data/app/views/checkout_stat_has_users/_form.html.erb +0 -15
  366. data/app/views/checkout_stat_has_users/edit.html.erb +0 -13
  367. data/app/views/checkout_stat_has_users/index.html.erb +0 -33
  368. data/app/views/checkout_stat_has_users/new.html.erb +0 -12
  369. data/app/views/checkout_stat_has_users/show.html.erb +0 -28
  370. data/app/views/checkouts/index.csv.erb +0 -4
  371. data/app/views/manifestation_checkout_stats/show.csv.erb +0 -4
  372. data/app/views/manifestation_reserve_stats/show.csv.erb +0 -4
  373. data/app/views/reserve_stat_has_manifestations/_form.html.erb +0 -15
  374. data/app/views/reserve_stat_has_manifestations/edit.html.erb +0 -13
  375. data/app/views/reserve_stat_has_manifestations/index.html.erb +0 -33
  376. data/app/views/reserve_stat_has_manifestations/new.html.erb +0 -12
  377. data/app/views/reserve_stat_has_manifestations/show.html.erb +0 -28
  378. data/app/views/reserve_stat_has_users/_form.html.erb +0 -15
  379. data/app/views/reserve_stat_has_users/edit.html.erb +0 -13
  380. data/app/views/reserve_stat_has_users/index.html.erb +0 -33
  381. data/app/views/reserve_stat_has_users/new.html.erb +0 -12
  382. data/app/views/reserve_stat_has_users/show.html.erb +0 -28
  383. data/app/views/reserves/index.csv.erb +0 -4
  384. data/app/views/user_checkout_stats/show.csv.erb +0 -4
  385. data/app/views/user_reserve_stats/show.csv.erb +0 -4
  386. data/db/fixtures/carrier_type_has_checkout_types.yml +0 -8
  387. data/db/fixtures/checkout_types.yml +0 -22
  388. data/db/fixtures/circulation_statuses.yml +0 -92
  389. data/db/fixtures/use_restrictions.yml +0 -79
  390. data/db/migrate/20130303104849_add_state_index_to_reserve.rb +0 -5
  391. data/spec/controllers/checkout_stat_has_manifestations_controller_spec.rb +0 -441
  392. data/spec/controllers/checkout_stat_has_users_controller_spec.rb +0 -441
  393. data/spec/controllers/reserve_stat_has_manifestations_controller_spec.rb +0 -441
  394. data/spec/controllers/reserve_stat_has_users_controller_spec.rb +0 -441
  395. data/spec/dummy/app/mailers/notifier.rb +0 -29
  396. data/spec/dummy/db/migrate/20110916053430_rename_manifestation_number_list_to_number_string.rb +0 -13
  397. data/spec/dummy/db/migrate/20111201155456_create_users.rb +0 -16
  398. data/spec/dummy/db/migrate/20111201155513_add_devise_to_users.rb +0 -44
@@ -1,5 +1,5 @@
1
1
  <div id="content_detail" class="ui-corner-all ui-widget-content">
2
- <h1 class="title"><%= t('page.showing', :model => t('activerecord.models.user_checkout_stat')) -%></h1>
2
+ <h1 class="title"><%= t('page.showing', model: t('activerecord.models.user_checkout_stat')) -%></h1>
3
3
  <div id="content_list">
4
4
  <p id="notice"><%= notice %></p>
5
5
 
@@ -31,7 +31,7 @@
31
31
  <%- @stats.each do |stat| -%>
32
32
  <tr class="line<%= cycle("0", "1") -%>">
33
33
  <td>
34
- <%= link_to stat.user.username, stat.user if stat.user -%>
34
+ <%= link_to stat.user.username, stat.user.profile if stat.user.try(:profile) -%>
35
35
  </td>
36
36
  <td><%= stat.checkouts_count -%></td>
37
37
  </tr>
@@ -46,12 +46,11 @@
46
46
  <div id="submenu" class="ui-corner-all ui-widget-content">
47
47
  <%= form_for(@user_checkout_stat) do |f| %>
48
48
  <ul>
49
- <li><%= link_to t('page.edit'), edit_user_checkout_stat_path(@user_checkout_stat) -%></li>
50
49
  <li><%= back_to_index(flash[:page_info]) -%></li>
51
50
  </ul>
52
51
  <% end %>
53
52
  <h4><%= t('page.export') -%></h4>
54
53
  <ul>
55
- <li><%= link_to 'CSV', user_checkout_stat_path(@user_checkout_stat, :format => :csv, :locale => @locale.to_s) -%></li>
54
+ <li><%= link_to 'TSV', user_checkout_stat_path(@user_checkout_stat, format: :txt, locale: @locale.to_s) -%></li>
56
55
  </ul>
57
56
  </div>
@@ -0,0 +1,4 @@
1
+ <%= @user_checkout_stat.start_date -%> <%= @user_checkout_stat.end_date %>
2
+ <%- @stats.each do |stat| -%>
3
+ "<%= stat.user.username if stat.user -%>" "<%= stat.checkouts_count %>"<%= "\n" -%>
4
+ <%- end -%>
@@ -1,5 +1,5 @@
1
1
  <div id="content_detail" class="ui-corner-all ui-widget-content">
2
- <h1 class="title"><%= t('page.editing', :model => t('activerecord.models.user_group_has_checkout_type')) -%></h1>
2
+ <h1 class="title"><%= t('page.editing', model: t('activerecord.models.user_group_has_checkout_type')) -%></h1>
3
3
  <div id="content_list">
4
4
 
5
5
  <%= form_for(@user_group_has_checkout_type) do |f| -%>
@@ -15,27 +15,27 @@
15
15
  </div>
16
16
  <div class="field">
17
17
  <%= f.label :checkout_limit -%><br />
18
- <%= f.text_field :checkout_limit, :class => 'resource_integer' -%>
18
+ <%= f.text_field :checkout_limit, class: 'resource_integer' -%>
19
19
  </div>
20
20
 
21
21
  <div class="field">
22
22
  <%= f.label :checkout_period -%><br />
23
- <%= f.text_field :checkout_period, :class => 'resource_integer' -%>
23
+ <%= f.text_field :checkout_period, class: 'resource_integer' -%>
24
24
  </div>
25
25
 
26
26
  <div class="field">
27
27
  <%= f.label :checkout_renewal_limit -%><br />
28
- <%= f.text_field :checkout_renewal_limit, :class => 'resource_integer' -%>
28
+ <%= f.text_field :checkout_renewal_limit, class: 'resource_integer' -%>
29
29
  </div>
30
30
 
31
31
  <div class="field">
32
32
  <%= f.label :reservation_limit -%><br />
33
- <%= f.text_field :reservation_limit, :class => 'resource_integer' -%>
33
+ <%= f.text_field :reservation_limit, class: 'resource_integer' -%>
34
34
  </div>
35
35
 
36
36
  <div class="field">
37
37
  <%= f.label :reservation_expired_period -%><br />
38
- <%= f.text_field :reservation_expired_period, :class => 'resource_integer' -%>
38
+ <%= f.text_field :reservation_expired_period, class: 'resource_integer' -%>
39
39
  </div>
40
40
 
41
41
  <div class="field">
@@ -45,7 +45,7 @@
45
45
 
46
46
  <div class="field">
47
47
  <%= f.label :note -%><br />
48
- <%= f.text_area :note, :class => 'resource_textarea' -%>
48
+ <%= f.text_area :note, class: 'resource_textarea' -%>
49
49
  </div>
50
50
  <div class="actions">
51
51
  <%= f.submit %>
@@ -1,5 +1,5 @@
1
1
  <div id="content_detail" class="ui-corner-all ui-widget-content">
2
- <h1 class="title"><%= t('page.listing', :model => t('activerecord.models.user_group_has_checkout_type')) -%></h1>
2
+ <h1 class="title"><%= t('page.listing', model: t('activerecord.models.user_group_has_checkout_type')) -%></h1>
3
3
  <div id="content_list">
4
4
 
5
5
  <table class="table table-striped index">
@@ -19,7 +19,7 @@
19
19
  <%= link_to t('page.edit'), edit_user_group_has_checkout_type_path(user_group_has_checkout_type) -%>
20
20
  <% end %>
21
21
  <%- if can? :delete, user_group_has_checkout_type -%>
22
- <%= link_to t('page.destroy'), user_group_has_checkout_type, :data => {:confirm => t('page.are_you_sure')}, :method => :delete -%>
22
+ <%= link_to t('page.destroy'), user_group_has_checkout_type, data: {confirm: t('page.are_you_sure')}, method: :delete -%>
23
23
  <% end %>
24
24
  </td>
25
25
  </tr>
@@ -32,7 +32,7 @@
32
32
  <div id="submenu" class="ui-corner-all ui-widget-content">
33
33
  <ul>
34
34
  <%- if can? :create, UserGroupHasCheckoutType -%>
35
- <li><%= link_to t('page.new', :model => t('activerecord.models.user_group_has_checkout_type')), new_user_group_has_checkout_type_path -%></li>
35
+ <li><%= link_to t('page.new', model: t('activerecord.models.user_group_has_checkout_type')), new_user_group_has_checkout_type_path -%></li>
36
36
  <% end %>
37
37
  </ul>
38
38
  </div>
@@ -1,5 +1,5 @@
1
1
  <div id="content_detail" class="ui-corner-all ui-widget-content">
2
- <h1 class="title"><%= t('page.new', :model => t('activerecord.models.user_group_has_checkout_type')) -%></h1>
2
+ <h1 class="title"><%= t('page.new', model: t('activerecord.models.user_group_has_checkout_type')) -%></h1>
3
3
  <div id="content_list">
4
4
 
5
5
  <%= form_for(@user_group_has_checkout_type) do |f| -%>
@@ -7,35 +7,35 @@
7
7
 
8
8
  <div class="field">
9
9
  <%= f.label t('activerecord.models.user_group') -%><br />
10
- <%= f.select(:user_group_id, @user_groups.collect{|u| [u.display_name.localize, u.id]}, :include_blank => true) -%>
10
+ <%= f.select(:user_group_id, @user_groups.collect{|u| [u.display_name.localize, u.id]}, include_blank: true) -%>
11
11
  </div>
12
12
  <div class="field">
13
13
  <%= f.label t('activerecord.models.checkout_type') -%><br />
14
- <%= f.select(:checkout_type_id, @checkout_types.collect{|c| [c.display_name.localize, c.id]}, :include_blank => true) -%>
14
+ <%= f.select(:checkout_type_id, @checkout_types.collect{|c| [c.display_name.localize, c.id]}, include_blank: true) -%>
15
15
  </div>
16
16
  <div class="field">
17
17
  <%= f.label :checkout_limit -%><br />
18
- <%= f.text_field :checkout_limit, :class => 'resource_integer' -%>
18
+ <%= f.text_field :checkout_limit, class: 'resource_integer' -%>
19
19
  </div>
20
20
 
21
21
  <div class="field">
22
22
  <%= f.label :checkout_period -%><br />
23
- <%= f.text_field :checkout_period, :class => 'resource_integer' -%>
23
+ <%= f.text_field :checkout_period, class: 'resource_integer' -%>
24
24
  </div>
25
25
 
26
26
  <div class="field">
27
27
  <%= f.label :checkout_renewal_limit -%><br />
28
- <%= f.text_field :checkout_renewal_limit, :class => 'resource_integer' -%>
28
+ <%= f.text_field :checkout_renewal_limit, class: 'resource_integer' -%>
29
29
  </div>
30
30
 
31
31
  <div class="field">
32
32
  <%= f.label :reservation_limit -%><br />
33
- <%= f.text_field :reservation_limit, :class => 'resource_integer' -%>
33
+ <%= f.text_field :reservation_limit, class: 'resource_integer' -%>
34
34
  </div>
35
35
 
36
36
  <div class="field">
37
37
  <%= f.label :reservation_expired_period -%><br />
38
- <%= f.text_field :reservation_expired_period, :class => 'resource_integer' -%>
38
+ <%= f.text_field :reservation_expired_period, class: 'resource_integer' -%>
39
39
  </div>
40
40
 
41
41
  <div class="field">
@@ -45,7 +45,7 @@
45
45
 
46
46
  <div class="field">
47
47
  <%= f.label :note -%><br />
48
- <%= f.text_area :note, :class => 'resource_textarea' -%>
48
+ <%= f.text_area :note, class: 'resource_textarea' -%>
49
49
  </div>
50
50
  <div class="actions">
51
51
  <%= f.submit %>
@@ -1,5 +1,5 @@
1
1
  <div id="content_detail" class="ui-corner-all ui-widget-content">
2
- <h1 class="title"><%= t('page.showing', :model => t('activerecord.models.user_group_has_checkout_type')) -%></h1>
2
+ <h1 class="title"><%= t('page.showing', model: t('activerecord.models.user_group_has_checkout_type')) -%></h1>
3
3
  <div id="content_list">
4
4
  <p id="notice"><%= notice %></p>
5
5
 
@@ -3,19 +3,19 @@
3
3
  <%= f.fields_for :user_group_has_checkout_types do |checkout_form| %>
4
4
  <%= checkout_form.label :checkout_type_id -%>
5
5
  <%= checkout_form.select(:checkout_type_id, @checkout_types.collect{|c| [c.display_name.localize, c.id]}) %>
6
- <%= checkout_form.link_to_remove t('page.remove'), :confirm => t('page.are_you_sure') %>
6
+ <%= checkout_form.link_to_remove t('page.remove'), confirm: t('page.are_you_sure') %>
7
7
  <br />
8
8
  <%= checkout_form.label :checkout_limit -%>
9
- <%= checkout_form.text_field :checkout_limit, :class => 'resource_integer' %>
9
+ <%= checkout_form.text_field :checkout_limit, class: 'resource_integer' %>
10
10
  <%= checkout_form.label :checkout_period -%>
11
- <%= checkout_form.text_field :checkout_period, :class => 'resource_integer' %>
11
+ <%= checkout_form.text_field :checkout_period, class: 'resource_integer' %>
12
12
  <%= checkout_form.label :checkout_renewal_limit -%>
13
- <%= checkout_form.text_field :checkout_renewal_limit, :class => 'resource_integer' %>
13
+ <%= checkout_form.text_field :checkout_renewal_limit, class: 'resource_integer' %>
14
14
  <br />
15
15
  <%= checkout_form.label :reservation_limit -%>
16
- <%= checkout_form.text_field :reservation_limit, :class => 'resource_integer' %>
16
+ <%= checkout_form.text_field :reservation_limit, class: 'resource_integer' %>
17
17
  <%= checkout_form.label :reservation_expired_period -%>
18
- <%= checkout_form.text_field :reservation_expired_period, :class => 'resource_integer' %>
18
+ <%= checkout_form.text_field :reservation_expired_period, class: 'resource_integer' %>
19
19
  <%= checkout_form.label :set_due_date_before_closing_day -%>
20
20
  <%= checkout_form.check_box :set_due_date_before_closing_day %>
21
21
  <% end %>
@@ -15,6 +15,6 @@
15
15
  </div>
16
16
  <div class="actions">
17
17
  <%= f.hidden_field :mode, value: 'import' %>
18
- <%= f.submit t('page.start_import') %>
18
+ <%= f.submit t('page.start_counting') %>
19
19
  </div>
20
20
  <%- end -%>
@@ -1,5 +1,5 @@
1
1
  <div id="content_detail" class="ui-corner-all ui-widget-content">
2
- <h1 class="title"><%= t('page.editing', :model => t('activerecord.models.user_reserve_stat')) -%></h1>
2
+ <h1 class="title"><%= t('page.editing', model: t('activerecord.models.user_reserve_stat')) -%></h1>
3
3
  <div id="content_list">
4
4
  <%= render 'form' %>
5
5
  </div>
@@ -1,5 +1,5 @@
1
1
  <div id="content_detail" class="ui-corner-all ui-widget-content">
2
- <h1 class="title"><%= t('page.listing', :model => t('activerecord.models.user_reserve_stat')) -%></h1>
2
+ <h1 class="title"><%= t('page.listing', model: t('activerecord.models.user_reserve_stat')) -%></h1>
3
3
  <div id="content_list">
4
4
 
5
5
  <table class="table table-striped index">
@@ -17,8 +17,7 @@
17
17
  <td><%= localized_state(user_reserve_stat.current_state) -%></td>
18
18
  <td>
19
19
  <%= link_to t('page.show'), user_reserve_stat -%>
20
- <%= link_to t('page.edit'), edit_user_reserve_stat_path(user_reserve_stat) -%>
21
- <%= link_to t('page.destroy'), user_reserve_stat, :data => {:confirm => t('page.are_you_sure')}, :method => :delete -%>
20
+ <%= link_to t('page.destroy'), user_reserve_stat, data: {confirm: t('page.are_you_sure')}, method: :delete -%>
22
21
  </td>
23
22
  </tr>
24
23
  <%- end -%>
@@ -30,6 +29,6 @@
30
29
 
31
30
  <div id="submenu" class="ui-corner-all ui-widget-content">
32
31
  <ul>
33
- <li><%= link_to t('page.new', :model => t('activerecord.models.user_reserve_stat')), new_user_reserve_stat_path -%></li>
32
+ <li><%= link_to t('page.new', model: t('activerecord.models.user_reserve_stat')), new_user_reserve_stat_path -%></li>
34
33
  </ul>
35
34
  </div>
@@ -1,5 +1,5 @@
1
1
  <div id="content_detail" class="ui-corner-all ui-widget-content">
2
- <h1 class="title"><%= t('page.new', :model => t('activerecord.models.user_reserve_stat')) -%></h1>
2
+ <h1 class="title"><%= t('page.new', model: t('activerecord.models.user_reserve_stat')) -%></h1>
3
3
  <div id="content_list">
4
4
  <%= render 'form' %>
5
5
  </div>
@@ -1,5 +1,5 @@
1
1
  <div id="content_detail" class="ui-corner-all ui-widget-content">
2
- <h1 class="title"><%= t('page.showing', :model => t('activerecord.models.user_reserve_stat')) -%></h1>
2
+ <h1 class="title"><%= t('page.showing', model: t('activerecord.models.user_reserve_stat')) -%></h1>
3
3
  <div id="content_list">
4
4
  <p id="notice"><%= notice %></p>
5
5
 
@@ -31,7 +31,7 @@
31
31
  <%- @stats.each do |stat| -%>
32
32
  <tr class="line<%= cycle("0", "1") -%>">
33
33
  <td>
34
- <%= link_to stat.user.username, stat.user if stat.user -%>
34
+ <%= link_to stat.user.username, stat.user.profile if stat.user.try(:profile) -%>
35
35
  </td>
36
36
  <td><%= stat.reserves_count -%></td>
37
37
  </tr>
@@ -45,12 +45,11 @@
45
45
  <div id="submenu" class="ui-corner-all ui-widget-content">
46
46
  <%= form_for(@user_reserve_stat) do |f| %>
47
47
  <ul>
48
- <li><%= link_to t('page.edit'), edit_user_reserve_stat_path(@user_reserve_stat) -%></li>
49
48
  <li><%= back_to_index(flash[:page_info]) -%></li>
50
49
  </ul>
51
50
  <% end %>
52
51
  <h4><%= t('page.export') -%></h4>
53
52
  <ul>
54
- <li><%= link_to 'CSV', user_reserve_stat_path(@user_reserve_stat, :format => :csv, :locale => @locale.to_s) -%></li>
53
+ <li><%= link_to 'TSV', user_reserve_stat_path(@user_reserve_stat, format: :txt, locale: @locale.to_s) -%></li>
55
54
  </ul>
56
55
  </div>
@@ -0,0 +1,4 @@
1
+ <%= @user_reserve_stat.start_date -%> <%= @user_reserve_stat.end_date %>
2
+ <%- @stats.each do |stat| -%>
3
+ "<%= stat.user.username if stat.user -%>" "<%= stat.reserves_count %>"<%= "\n" -%>
4
+ <%- end -%>
@@ -1,14 +1,14 @@
1
1
  <%- if @user.checkout_icalendar_token? -%>
2
- <%= checkouts_url(:icalendar_token => @user.checkout_icalendar_token, :format => :ics) -%>
2
+ <%= checkouts_url(icalendar_token: @user.checkout_icalendar_token, format: :ics) -%>
3
3
  <%= hidden_field_tag 'user[checkout_icalendar_token]', @user.checkout_icalendar_token -%>
4
4
  <%- end -%>
5
5
  <br />
6
6
  <%- if @user.checkout_icalendar_token? -%>
7
- <input onclick="$.ajax({data:'authenticity_token=' + encodeURIComponent('<%= form_authenticity_token %>'), success:function(request){$('#feed_token').html(request);}, type:'get', url:'<%= edit_user_path(@user, :disable => true, :mode => 'feed_token') %>'});" type="button" value="<%= t('page.delete') %>" />
7
+ <input onclick="$.ajax({data:'authenticity_token=' + encodeURIComponent('<%= form_authenticity_token %>'), success:function(request){$('#feed_token').html(request);}, type:'get', url:'<%= edit_user_path(@user, disable: true, mode: 'feed_token') %>'});" type="button" value="<%= t('page.delete') %>" />
8
8
  <br />
9
9
  <%= t('user.you_have_to_save_profile_to_activate_feed_url') -%>
10
10
  <%- else -%>
11
- <input onclick="$.ajax({data:'authenticity_token=' + encodeURIComponent('<%= form_authenticity_token %>'), success:function(request){$('#feed_token').html(request);}, type:'get', url:'<%= edit_user_path(@user, :mode => 'feed_token') %>'});" type="button" value="<%= t('page.reset') %>" />
11
+ <input onclick="$.ajax({data:'authenticity_token=' + encodeURIComponent('<%= form_authenticity_token %>'), success:function(request){$('#feed_token').html(request);}, type:'get', url:'<%= edit_user_path(@user, mode: 'feed_token') %>'});" type="button" value="<%= t('page.reset') %>" />
12
12
  <br />
13
13
  <%= t('user.you_have_to_save_profile_to_deactivate_feed_url') -%>
14
14
  <%- end -%>
@@ -0,0 +1,3 @@
1
+ ActiveSupport::Inflector.inflections do |inflect|
2
+ inflect.irregular 'reserve', 'reserves'
3
+ end
@@ -119,6 +119,9 @@ en:
119
119
  item:
120
120
  checkout_type: Checkout type
121
121
  circulation_status: Circulation status
122
+ profile:
123
+ checkout_icalendar_token: Checkout iCalendar token
124
+ save_checkout_history: Save checkout history
122
125
 
123
126
  basket:
124
127
  this_account_is_suspended: "This account is suspended."
@@ -188,3 +191,6 @@ en:
188
191
  bibliographic_detail: "Bibliographic details"
189
192
  page:
190
193
  saving: "Saving..."
194
+ start_counting: "Start counting"
195
+ statistic:
196
+ successfully_created: "%{model} task was created successfully. When the task is completed, its status on the list will be updated to 'completed' and you can check the results by following the 'show' link."
@@ -117,6 +117,9 @@ ja:
117
117
  item:
118
118
  checkout_type: 貸出種別
119
119
  circulation_status: 貸出状態
120
+ profile:
121
+ checkout_icalendar_token: 貸出iCalendarのトークン
122
+ save_checkout_history: 貸出の履歴を保存する
120
123
 
121
124
  basket:
122
125
  this_account_is_suspended: "このアカウントは停止されています。"
@@ -186,3 +189,6 @@ ja:
186
189
  bibliographic_detail: "書誌詳細"
187
190
  page:
188
191
  saving: "保存中..."
192
+ start_counting: "集計を開始"
193
+ statistic:
194
+ successfully_created: "%{model}のタスクは正常に作成されました。タスクが完了すると「%{model}の一覧」の状態が「完了」となり、「表示」リンクをたどることで結果を確認できるようになります。"
data/config/routes.rb CHANGED
@@ -1,4 +1,10 @@
1
1
  Rails.application.routes.draw do
2
+ get "/users/:user_id/checkouts" => redirect("/checkouts?user_id=%{user_id}")
3
+ get "/users/:user_id/reserves" => redirect("/reserves?user_id=%{user_id}")
4
+ get "/users/:user_id/baskets" => redirect("/baskets?user_id=%{user_id}")
5
+ get "/baskets/:basket_id/checked_items" => redirect("/checked_items?basket_id=%{basket_id}")
6
+ get "/baskets/:basket_id/checkins" => redirect("/checkins?basket_id=%{basket_id}")
7
+
2
8
  resources :use_restrictions
3
9
  resources :item_has_use_restrictions
4
10
  resources :lending_policies
@@ -7,12 +13,8 @@ Rails.application.routes.draw do
7
13
  resources :checked_items
8
14
  resources :checkins
9
15
  end
10
- resources :users do
11
- resources :checkouts, :only => :index do
12
- put :remove_all, :on => :collection
13
- end
14
- resources :reserves, :only => :index
15
- resources :baskets, :only => :index
16
+ resources :checkouts, :only => :index do
17
+ put :remove_all, :on => :collection
16
18
  end
17
19
  resources :user_checkout_stats
18
20
  resources :user_reserve_stats
@@ -36,8 +38,4 @@ Rails.application.routes.draw do
36
38
  resources :lending_policies
37
39
  resources :checkouts
38
40
  end
39
- resources :checkout_stat_has_manifestations
40
- resources :checkout_stat_has_users
41
- resources :reserve_stat_has_manifestations
42
- resources :reserve_stat_has_users
43
41
  end
@@ -10,7 +10,6 @@ class CreateReserves < ActiveRecord::Migration
10
10
  t.datetime :canceled_at
11
11
  t.datetime :expired_at
12
12
  t.datetime :deleted_at
13
- t.string :state
14
13
  t.boolean :expiration_notice_to_patron, :default => false
15
14
  t.boolean :expiration_notice_to_library, :default => false
16
15
  end
@@ -4,7 +4,6 @@ class CreateManifestationCheckoutStats < ActiveRecord::Migration
4
4
  t.datetime :start_date
5
5
  t.datetime :end_date
6
6
  t.text :note
7
- t.string :state
8
7
 
9
8
  t.timestamps
10
9
  end
@@ -4,7 +4,6 @@ class CreateUserCheckoutStats < ActiveRecord::Migration
4
4
  t.datetime :start_date
5
5
  t.datetime :end_date
6
6
  t.text :note
7
- t.string :state
8
7
 
9
8
  t.timestamps
10
9
  end
@@ -4,7 +4,6 @@ class CreateManifestationReserveStats < ActiveRecord::Migration
4
4
  t.datetime :start_date
5
5
  t.datetime :end_date
6
6
  t.text :note
7
- t.string :state
8
7
 
9
8
  t.timestamps
10
9
  end
@@ -4,7 +4,6 @@ class CreateUserReserveStats < ActiveRecord::Migration
4
4
  t.datetime :start_date
5
5
  t.datetime :end_date
6
6
  t.text :note
7
- t.string :state
8
7
 
9
8
  t.timestamps
10
9
  end
@@ -2,16 +2,12 @@ class AddCompletedAtToUserCheckoutStat < ActiveRecord::Migration
2
2
  def self.up
3
3
  add_column :user_checkout_stats, :started_at, :datetime
4
4
  add_column :user_checkout_stats, :completed_at, :datetime
5
- add_index :user_checkout_stats, :state
6
5
  add_column :user_reserve_stats, :started_at, :datetime
7
6
  add_column :user_reserve_stats, :completed_at, :datetime
8
- add_index :user_reserve_stats, :state
9
7
  add_column :manifestation_checkout_stats, :started_at, :datetime
10
8
  add_column :manifestation_checkout_stats, :completed_at, :datetime
11
- add_index :manifestation_checkout_stats, :state
12
9
  add_column :manifestation_reserve_stats, :started_at, :datetime
13
10
  add_column :manifestation_reserve_stats, :completed_at, :datetime
14
- add_index :manifestation_reserve_stats, :state
15
11
  end
16
12
 
17
13
  def self.down
@@ -0,0 +1,14 @@
1
+ class CreateReserveTransitions < ActiveRecord::Migration
2
+ def change
3
+ create_table :reserve_transitions do |t|
4
+ t.string :to_state
5
+ t.text :metadata, default: "{}"
6
+ t.integer :sort_key
7
+ t.integer :reserve_id
8
+ t.timestamps
9
+ end
10
+
11
+ add_index :reserve_transitions, :reserve_id
12
+ add_index :reserve_transitions, [:sort_key, :reserve_id], unique: true
13
+ end
14
+ end
@@ -0,0 +1,12 @@
1
+ class AddUserIdToUserCheckoutStat < ActiveRecord::Migration
2
+ def change
3
+ add_column :user_checkout_stats, :user_id, :integer
4
+ add_column :user_reserve_stats, :user_id, :integer
5
+ add_column :manifestation_checkout_stats, :user_id, :integer
6
+ add_column :manifestation_reserve_stats, :user_id, :integer
7
+ add_index :user_checkout_stats, :user_id
8
+ add_index :user_reserve_stats, :user_id
9
+ add_index :manifestation_checkout_stats, :user_id
10
+ add_index :manifestation_reserve_stats, :user_id
11
+ end
12
+ end
@@ -0,0 +1,6 @@
1
+ class AddCheckoutIcalendarTokenToProfile < ActiveRecord::Migration
2
+ def change
3
+ add_column :profiles, :checkout_icalendar_token, :string
4
+ add_index :profiles, :checkout_icalendar_token, :unique => true
5
+ end
6
+ end
@@ -0,0 +1,5 @@
1
+ class AddSaveCheckoutHistoryToProfile < ActiveRecord::Migration
2
+ def change
3
+ add_column :profiles, :save_checkout_history, :boolean, :default => false, :null => false
4
+ end
5
+ end
@@ -1,11 +1,7 @@
1
1
  require "enju_biblio"
2
2
  require "enju_library"
3
- require "validates_timeliness"
4
- require "inherited_resources"
5
- require "state_machine"
6
3
  require "enju_message"
7
4
  require "enju_event"
8
- require "statesman"
9
5
 
10
6
  module EnjuCirculation
11
7
  class Engine < ::Rails::Engine
@@ -61,7 +61,7 @@ module EnjuCirculation
61
61
 
62
62
  def checkout_status(user)
63
63
  return nil unless user
64
- user.user_group.user_group_has_checkout_types.where(:checkout_type_id => self.checkout_type.id).first
64
+ user.profile.user_group.user_group_has_checkout_types.where(:checkout_type_id => self.checkout_type.id).first
65
65
  end
66
66
 
67
67
  def reserved?
@@ -108,14 +108,14 @@ module EnjuCirculation
108
108
  reservation = manifestation.next_reservation
109
109
  unless reservation.nil?
110
110
  reservation.item = self
111
- reservation.sm_retain!
111
+ reservation.transition_to!(:retained)
112
112
  reservation.send_message(librarian)
113
113
  end
114
114
  end
115
115
  end
116
116
 
117
117
  def retained?
118
- if manifestation.next_reservation.try(:state) == 'retained' and manifestation.next_reservation.item == self
118
+ if manifestation.next_reservation.try(:current_state) == 'retained' and manifestation.next_reservation.item == self
119
119
  return true
120
120
  else
121
121
  false
@@ -123,7 +123,7 @@ module EnjuCirculation
123
123
  end
124
124
 
125
125
  def lending_rule(user)
126
- lending_policies.where(:user_group_id => user.user_group.id).first
126
+ lending_policies.where(:user_group_id => user.profile.user_group.id).first
127
127
  end
128
128
 
129
129
  def not_for_loan?
@@ -19,12 +19,12 @@ module EnjuCirculation
19
19
 
20
20
  module InstanceMethods
21
21
  def next_reservation
22
- self.reserves.waiting.order('reserves.created_at ASC').first
22
+ self.reserves.waiting.order('reserves.created_at ASC').readonly(false).first
23
23
  end
24
24
 
25
25
  def available_checkout_types(user)
26
26
  if user
27
- user.user_group.user_group_has_checkout_types.available_for_carrier_type(self.carrier_type)
27
+ user.profile.user_group.user_group_has_checkout_types.available_for_carrier_type(self.carrier_type)
28
28
  end
29
29
  end
30
30
 
@@ -0,0 +1,26 @@
1
+ module EnjuCirculation
2
+ module EnjuProfile
3
+ def self.included(base)
4
+ base.extend ClassMethods
5
+ end
6
+
7
+ module ClassMethods
8
+ def enju_circulation_profile_model
9
+ include InstanceMethods
10
+ attr_accessible :save_checkout_history, :checkout_icalendar_token
11
+ attr_accessible :save_checkout_history, :checkout_icalendar_token,
12
+ :as => :admin
13
+ end
14
+ end
15
+
16
+ module InstanceMethods
17
+ def reset_checkout_icalendar_token
18
+ self.checkout_icalendar_token = Devise.friendly_token
19
+ end
20
+
21
+ def delete_checkout_icalendar_token
22
+ self.checkout_icalendar_token = nil
23
+ end
24
+ end
25
+ end
26
+ end
@@ -57,7 +57,7 @@ module EnjuCirculation
57
57
  end
58
58
 
59
59
  def reached_reservation_limit?(manifestation)
60
- return true if user_group.user_group_has_checkout_types.available_for_carrier_type(manifestation.carrier_type).where(:user_group_id => user_group.id).collect(&:reservation_limit).max.to_i <= reserves.waiting.size
60
+ return true if profile.user_group.user_group_has_checkout_types.available_for_carrier_type(manifestation.carrier_type).where(:user_group_id => profile.user_group.id).collect(&:reservation_limit).max.to_i <= reserves.waiting.size
61
61
  false
62
62
  end
63
63
  end
@@ -1,3 +1,3 @@
1
1
  module EnjuCirculation
2
- VERSION = "0.1.0.pre36"
2
+ VERSION = "0.1.0.pre37"
3
3
  end
@@ -3,6 +3,7 @@ require "enju_circulation/manifestation"
3
3
  require "enju_circulation/item"
4
4
  require "enju_circulation/user"
5
5
  require "enju_circulation/user_group"
6
+ require "enju_circulation/profile"
6
7
  require "enju_circulation/controller"
7
8
  require "enju_circulation/helper"
8
9
 
@@ -14,4 +15,5 @@ ActiveRecord::Base.send :include, EnjuCirculation::EnjuManifestation
14
15
  ActiveRecord::Base.send :include, EnjuCirculation::EnjuItem
15
16
  ActiveRecord::Base.send :include, EnjuCirculation::EnjuUser
16
17
  ActiveRecord::Base.send :include, EnjuCirculation::EnjuUserGroup
18
+ ActiveRecord::Base.send :include, EnjuCirculation::EnjuProfile
17
19
  ActionView::Base.send :include, EnjuCirculation::ManifestationsHelper
@@ -1,8 +1,10 @@
1
1
  class EnjuCirculation::SetupGenerator < Rails::Generators::Base
2
2
  source_root File.expand_path('../templates', __FILE__)
3
+ argument :file, :type => :string, :default => "all"
3
4
 
4
5
  def copy_setup_files
5
6
  directory("db/fixtures", "db/fixtures/enju_circulation")
7
+ return if file == 'fixture'
6
8
  rake("enju_circulation_engine:install:migrations")
7
9
  rake("enju_event_engine:install:migrations")
8
10
  rake("enju_message_engine:install:migrations")