enju_library 0.2.0.beta.1 → 0.2.0.beta.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (175) hide show
  1. checksums.yaml +4 -4
  2. data/app/controllers/concerns/enju_library/controller.rb +218 -0
  3. data/app/controllers/user_export_files_controller.rb +116 -0
  4. data/app/controllers/user_groups_controller.rb +118 -0
  5. data/app/controllers/user_import_files_controller.rb +129 -0
  6. data/app/controllers/user_import_results_controller.rb +57 -0
  7. data/app/mailers/notifier.rb +30 -0
  8. data/app/models/user_export_file.rb +67 -0
  9. data/app/models/user_export_file_state_machine.rb +15 -0
  10. data/app/models/user_export_file_transition.rb +20 -0
  11. data/app/models/user_group.rb +29 -0
  12. data/app/models/user_import_file.rb +352 -0
  13. data/app/models/user_import_file_state_machine.rb +19 -0
  14. data/app/models/user_import_file_transition.rb +20 -0
  15. data/app/models/user_import_result.rb +20 -0
  16. data/app/policies/user_export_file_policy.rb +21 -0
  17. data/app/policies/user_group_policy.rb +22 -0
  18. data/app/policies/user_import_file_policy.rb +21 -0
  19. data/app/policies/user_import_result_policy.rb +21 -0
  20. data/app/views/accepts/index.js.slim +3 -0
  21. data/app/views/libraries/_map.html+phone.slim +4 -0
  22. data/app/views/libraries/show.html+phone.slim +32 -0
  23. data/app/views/libraries/show.js.slim +3 -0
  24. data/app/views/shelves/show.html+phone.slim +33 -0
  25. data/app/views/user_export_files/_form.html.erb +12 -0
  26. data/app/views/user_export_files/edit.html.erb +6 -0
  27. data/app/views/user_export_files/index.html.erb +44 -0
  28. data/app/views/user_export_files/new.html.erb +16 -0
  29. data/app/views/user_export_files/show.html.erb +36 -0
  30. data/app/views/user_groups/_form.html.erb +40 -0
  31. data/app/views/user_groups/edit.html.erb +13 -0
  32. data/app/views/user_groups/index.html.erb +51 -0
  33. data/app/views/user_groups/new.html.erb +12 -0
  34. data/app/views/user_groups/show.html.erb +68 -0
  35. data/app/views/user_import_files/_form.html.erb +61 -0
  36. data/app/views/user_import_files/_results.html.erb +22 -0
  37. data/app/views/user_import_files/edit.html.erb +6 -0
  38. data/app/views/user_import_files/index.html.erb +45 -0
  39. data/app/views/user_import_files/new.html.erb +60 -0
  40. data/app/views/user_import_files/show.html.erb +85 -0
  41. data/app/views/user_import_results/_form.html.erb +29 -0
  42. data/app/views/user_import_results/_list.html.erb +22 -0
  43. data/app/views/user_import_results/_list_lines.html.erb +24 -0
  44. data/app/views/user_import_results/index.html.erb +25 -0
  45. data/app/views/user_import_results/index.txt.erb +3 -0
  46. data/app/views/user_import_results/show.html.erb +33 -0
  47. data/{spec/dummy/db → db}/migrate/077_create_user_groups.rb +0 -0
  48. data/{spec/dummy/db → db}/migrate/20110318183304_add_valid_period_for_new_user_to_user_group.rb +0 -0
  49. data/{spec/dummy/db → db}/migrate/20140110122216_create_user_import_files.rb +1 -1
  50. data/{spec/dummy/db → db}/migrate/20140110131010_create_user_import_results.rb +0 -0
  51. data/{spec/dummy/db → db}/migrate/20140524074813_create_user_import_file_transitions.rb +0 -0
  52. data/{spec/dummy/db → db}/migrate/20140628072217_add_user_encoding_to_user_import_file.rb +0 -0
  53. data/{spec/dummy/db → db}/migrate/20140709113413_create_user_export_files.rb +0 -0
  54. data/{spec/dummy/db → db}/migrate/20140709113905_create_user_export_file_transitions.rb +0 -0
  55. data/{spec/dummy/db → db}/migrate/20140720170714_add_default_library_id_to_user_import_file.rb +0 -0
  56. data/{spec/dummy/db → db}/migrate/20140720170735_add_default_user_group_id_to_user_import_file.rb +0 -0
  57. data/db/migrate/20150506105356_add_error_message_to_user_import_result.rb +5 -0
  58. data/db/migrate/20160610093229_add_html_snippet_to_library_group.rb +5 -0
  59. data/db/migrate/20160627232219_add_most_recent_to_user_import_file_transitions.rb +9 -0
  60. data/db/migrate/20160627232316_add_most_recent_to_user_export_file_transitions.rb +9 -0
  61. data/lib/enju_library/engine.rb +3 -1
  62. data/lib/enju_library/version.rb +1 -1
  63. data/spec/controllers/user_export_files_controller_spec.rb +296 -0
  64. data/spec/controllers/user_groups_controller_spec.rb +443 -0
  65. data/spec/controllers/user_import_files_controller_spec.rb +305 -0
  66. data/spec/controllers/user_import_results_controller_spec.rb +154 -0
  67. data/spec/dummy/app/controllers/application_controller.rb +2 -2
  68. data/spec/dummy/config/application.rb +0 -2
  69. data/spec/dummy/db/migrate/055_create_bookmarks.rb +22 -0
  70. data/spec/dummy/db/migrate/090_create_search_histories.rb +31 -0
  71. data/spec/dummy/db/migrate/20081212151614_create_bookmark_stats.rb +13 -0
  72. data/spec/dummy/db/migrate/20081212151820_create_bookmark_stat_has_manifestations.rb +13 -0
  73. data/spec/dummy/db/migrate/20100222124420_add_allow_bookmark_external_url_to_library_group.rb +9 -0
  74. data/spec/dummy/db/migrate/20100525171356_acts_as_taggable_on_migration.rb +30 -0
  75. data/spec/dummy/db/migrate/20100623173800_rename_search_history_version_to_sru_version.rb +9 -0
  76. data/spec/dummy/db/migrate/20111129044509_add_pickup_location_to_reserve.rb +6 -0
  77. data/spec/dummy/db/migrate/20120418121539_add_save_search_history_to_user.rb +5 -0
  78. data/spec/dummy/db/migrate/20140524135607_create_bookmark_stat_transitions.rb +18 -0
  79. data/spec/dummy/db/migrate/20140811132912_add_save_search_history_to_profile.rb +5 -0
  80. data/spec/dummy/db/migrate/20140812093836_add_share_bookmarks_to_profile.rb +5 -0
  81. data/spec/dummy/db/migrate/20150106001709_create_demands.rb +14 -0
  82. data/spec/dummy/db/migrate/20150421023923_create_identities.rb +15 -0
  83. data/spec/dummy/db/migrate/20151126005552_add_provider_to_identity.rb +5 -0
  84. data/spec/dummy/db/migrate/20160703184619_add_most_recent_to_reserve_transitions.rb +9 -0
  85. data/spec/dummy/db/migrate/20160703184650_add_most_recent_to_manifestation_checkout_stat_transitions.rb +9 -0
  86. data/spec/dummy/db/migrate/20160703184723_add_most_recent_to_manifestation_reserve_stat_transitions.rb +9 -0
  87. data/spec/dummy/db/migrate/20160703184747_add_most_recent_to_user_checkout_stat_transitions.rb +9 -0
  88. data/spec/dummy/db/migrate/20160703184805_add_most_recent_to_user_reserve_stat_transitions.rb +9 -0
  89. data/spec/dummy/db/migrate/20160703190209_add_foreign_key_on_manifestation_id_to_reserve.rb +5 -0
  90. data/spec/dummy/db/schema.rb +141 -6
  91. data/spec/dummy/db/test.sqlite3 +0 -0
  92. data/spec/dummy/private/system/user_export_files/user_exports/000/000/001/original/user_export_file_20160808-8463-13fk7qo.txt +8 -0
  93. data/spec/dummy/private/system/user_export_files/user_exports/000/000/001/original/user_export_file_20160808-8463-y41sj6.txt +8 -0
  94. data/spec/dummy/private/system/user_export_files/user_exports/000/000/001/original/user_export_file_20160808-8517-1tzre93.txt +8 -0
  95. data/spec/dummy/private/system/user_export_files/user_exports/000/000/001/original/user_export_file_20160808-8517-qait5x.txt +8 -0
  96. data/spec/dummy/private/system/user_export_files/user_exports/000/000/001/original/user_export_file_20160808-8605-17zb3sz.txt +8 -0
  97. data/spec/dummy/private/system/user_export_files/user_exports/000/000/001/original/user_export_file_20160808-8605-1bpp9w8.txt +8 -0
  98. data/spec/dummy/private/system/user_export_files/user_exports/000/000/003/original/user_export_file_20160808-10113-ycu8m8.txt +8 -0
  99. data/spec/dummy/private/system/user_export_files/user_exports/000/000/003/original/user_export_file_20160808-10296-1w0qa4q.txt +8 -0
  100. data/spec/dummy/private/system/user_export_files/user_exports/000/000/003/original/user_export_file_20160808-10532-3gf0e4.txt +8 -0
  101. data/spec/dummy/private/system/user_export_files/user_exports/000/000/003/original/user_export_file_20160808-10743-1986tss.txt +8 -0
  102. data/spec/dummy/private/system/user_export_files/user_exports/000/000/003/original/user_export_file_20160808-10850-131ca5h.txt +8 -0
  103. data/spec/dummy/private/system/user_export_files/user_exports/000/000/003/original/user_export_file_20160808-11057-lrwhh.txt +8 -0
  104. data/spec/dummy/private/system/user_export_files/user_exports/000/000/003/original/user_export_file_20160808-11201-1j3f8z4.txt +8 -0
  105. data/spec/dummy/private/system/user_export_files/user_exports/000/000/003/original/user_export_file_20160808-8698-1cv7l1l.txt +8 -0
  106. data/spec/dummy/private/system/user_export_files/user_exports/000/000/003/original/user_export_file_20160808-8788-1j021tn.txt +8 -0
  107. data/spec/dummy/private/system/user_export_files/user_exports/000/000/003/original/user_export_file_20160808-8964-10it3ay.txt +8 -0
  108. data/spec/dummy/private/system/user_export_files/user_exports/000/000/003/original/user_export_file_20160808-9184-ramwb2.txt +8 -0
  109. data/spec/dummy/private/system/user_export_files/user_exports/000/000/003/original/user_export_file_20160808-9381-1ltvlr5.txt +8 -0
  110. data/spec/dummy/private/system/user_export_files/user_exports/000/000/003/original/user_export_file_20160808-9568-1xno5kz.txt +8 -0
  111. data/spec/dummy/private/system/user_export_files/user_exports/000/000/003/original/user_export_file_20160808-9694-1xvbn9r.txt +8 -0
  112. data/spec/dummy/private/system/user_export_files/user_exports/000/000/003/original/user_export_file_20160808-9796-1s8wttm.txt +8 -0
  113. data/spec/dummy/private/system/user_export_files/user_exports/000/000/003/original/user_export_file_20160808-9976-os18dm.txt +8 -0
  114. data/spec/dummy/private/system/user_export_files/user_exports/000/000/004/original/user_export_file_20160808-10113-i50cx9.txt +8 -0
  115. data/spec/dummy/private/system/user_export_files/user_exports/000/000/004/original/user_export_file_20160808-10113-yfyk1q.txt +8 -0
  116. data/spec/dummy/private/system/user_export_files/user_exports/000/000/004/original/user_export_file_20160808-10296-mwlqee.txt +8 -0
  117. data/spec/dummy/private/system/user_export_files/user_exports/000/000/004/original/user_export_file_20160808-10296-q7cj81.txt +8 -0
  118. data/spec/dummy/private/system/user_export_files/user_exports/000/000/004/original/user_export_file_20160808-10532-11e6ke6.txt +8 -0
  119. data/spec/dummy/private/system/user_export_files/user_exports/000/000/004/original/user_export_file_20160808-10532-19zrpc6.txt +8 -0
  120. data/spec/dummy/private/system/user_export_files/user_exports/000/000/004/original/user_export_file_20160808-10743-126qknn.txt +8 -0
  121. data/spec/dummy/private/system/user_export_files/user_exports/000/000/004/original/user_export_file_20160808-10743-1yr9gk3.txt +8 -0
  122. data/spec/dummy/private/system/user_export_files/user_exports/000/000/004/original/user_export_file_20160808-10850-1h0ufaw.txt +8 -0
  123. data/spec/dummy/private/system/user_export_files/user_exports/000/000/004/original/user_export_file_20160808-10850-1j6rz0a.txt +8 -0
  124. data/spec/dummy/private/system/user_export_files/user_exports/000/000/004/original/user_export_file_20160808-11057-4u0q76.txt +8 -0
  125. data/spec/dummy/private/system/user_export_files/user_exports/000/000/004/original/user_export_file_20160808-11057-xkxnw0.txt +8 -0
  126. data/spec/dummy/private/system/user_export_files/user_exports/000/000/004/original/user_export_file_20160808-11201-1pbhweq.txt +8 -0
  127. data/spec/dummy/private/system/user_export_files/user_exports/000/000/004/original/user_export_file_20160808-11201-oe7c58.txt +8 -0
  128. data/spec/dummy/private/system/user_export_files/user_exports/000/000/004/original/user_export_file_20160808-8698-becrga.txt +8 -0
  129. data/spec/dummy/private/system/user_export_files/user_exports/000/000/004/original/user_export_file_20160808-8698-n6a7dl.txt +8 -0
  130. data/spec/dummy/private/system/user_export_files/user_exports/000/000/004/original/user_export_file_20160808-8788-kcq4ud.txt +8 -0
  131. data/spec/dummy/private/system/user_export_files/user_exports/000/000/004/original/user_export_file_20160808-8788-pk5u5w.txt +8 -0
  132. data/spec/dummy/private/system/user_export_files/user_exports/000/000/004/original/user_export_file_20160808-8964-1it6ent.txt +8 -0
  133. data/spec/dummy/private/system/user_export_files/user_exports/000/000/004/original/user_export_file_20160808-8964-sevvj9.txt +8 -0
  134. data/spec/dummy/private/system/user_export_files/user_exports/000/000/004/original/user_export_file_20160808-9184-1wya34t.txt +8 -0
  135. data/spec/dummy/private/system/user_export_files/user_exports/000/000/004/original/user_export_file_20160808-9184-53qr2e.txt +8 -0
  136. data/spec/dummy/private/system/user_export_files/user_exports/000/000/004/original/user_export_file_20160808-9381-18m5cay.txt +8 -0
  137. data/spec/dummy/private/system/user_export_files/user_exports/000/000/004/original/user_export_file_20160808-9381-1o6dbyx.txt +8 -0
  138. data/spec/dummy/private/system/user_export_files/user_exports/000/000/004/original/user_export_file_20160808-9568-1rg8mif.txt +8 -0
  139. data/spec/dummy/private/system/user_export_files/user_exports/000/000/004/original/user_export_file_20160808-9568-p2ibx2.txt +8 -0
  140. data/spec/dummy/private/system/user_export_files/user_exports/000/000/004/original/user_export_file_20160808-9694-1lpp5g6.txt +8 -0
  141. data/spec/dummy/private/system/user_export_files/user_exports/000/000/004/original/user_export_file_20160808-9694-1vbkp9i.txt +8 -0
  142. data/spec/dummy/private/system/user_export_files/user_exports/000/000/004/original/user_export_file_20160808-9796-4auzfe.txt +8 -0
  143. data/spec/dummy/private/system/user_export_files/user_exports/000/000/004/original/user_export_file_20160808-9796-is0c1e.txt +8 -0
  144. data/spec/dummy/private/system/user_export_files/user_exports/000/000/004/original/user_export_file_20160808-9976-1n5tevc.txt +8 -0
  145. data/spec/dummy/private/system/user_export_files/user_exports/000/000/004/original/user_export_file_20160808-9976-1ygxnz1.txt +8 -0
  146. data/spec/dummy/private/system/user_import_files/user_imports/000/000/001/original/user_import_file_sample.tsv +10 -0
  147. data/spec/dummy/private/system/user_import_files/user_imports/000/000/001/original/user_import_file_sample_long.tsv +15 -0
  148. data/spec/dummy/private/system/user_import_files/user_imports/000/000/001/original/user_update_file.tsv +4 -0
  149. data/spec/dummy/private/system/user_import_files/user_imports/000/000/001/original/user_update_file2.tsv +2 -0
  150. data/spec/dummy/private/system/user_import_files/user_imports/000/000/001/original/user_update_file3.tsv +2 -0
  151. data/spec/dummy/private/system/user_import_files/user_imports/000/000/001/original/user_update_file4.tsv +2 -0
  152. data/spec/dummy/private/system/user_import_files/user_imports/000/000/003/original/user_import_file_sample.tsv +10 -0
  153. data/spec/dummy/private/system/user_import_files/user_imports/000/000/003/original/user_import_file_sample_long.tsv +15 -0
  154. data/spec/dummy/private/system/user_import_files/user_imports/000/000/003/original/user_update_file.tsv +4 -0
  155. data/spec/dummy/private/system/user_import_files/user_imports/000/000/003/original/user_update_file2.tsv +2 -0
  156. data/spec/dummy/private/system/user_import_files/user_imports/000/000/003/original/user_update_file3.tsv +2 -0
  157. data/spec/dummy/private/system/user_import_files/user_imports/000/000/003/original/user_update_file4.tsv +2 -0
  158. data/spec/dummy/private/system/user_import_files/user_imports/000/000/004/original/user_delete_file.tsv +4 -0
  159. data/spec/factories/checkout.rb +9 -0
  160. data/spec/factories/user_group.rb +5 -0
  161. data/spec/fixtures/message_templates.yml +41 -20
  162. data/spec/fixtures/user_export_files.yml +25 -0
  163. data/spec/fixtures/user_groups.yml +19 -0
  164. data/spec/fixtures/user_import_files.yml +51 -0
  165. data/spec/fixtures/user_import_results.yml +26 -0
  166. data/spec/fixtures/user_reserve_stats.yml +2 -3
  167. data/spec/models/user_export_file_spec.rb +30 -0
  168. data/spec/models/user_group_spec.rb +37 -0
  169. data/spec/models/user_import_file_spec.rb +220 -0
  170. data/spec/models/user_import_result_spec.rb +20 -0
  171. data/spec/support/devise.rb +2 -2
  172. data/spec/views/user_export_files/new.html.erb_spec.rb +19 -0
  173. data/spec/views/user_import_results/index.html.erb_spec.rb +29 -0
  174. metadata +358 -30
  175. data/spec/dummy/tmp/cache/4AD/470/country_all +0 -0
@@ -0,0 +1,33 @@
1
+ div[data-role="header"]
2
+ a.ui-btn-left[href="javascript:history.back()" data-icon="back" data-iconpos="notext"]
3
+ = t('page.back')
4
+ .panel-heading
5
+ = @shelf.display_name.localize
6
+ div[data-role="content"]
7
+ #detail
8
+ - if current_user.try(:has_role?, 'Librarian')
9
+ p
10
+ strong
11
+ = t('activerecord.attributes.shelf.name')
12
+ | :
13
+ = @shelf.name
14
+ p
15
+ strong
16
+ = t('activerecord.attributes.shelf.closed')
17
+ | :
18
+ = localized_boolean(@shelf.closed)
19
+ p
20
+ strong
21
+ = t('activerecord.attributes.shelf.note')
22
+ | :
23
+ = @shelf.note
24
+ p
25
+ strong
26
+ = t('page.created_at')
27
+ | :
28
+ = l(@shelf.created_at)
29
+ p
30
+ strong
31
+ = t('page.updated_at')
32
+ | :
33
+ = l(@shelf.updated_at)
@@ -0,0 +1,12 @@
1
+ <%= form_for(@user_export_file) do |f| %>
2
+ <%= f.error_messages %>
3
+
4
+ <%= f.hidden_field :mode, value: 'export' if @user_export_file.new_record? %><br>
5
+ <div class="actions">
6
+ <% if @user_export_file.new_record? %>
7
+ <%= f.submit t('page.export') %>
8
+ <% else %>
9
+ <%= f.submit %>
10
+ <% end %>
11
+ </div>
12
+ <% end %>
@@ -0,0 +1,6 @@
1
+ <h1>Editing user_export_file</h1>
2
+
3
+ <%= render 'form' %>
4
+
5
+ <%= link_to 'Show', @user_export_file %> |
6
+ <%= link_to 'Back', user_export_files_path %>
@@ -0,0 +1,44 @@
1
+ <div id="content_detail" class="ui-corner-all ui-widget-content">
2
+ <h1 class="title"><%= t('page.listing', model: t('activerecord.models.user_export_file')) -%></h1>
3
+ <div id="content_list">
4
+
5
+ <table class="table table-striped index">
6
+ <thead>
7
+ <tr>
8
+ <th>Id</th>
9
+ <th><%= t('activerecord.models.user') %></th>
10
+ <th><%= t('activerecord.attributes.user_export_file.user_export_file_name') -%></th>
11
+ <th><%= t('activerecord.attributes.user_export_file.state') -%></th>
12
+ <th></th>
13
+ </tr>
14
+ </thead>
15
+
16
+ <tbody>
17
+ <% @user_export_files.each do |user_export_file| %>
18
+ <tr class="line<%= cycle("0", "1") -%>">
19
+ <td><%= link_to user_export_file.id, user_export_file %></td>
20
+ <td><%= user_export_file.user.try(:username) %></td>
21
+ <td>
22
+ <%= link_to user_export_file.user_export_file_name, user_export_file_path(user_export_file, format: :download) if user_export_file.user_export_file_name %>
23
+ <br />
24
+ <%= user_export_file.created_at %>
25
+ </td>
26
+ <td><%= localized_state(user_export_file.current_state) -%></td>
27
+ <td>
28
+ <%= link_to t('page.destroy'), user_export_file, data: {confirm: t('page.are_you_sure')}, method: :delete -%>
29
+ </td>
30
+ </tr>
31
+ <% end %>
32
+ </tbody>
33
+ </table>
34
+
35
+ <%= paginate(@user_export_files) %>
36
+
37
+ </div>
38
+ </div>
39
+
40
+ <div id="submenu" class="ui-corner-all ui-widget-content">
41
+ <ul>
42
+ <li><%= link_to t('page.new', model: t('activerecord.models.user_export_file')), new_user_export_file_path -%></li>
43
+ </ul>
44
+ </div>
@@ -0,0 +1,16 @@
1
+ <div id="content_detail" class="ui-corner-all ui-widget-content">
2
+ <h1 class="title"><%= t('page.new', model: t('activerecord.models.user_export_file')) -%></h1>
3
+ <div id="content_list">
4
+
5
+ <p><%= t('export.are_you_sure_to_export') %></p>
6
+
7
+ <%= render 'form' %>
8
+
9
+ </div>
10
+ </div>
11
+
12
+ <div id="submenu" class="ui-corner-all ui-widget-content">
13
+ <ul>
14
+ <li><%= link_to t('page.listing', model: t('activerecord.models.user_export_file')), user_export_files_path -%></li>
15
+ </ul>
16
+ </div>
@@ -0,0 +1,36 @@
1
+ <div id="content_detail" class="ui-corner-all ui-widget-content">
2
+ <h1 class="title"><%= t('page.showing', model: t('activerecord.models.user_export_file')) -%></h1>
3
+ <div id="content_list">
4
+ <p id="notice"><%= notice %></p>
5
+
6
+ <p>
7
+ <strong><%= t('activerecord.models.user') %></strong>
8
+ <%= @user_export_file.user.try(:username) %>
9
+ </p>
10
+
11
+ <p>
12
+ <strong><%= t('activerecord.attributes.user_export_file.user_export_file_name') -%></strong>
13
+ <%= link_to @user_export_file.user_export_file_name, user_export_file_path(@user_export_file, format: :download) if @user_export_file.user_export_file_name %>
14
+ </p>
15
+
16
+ <p>
17
+ <strong><%= t('activerecord.attributes.user_export_file.state') -%>:</strong>
18
+ <%= localized_state(@user_export_file.current_state) -%>
19
+ </p>
20
+
21
+ <p>
22
+ <strong><%= t('page.created_at') -%>:</strong>
23
+ <%= l(@user_export_file.created_at) if @user_export_file.created_at -%>
24
+ </p>
25
+
26
+ </div>
27
+ </div>
28
+
29
+ <div id="submenu" class="ui-corner-all ui-widget-content">
30
+ <ul>
31
+ <li><%= back_to_index(flash[:page_info]) -%></li>
32
+ <% if current_user.has_role?('Administrator') %>
33
+ <li><%= link_to 'Resque', resque_path %></li>
34
+ <% end %>
35
+ </ul>
36
+ </div>
@@ -0,0 +1,40 @@
1
+ <%= simple_form_for(@user_group) do |f| %>
2
+ <%= f.error_notification -%>
3
+
4
+ <div class="field">
5
+ <%= f.label :name %><br />
6
+ <%= f.text_field :name %>
7
+ </div>
8
+ <div class="field">
9
+ <%= f.label :display_name %><br />
10
+ <%= f.text_area :display_name %>
11
+ </div>
12
+ <div class="field">
13
+ <%= f.label :valid_period_for_new_user %><br />
14
+ <%= f.text_field :valid_period_for_new_user, class: 'resource_integer' %>
15
+ </div>
16
+ <div class="field">
17
+ <%= f.label :number_of_day_to_notify_due_date %><br />
18
+ <%= f.text_field :number_of_day_to_notify_due_date, class: 'resource_integer' %>
19
+ </div>
20
+ <div class="field">
21
+ <%= f.label :number_of_day_to_notify_overdue %><br />
22
+ <%= f.text_field :number_of_day_to_notify_overdue, class: 'resource_integer' %>
23
+ </div>
24
+ <div class="field">
25
+ <%= f.label :number_of_time_to_notify_overdue %><br />
26
+ <%= f.text_field :number_of_time_to_notify_overdue, class: 'resource_integer' %>
27
+ </div>
28
+
29
+ <% if defined?(EnjuCirculation) and !@user_group.new_record? %>
30
+ <%= render 'user_groups/checkout_form', f: f %>
31
+ <% end %>
32
+
33
+ <div class="field">
34
+ <%= f.label :note %><br />
35
+ <%= f.text_area :note %>
36
+ </div>
37
+ <div class="actions">
38
+ <%= f.submit %>
39
+ </div>
40
+ <% end %>
@@ -0,0 +1,13 @@
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')) -%></h1>
3
+ <div id="content_list">
4
+ <%= render 'form' %>
5
+ </div>
6
+ </div>
7
+
8
+ <div id="submenu" class="ui-corner-all ui-widget-content">
9
+ <ul>
10
+ <li><%= link_to t('page.show'), user_group_path(@user_group) -%></li>
11
+ <li><%= link_to t('page.back'), user_groups_path -%></li>
12
+ </ul>
13
+ </div>
@@ -0,0 +1,51 @@
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')) -%></h1>
3
+ <div id="content_list">
4
+
5
+ <table class="table table-striped index">
6
+ <tr>
7
+ <th id="position"></th>
8
+ <th><%= t('activerecord.attributes.user_group.name') -%></th>
9
+ <th>
10
+ <%= t('activerecord.attributes.user_group.display_name') -%>
11
+ /
12
+ <%= t('activerecord.attributes.user_group.note') -%>
13
+ </th>
14
+ <th></th>
15
+ </tr>
16
+
17
+ <%- @user_groups.each do |user_group| -%>
18
+ <tr class="line<%= cycle("0", "1") -%>">
19
+ <td>
20
+ <%- if policy(user_group).update? -%>
21
+ <%= move_position(user_group) -%>
22
+ <%- end -%>
23
+ </td>
24
+ <td><%= user_group.name -%></td>
25
+ <td>
26
+ <%= link_to user_group.display_name.localize, user_group -%>
27
+ <br />
28
+ <%= user_group.note -%>
29
+ </td>
30
+ <td>
31
+ <%- if policy(user_group).update? -%>
32
+ <%= link_to t('page.edit'), edit_user_group_path(user_group) -%>
33
+ <% end %>
34
+ <%- if policy(user_group).destroy? -%>
35
+ <%= link_to t('page.destroy'), user_group_path(user_group), data: {confirm: t('page.are_you_sure')}, method: :delete -%>
36
+ <% end %>
37
+ </td>
38
+ </tr>
39
+ <%- end -%>
40
+ </table>
41
+
42
+ </div>
43
+ </div>
44
+
45
+ <div id="submenu" class="ui-corner-all ui-widget-content">
46
+ <ul>
47
+ <%- if policy(UserGroup).create? -%>
48
+ <li><%= link_to t('page.new', model: t('activerecord.models.user_group')), new_user_group_path -%></li>
49
+ <%- end -%>
50
+ </ul>
51
+ </div>
@@ -0,0 +1,12 @@
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')) -%></h1>
3
+ <div id="content_list">
4
+ <%= render 'form' %>
5
+ </div>
6
+ </div>
7
+
8
+ <div id="submenu" class="ui-corner-all ui-widget-content">
9
+ <ul>
10
+ <li><%= link_to t('page.back'), user_groups_path -%></li>
11
+ </ul>
12
+ </div>
@@ -0,0 +1,68 @@
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')) -%></h1>
3
+ <div id="content_list">
4
+ <p id="notice"><%= notice %></p>
5
+
6
+ <p>
7
+ <strong><%= t('activerecord.attributes.user_group.name') -%>:</strong>
8
+ <%= @user_group.name -%>
9
+ </p>
10
+
11
+ <p>
12
+ <strong><%= t('activerecord.attributes.user_group.display_name') -%>:</strong>
13
+ <%= @user_group.display_name.localize -%>
14
+ </p>
15
+
16
+ <p>
17
+ <strong><%= t('activerecord.attributes.user_group.valid_period_for_new_user') -%>:</strong>
18
+ <%= @user_group.valid_period_for_new_user %>
19
+ </p>
20
+
21
+ <% if defined?(EnjuCirculation) %>
22
+ <p>
23
+ <strong><%= t('activerecord.attributes.user_group.number_of_day_to_notify_due_date') -%>:</strong>
24
+ <%= @user_group.number_of_day_to_notify_due_date %>
25
+ </p>
26
+
27
+ <p>
28
+ <strong><%= t('activerecord.attributes.user_group.number_of_day_to_notify_overdue') -%>:</strong>
29
+ <%= @user_group.number_of_day_to_notify_overdue %>
30
+ </p>
31
+
32
+ <p>
33
+ <strong><%= t('activerecord.attributes.user_group.number_of_time_to_notify_overdue') -%>:</strong>
34
+ <%= @user_group.number_of_time_to_notify_overdue %>
35
+ </p>
36
+
37
+ <p>
38
+ <strong><%= t('activerecord.models.checkout_type') -%></strong>
39
+ </p>
40
+ <ul>
41
+ <%- @user_group.user_group_has_checkout_types.each do |available_checkout_type| -%>
42
+ <li>
43
+ <%= link_to available_checkout_type.checkout_type.display_name.localize, available_checkout_type.checkout_type -%>
44
+ (<%= link_to t('page.number_of_days', count: available_checkout_type.checkout_period), edit_user_group_user_group_has_checkout_type_path(@user_group, available_checkout_type) -%>)
45
+ </li>
46
+ <%- end -%>
47
+ </ul>
48
+ <% end %>
49
+
50
+ <p>
51
+ <strong><%= t('activerecord.attributes.user_group.note') -%>:</strong>
52
+ <%= @user_group.note -%>
53
+ </p>
54
+
55
+ </div>
56
+ </div>
57
+
58
+ <div id="submenu" class="ui-corner-all ui-widget-content">
59
+ <ul>
60
+ <%- if policy(@user_group).update? -%>
61
+ <li><%= link_to t('page.edit'), edit_user_group_path(@user_group) -%></li>
62
+ <%- end -%>
63
+ <li><%= back_to_index(flash[:page_info]) -%></li>
64
+ <%- if policy(UserGroupHasCheckoutType).create? -%>
65
+ <li><%= link_to t('page.new', model: t('activerecord.models.checkout_type')), new_user_group_user_group_has_checkout_type_path(@user_group) -%></li>
66
+ <%- end -%>
67
+ </ul>
68
+ </div>
@@ -0,0 +1,61 @@
1
+ <%= form_for(@user_import_file) do |f| %>
2
+ <% if @user_import_file.errors.any? %>
3
+ <div id="error_explanation">
4
+ <h2><%= pluralize(@user_import_file.errors.count, "error") %> prohibited this user_import_file from being saved:</h2>
5
+
6
+ <ul>
7
+ <% @user_import_file.errors.full_messages.each do |msg| %>
8
+ <li><%= msg %></li>
9
+ <% end %>
10
+ </ul>
11
+ </div>
12
+ <% end %>
13
+
14
+ <div class="field">
15
+ <%= f.label :user_id %><br>
16
+ <%= f.number_field :user_id %>
17
+ </div>
18
+ <div class="field">
19
+ <%= f.label :note %><br>
20
+ <%= f.text_area :note %>
21
+ </div>
22
+ <div class="field">
23
+ <%= f.label :executed_at %><br>
24
+ <%= f.datetime_select :executed_at %>
25
+ </div>
26
+ <div class="field">
27
+ <%= f.label :state %><br>
28
+ <%= f.text_field :state %>
29
+ </div>
30
+ <div class="field">
31
+ <%= f.label :user_import_file_name %><br>
32
+ <%= f.text_field :user_import_file_name %>
33
+ </div>
34
+ <div class="field">
35
+ <%= f.label :user_import_content_type %><br>
36
+ <%= f.text_field :user_import_content_type %>
37
+ </div>
38
+ <div class="field">
39
+ <%= f.label :user_import_file_size %><br>
40
+ <%= f.text_field :user_import_file_size %>
41
+ </div>
42
+ <div class="field">
43
+ <%= f.label :user_import_updated_at %><br>
44
+ <%= f.datetime_select :user_import_updated_at %>
45
+ </div>
46
+ <div class="field">
47
+ <%= f.label :user_import_fingerprint %><br>
48
+ <%= f.text_field :user_import_fingerprint %>
49
+ </div>
50
+ <div class="field">
51
+ <%= f.label :edit_mode %><br>
52
+ <%= f.text_field :edit_mode %>
53
+ </div>
54
+ <div class="field">
55
+ <%= f.label :error_message %><br>
56
+ <%= f.text_area :error_message %>
57
+ </div>
58
+ <div class="actions">
59
+ <%= f.submit %>
60
+ </div>
61
+ <% end %>
@@ -0,0 +1,22 @@
1
+ <h2><%= t('activerecord.models.user_import_result') %></h2>
2
+ <table class="table table-striped index">
3
+ <tr>
4
+ <th><%= t('activerecord.attributes.user_import_result.lineno') %></th>
5
+ <th><%= t('activerecord.attributes.user_import_result.body') %></th>
6
+ <th><%= t('activerecord.models.user') %></th>
7
+ <th></th>
8
+ </tr>
9
+ <% @user_import_results.each_with_index do |user_import_result, idx| %>
10
+ <tr class="line<%= cycle("0", "1") -%>">
11
+ <td><%= @user_import_results.offset_value + idx + 1 %></td>
12
+ <td><%= user_import_result.body.inspect %></td>
13
+ <td><%= link_to user_import_result.user.username, user_import_result.user.profile if user_import_result.user.try(:profile) %></td>
14
+ <td>
15
+ <%= link_to t('page.show'), user_import_result %>
16
+ <%= link_to t('page.destroy'), user_import_result, data: {confirm: t('page.are_you_sure')}, method: :delete %>
17
+ </td>
18
+ </tr>
19
+ <% end %>
20
+ </table>
21
+ <%= paginate(@user_import_results) %>
22
+
@@ -0,0 +1,6 @@
1
+ <h1>Editing user_import_file</h1>
2
+
3
+ <%= render 'form' %>
4
+
5
+ <%= link_to 'Show', @user_import_file %> |
6
+ <%= link_to 'Back', user_import_files_path %>
@@ -0,0 +1,45 @@
1
+ <div id="content_detail" class="ui-corner-all ui-widget-content">
2
+ <h1 class="title"><%= t('page.listing', model: t('activerecord.models.user_import_file')) -%></h1>
3
+ <div id="content_list">
4
+
5
+ <table class="table table-striped index">
6
+ <thead>
7
+ <tr>
8
+ <th style="width: 30px">Id</th>
9
+ <th><%= t('activerecord.attributes.user_import_file.user_import_file_name') -%></th>
10
+ <th><%= t('activerecord.attributes.user_import_file.edit_mode') -%></th>
11
+ <th><%= t('activerecord.attributes.user_import_file.executed_at') -%></th>
12
+ <th><%= t('activerecord.attributes.user_import_file.state') -%></th>
13
+ <th></th>
14
+ </tr>
15
+ </thead>
16
+
17
+ <tbody>
18
+ <% @user_import_files.each do |user_import_file| %>
19
+ <tr class="line<%= cycle("0", "1") -%>">
20
+ <td><%= link_to (user_import_file.id), user_import_file -%></td>
21
+ <td>
22
+ <%= link_to user_import_file.user_import_file_name, user_import_file_path(user_import_file, format: :download) if user_import_file.user_import_file_name %>
23
+ <br />
24
+ <%= t('activerecord.models.user') -%>: <%= link_to user_import_file.user.username, user_import_file.user.profile if user_import_file.user.try(:profile) -%></td>
25
+ <td><%= user_import_file.edit_mode -%></td>
26
+ <td><%= l(user_import_file.executed_at) if user_import_file.executed_at -%></td>
27
+ <td><%= localized_state(user_import_file.current_state) -%></td>
28
+ <td>
29
+ <%= link_to t('page.show'), user_import_file -%>
30
+ <%= link_to t('page.destroy'), user_import_file, data: {confirm: t('page.are_you_sure')}, method: :delete -%>
31
+ </td>
32
+ </tr>
33
+ <% end %>
34
+ </tbody>
35
+ </table>
36
+
37
+ <%= paginate(@user_import_files) -%>
38
+ </div>
39
+ </div>
40
+
41
+ <div id="submenu" class="ui-corner-all ui-widget-content">
42
+ <ul>
43
+ <li><%= link_to t('page.new', model: t('activerecord.models.user_import_file')), new_user_import_file_path -%></li>
44
+ </ul>
45
+ </div>
@@ -0,0 +1,60 @@
1
+ <div id="content_detail" class="ui-corner-all ui-widget-content">
2
+ <h1 class="title"><%= t('page.new', model: t('activerecord.models.user_import_file')) -%></h1>
3
+ <div id="content_list">
4
+
5
+ <%= form_for(@user_import_file, html: { multipart: true }) do |f| %>
6
+ <%= f.error_messages -%>
7
+
8
+ <div class="field">
9
+ <%= f.label t('page.file') %><br />
10
+ <%= f.file_field :user_import %>
11
+ </div>
12
+
13
+ <div class="field">
14
+ <%= f.label :edit_mode -%><br />
15
+ <%= f.radio_button :edit_mode, 'create', checked: 'checked' %>
16
+ <%= f.label :edit_mode, t('page.create'), value: 'create' %>
17
+ <%= f.radio_button :edit_mode, 'update' %>
18
+ <%= f.label :edit_mode, t('page.update'), value: 'update' %>
19
+ <%= f.radio_button :edit_mode, 'destroy' %>
20
+ <%= f.label :edit_mode, t('page.destroy'), value: 'destroy' %>
21
+ </div>
22
+
23
+ <div class="field">
24
+ <%= f.label :user_encoding -%><br />
25
+ <%= f.radio_button :user_encoding, 'auto_detect', checked: 'checked' %>
26
+ <%= f.label :user_encoding, t('import.auto_detect'), value: 'auto_detect' %>
27
+ <%= f.radio_button :user_encoding, 'utf-8' %>
28
+ <%= f.label :user_encoding, 'UTF-8', value: 'utf-8' %>
29
+ <%= f.radio_button :user_encoding, 'shift_jis' %>
30
+ <%= f.label :user_encoding, 'Shift_JIS', value: 'shift_jis' %>
31
+ <%= f.radio_button :user_encoding, 'euc-jp' %>
32
+ <%= f.label :user_encoding, 'EUC-JP', value: 'euc-jp' %>
33
+ </div>
34
+
35
+ <div class="field">
36
+ <%= f.label :default_user_group_id -%>
37
+ <%= f.select(:default_user_group_id, @user_groups.collect{|u| [u.display_name.localize, u.id]}) -%><br />
38
+ <%= t('user_import_file.default_user_group') %>
39
+ </div>
40
+
41
+ <div class="field">
42
+ <%= f.label :default_library_id -%>
43
+ <%= f.select(:default_library_id, @libraries.collect{|l| [l.display_name.localize, l.id]}) -%><br />
44
+ <%= t('user_import_file.default_library') %>
45
+ </div>
46
+
47
+ <div class="actions">
48
+ <%= f.hidden_field :mode, value: 'import' %>
49
+ <%= f.submit t('page.start_import') %>
50
+ </div>
51
+ <% end %>
52
+
53
+ </div>
54
+ </div>
55
+
56
+ <div id="submenu" class="ui-corner-all ui-widget-content">
57
+ <ul>
58
+ <li><%= back_to_index(flash[:page_info]) %></li>
59
+ </ul>
60
+ </div>
@@ -0,0 +1,85 @@
1
+ <div id="content_detail" class="ui-corner-all ui-widget-content">
2
+ <h1 class="title"><%= t('page.showing', model: t('activerecord.models.user_import_file')) -%></h1>
3
+ <div id="content_list">
4
+ <p id="notice"><%= notice %></p>
5
+
6
+ <p>
7
+ <strong>Id:</strong>
8
+ <%= @user_import_file.id -%>
9
+ </p>
10
+
11
+ <% if @user_import_file.user_import_file_name %>
12
+ <p>
13
+ <strong><%= t('activerecord.attributes.user_import_file.user_import_file_name') -%>:</strong>
14
+ <%= link_to @user_import_file.user_import_file_name, user_import_file_path(@user_import_file, format: :download) %>
15
+ (<%= @user_import_file.user_import_content_type -%>)
16
+ </p>
17
+
18
+ <p>
19
+ <strong><%= t('activerecord.attributes.user_import_file.user_import_file_size') -%>:</strong>
20
+ <%= @user_import_file.user_import_file_size -%>
21
+ </p>
22
+ <% end %>
23
+
24
+ <p>
25
+ <strong><%= t('page.created_at') -%>:</strong>
26
+ <%= l(@user_import_file.created_at) if @user_import_file.created_at -%>
27
+ </p>
28
+
29
+ <p>
30
+ <strong><%= t('activerecord.attributes.user_import_file.executed_at') -%>:</strong>
31
+ <%= l(@user_import_file.executed_at) if @user_import_file.executed_at -%>
32
+ </p>
33
+
34
+ <p>
35
+ <strong><%= t('activerecord.attributes.user_import_file.edit_mode') -%>:</strong>
36
+ <%= @user_import_file.edit_mode -%>
37
+ </p>
38
+
39
+ <p>
40
+ <strong><%= t('activerecord.attributes.user_import_file.user_encoding') -%>:</strong>
41
+ <%= @user_import_file.user_encoding -%>
42
+ </p>
43
+
44
+ <p>
45
+ <strong><%= t('activerecord.attributes.user_import_file.default_user_group_id') -%>:</strong>
46
+ <%= link_to @user_import_file.default_user_group.display_name.localize, @user_import_file.default_user_group if @user_import_file.default_user_group.try(:display_name) -%>
47
+ </p>
48
+
49
+ <p>
50
+ <strong><%= t('activerecord.attributes.user_import_file.default_library_id') -%>:</strong>
51
+ <%= link_to @user_import_file.default_library.display_name.localize, @user_import_file.default_library if @user_import_file.default_library.try(:display_name) -%>
52
+ </p>
53
+
54
+ <p>
55
+ <strong><%= t('activerecord.attributes.user_import_file.state') -%>:</strong>
56
+ <%= localized_state(@user_import_file.current_state) -%>
57
+ </p>
58
+
59
+ <p>
60
+ <strong><%= t('activerecord.attributes.user_import_file.error_message') -%>:</strong>
61
+ <%= simple_format(@user_import_file.error_message) -%>
62
+ </p>
63
+
64
+ <p>
65
+ <strong><%= t('activerecord.models.user') -%>:</strong>
66
+ <%= link_to @user_import_file.user.username, @user_import_file.user.profile if @user_import_file.user.try(:profile) -%>
67
+ </p>
68
+
69
+ <% if @user_import_results %>
70
+ <%= render 'results' %>
71
+ <% end %>
72
+
73
+ </div>
74
+ </div>
75
+
76
+ <div id="submenu" class="ui-corner-all ui-widget-content">
77
+ <%= form_for(@user_import_file) do |f| %>
78
+ <ul>
79
+ <li><%= back_to_index(flash[:page_info]) -%></li>
80
+ <% if current_user.has_role?('Administrator') %>
81
+ <li><%= link_to 'Resque', resque_path %></li>
82
+ <% end %>
83
+ </ul>
84
+ <% end %>
85
+ </div>
@@ -0,0 +1,29 @@
1
+ <%= form_for(@user_import_result) do |f| %>
2
+ <% if @user_import_result.errors.any? %>
3
+ <div id="error_explanation">
4
+ <h2><%= pluralize(@user_import_result.errors.count, "error") %> prohibited this user_import_result from being saved:</h2>
5
+
6
+ <ul>
7
+ <% @user_import_result.errors.full_messages.each do |msg| %>
8
+ <li><%= msg %></li>
9
+ <% end %>
10
+ </ul>
11
+ </div>
12
+ <% end %>
13
+
14
+ <div class="field">
15
+ <%= f.label :user_import_file_id %><br>
16
+ <%= f.number_field :user_import_file_id %>
17
+ </div>
18
+ <div class="field">
19
+ <%= f.label :user_id %><br>
20
+ <%= f.number_field :user_id %>
21
+ </div>
22
+ <div class="field">
23
+ <%= f.label :body %><br>
24
+ <%= f.text_area :body %>
25
+ </div>
26
+ <div class="actions">
27
+ <%= f.submit %>
28
+ </div>
29
+ <% end %>