enju_biblio 0.4.0.beta.2 → 0.4.0.rc.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (125) hide show
  1. checksums.yaml +4 -4
  2. data/app/controllers/items_controller.rb +5 -1
  3. data/app/controllers/manifestations_controller.rb +12 -6
  4. data/app/mailers/agent_import_mailer.rb +2 -2
  5. data/app/mailers/resource_export_mailer.rb +2 -2
  6. data/app/mailers/resource_import_mailer.rb +2 -2
  7. data/app/models/agent.rb +3 -4
  8. data/app/models/agent_import_file.rb +1 -8
  9. data/app/models/custom_property.rb +17 -0
  10. data/app/models/import_request.rb +0 -9
  11. data/app/models/isbn_record.rb +1 -1
  12. data/app/models/issn_record.rb +1 -1
  13. data/app/models/item.rb +49 -2
  14. data/app/models/manifestation.rb +109 -247
  15. data/app/models/resource_export_file.rb +3 -16
  16. data/app/models/resource_export_file_state_machine.rb +1 -1
  17. data/app/models/resource_import_file.rb +1 -9
  18. data/app/views/items/_custom_property_fields.html.erb +7 -0
  19. data/app/views/items/_form.html.erb +18 -6
  20. data/app/views/items/show.html.erb +8 -1
  21. data/app/views/layouts/items.html.erb +1 -1
  22. data/app/views/layouts/manifestations.html.erb +1 -1
  23. data/app/views/manifestations/_custom_property_fields.html.erb +7 -0
  24. data/app/views/manifestations/_form.html.erb +10 -0
  25. data/app/views/manifestations/_manifestation.txt.erb +1 -1
  26. data/app/views/manifestations/_paginate_id_link.html.erb +1 -1
  27. data/app/views/manifestations/_show_detail_librarian.html.erb +9 -1
  28. data/app/views/manifestations/_show_detail_user.html.erb +1 -1
  29. data/app/views/manifestations/index.txt.ruby +7 -0
  30. data/app/views/manifestations/show.txt.ruby +5 -0
  31. data/app/views/resource_import_files/_results.html.erb +6 -0
  32. data/app/views/resource_import_results/index.html.erb +0 -11
  33. data/app/views/series_statements/_form.html.erb +6 -8
  34. data/app/views/series_statements/show.html.erb +12 -0
  35. data/config/locales/translation_en.yml +12 -1
  36. data/config/locales/translation_ja.yml +14 -3
  37. data/db/migrate/001_create_agents.rb +0 -1
  38. data/db/migrate/005_create_manifestations.rb +0 -1
  39. data/db/migrate/006_create_items.rb +0 -1
  40. data/db/migrate/20191219122214_create_custom_properties.rb +12 -0
  41. data/lib/enju_biblio/version.rb +1 -1
  42. data/lib/generators/enju_biblio/setup/setup_generator.rb +2 -0
  43. data/spec/controllers/items_controller_spec.rb +25 -0
  44. data/spec/controllers/manifestations_controller_spec.rb +52 -0
  45. data/spec/dummy/app/controllers/application_controller.rb +0 -1
  46. data/spec/dummy/app/models/user.rb +0 -2
  47. data/spec/dummy/config/environments/development.rb +11 -24
  48. data/spec/dummy/config/environments/production.rb +16 -28
  49. data/spec/dummy/config/environments/test.rb +6 -6
  50. data/spec/dummy/config/initializers/assets.rb +1 -1
  51. data/spec/dummy/db/migrate/059_create_libraries.rb +1 -2
  52. data/spec/dummy/db/migrate/069_create_shelves.rb +1 -2
  53. data/spec/dummy/db/migrate/077_create_user_groups.rb +1 -2
  54. data/spec/dummy/db/migrate/080_create_library_groups.rb +1 -1
  55. data/spec/dummy/db/migrate/120_create_baskets.rb +1 -1
  56. data/spec/dummy/db/migrate/124_create_bookstores.rb +1 -2
  57. data/spec/dummy/db/migrate/130_create_request_status_types.rb +1 -1
  58. data/spec/dummy/db/migrate/131_create_request_types.rb +1 -1
  59. data/spec/dummy/db/migrate/20081006090811_create_subscriptions.rb +1 -2
  60. data/spec/dummy/db/migrate/20081006093246_create_subscribes.rb +1 -1
  61. data/spec/dummy/db/migrate/20081023092436_create_search_engines.rb +1 -1
  62. data/spec/dummy/db/migrate/20100211105551_add_admin_networks_to_library_group.rb +1 -1
  63. data/spec/dummy/db/migrate/20100314190054_add_opening_hour_to_library.rb +1 -1
  64. data/spec/dummy/db/migrate/20110222073537_add_url_to_library_group.rb +1 -1
  65. data/spec/dummy/db/migrate/20110318183304_add_valid_period_for_new_user_to_user_group.rb +1 -1
  66. data/spec/dummy/db/migrate/20120105074911_add_isil_to_library.rb +1 -1
  67. data/spec/dummy/db/migrate/20120129014038_create_budget_types.rb +1 -1
  68. data/spec/dummy/db/migrate/20120319173203_create_accepts.rb +1 -1
  69. data/spec/dummy/db/migrate/20120510140958_add_closed_to_shelf.rb +1 -1
  70. data/spec/dummy/db/migrate/20130412083556_add_latitude_and_longitude_to_library.rb +1 -1
  71. data/spec/dummy/db/migrate/20140110122216_create_user_import_files.rb +1 -1
  72. data/spec/dummy/db/migrate/20140110131010_create_user_import_results.rb +1 -1
  73. data/spec/dummy/db/migrate/20140524074813_create_user_import_file_transitions.rb +2 -6
  74. data/spec/dummy/db/migrate/20140628072217_add_user_encoding_to_user_import_file.rb +1 -1
  75. data/spec/dummy/db/migrate/20140709113413_create_user_export_files.rb +1 -1
  76. data/spec/dummy/db/migrate/20140709113905_create_user_export_file_transitions.rb +2 -6
  77. data/spec/dummy/db/migrate/20140720170714_add_default_library_id_to_user_import_file.rb +1 -1
  78. data/spec/dummy/db/migrate/20140720170735_add_default_user_group_id_to_user_import_file.rb +1 -1
  79. data/spec/dummy/db/migrate/20140821151023_create_colors.rb +1 -1
  80. data/spec/dummy/db/migrate/20150221063719_add_settings_to_library_group.rb +1 -1
  81. data/spec/dummy/db/migrate/20150506105356_add_error_message_to_user_import_result.rb +1 -1
  82. data/spec/dummy/db/migrate/20150924115059_create_withdraws.rb +1 -1
  83. data/spec/dummy/db/migrate/20160610093229_add_html_snippet_to_library_group.rb +1 -1
  84. data/spec/dummy/db/migrate/20160627232219_add_most_recent_to_user_import_file_transitions.rb +1 -1
  85. data/spec/dummy/db/migrate/20160627232316_add_most_recent_to_user_export_file_transitions.rb +1 -1
  86. data/spec/dummy/db/migrate/20160813191647_add_max_number_of_results_to_library_group.rb +1 -1
  87. data/spec/dummy/db/migrate/20160813191733_add_family_name_first_to_library_group.rb +1 -1
  88. data/spec/dummy/db/migrate/20160813192542_add_pub_year_facet_range_interval_to_library_group.rb +1 -1
  89. data/spec/dummy/db/migrate/20160813203039_add_user_id_to_library_group.rb +1 -1
  90. data/spec/dummy/db/migrate/20170305064014_add_csv_charset_conversion_to_library_group.rb +1 -1
  91. data/spec/dummy/db/migrate/20171014084528_add_header_logo_to_library_group.rb +1 -1
  92. data/spec/dummy/db/migrate/20171126133835_rename_login_banner_to_old_login_banner.rb +1 -1
  93. data/spec/dummy/db/migrate/20171126135238_add_foreign_key_to_library_group_id_on_library.rb +1 -1
  94. data/spec/dummy/db/migrate/20180102162311_add_header_logo_meta_to_library_group.rb +1 -1
  95. data/spec/dummy/db/migrate/20180107160726_add_constraints_to_most_recent_for_user_import_file_transitions.rb +1 -1
  96. data/spec/dummy/db/migrate/20180107160740_add_constraints_to_most_recent_for_user_export_file_transitions.rb +1 -1
  97. data/spec/dummy/db/migrate/20191216131755_add_email_to_library_group.rb +6 -0
  98. data/spec/dummy/db/schema.rb +96 -91
  99. data/spec/dummy/db/test.sqlite3 +0 -0
  100. data/spec/dummy/public/500.html +1 -0
  101. data/spec/factories/custom_property.rb +18 -0
  102. data/spec/factories/series_statement.rb +4 -3
  103. data/spec/fixtures/agents.yml +0 -1
  104. data/spec/fixtures/bookstores.yml +0 -8
  105. data/spec/fixtures/budget_types.yml +10 -9
  106. data/spec/fixtures/events.yml +0 -9
  107. data/spec/fixtures/items.yml +10 -11
  108. data/spec/fixtures/library_groups.yml +6 -11
  109. data/spec/fixtures/manifestations.yml +0 -1
  110. data/spec/models/agent_spec.rb +0 -1
  111. data/spec/models/custom_property_spec.rb +18 -0
  112. data/spec/models/item_spec.rb +0 -1
  113. data/spec/models/manifestation_spec.rb +32 -8
  114. data/spec/rails_helper.rb +3 -3
  115. data/spec/system/custom_properties_spec.rb +84 -0
  116. data/spec/system/items_spec.rb +60 -0
  117. data/spec/system/series_statements_spec.rb +16 -0
  118. data/spec/views/manifestations/index.json.jbuilder_spec.rb +18 -0
  119. data/spec/views/manifestations/{index.txt.erb_spec.rb → index.txt.ruby_spec.rb} +1 -1
  120. data/spec/views/manifestations/{show.txt.erb_spec.rb → show.txt.ruby_spec.rb} +1 -1
  121. metadata +56 -58
  122. data/app/views/manifestations/index.txt.erb +0 -1
  123. data/app/views/manifestations/show.txt.erb +0 -1
  124. data/spec/dummy/db/migrate/20180709023037_add_taggings_counter_cache_to_tags.acts_as_taggable_on_engine.rb +0 -20
  125. data/spec/dummy/db/migrate/20180709023039_change_collation_for_tag_names.acts_as_taggable_on_engine.rb +0 -15
@@ -33,13 +33,9 @@ class ResourceExportFile < ApplicationRecord
33
33
  def export!
34
34
  transition_to!(:started)
35
35
  role_name = user.try(:role).try(:name)
36
- tempfile = Tempfile.new(['resource_export_file_', '.txt'])
37
- tempfile.puts(Manifestation.csv_header(role_name, col_sep: "\t"))
38
- Manifestation.find_each do |manifestation|
39
- tempfile.puts(manifestation.to_csv(format: :txt, role: role_name))
40
- end
41
- tempfile.close
42
- self.resource_export = File.new(tempfile.path, "r")
36
+ tsv = Manifestation.export(role: role_name)
37
+ self.resource_export = StringIO.new(tsv)
38
+ self.resource_export.instance_write(:filename, "resource_export.txt")
43
39
  save!
44
40
  transition_to!(:completed)
45
41
  mailer = ResourceExportMailer.completed(self)
@@ -50,15 +46,6 @@ class ResourceExportFile < ApplicationRecord
50
46
  send_message(mailer)
51
47
  raise e
52
48
  end
53
-
54
- private
55
- def self.transition_class
56
- ResourceExportFileTransition
57
- end
58
-
59
- def self.initial_state
60
- :pending
61
- end
62
49
  end
63
50
 
64
51
  # == Schema Information
@@ -6,7 +6,7 @@ class ResourceExportFileStateMachine
6
6
  state :completed
7
7
  state :failed
8
8
 
9
- transition from: :pending, to: :started
9
+ transition from: :pending, to: [:started, :failed]
10
10
  transition from: :started, to: [:completed, :failed]
11
11
 
12
12
  after_transition(from: :pending, to: :started) do |resource_export_file|
@@ -769,18 +769,10 @@ class ResourceImportFile < ApplicationRecord
769
769
  manifestation
770
770
  end
771
771
 
772
- def self.transition_class
773
- ResourceImportFileTransition
774
- end
775
-
776
- def self.initial_state
777
- :pending
778
- end
779
-
780
772
  def set_identifier(row)
781
773
  identifiers = []
782
774
  %w(isbn issn doi jpno ncid).each do |id_type|
783
- if row["#{id_type}"].present?
775
+ if row[id_type.to_s].present?
784
776
  row[id_type].split(/\/\//).each do |identifier_s|
785
777
  import_id = Identifier.new(body: identifier_s)
786
778
  identifier_type = IdentifierType.find_by(name: id_type)
@@ -0,0 +1,7 @@
1
+ <div class="nested-fields">
2
+ <%= f.label :label %>
3
+ <%= f.text_field :label, class: 'resource_custom_property_body' -%>
4
+ <%= f.label :value %>
5
+ <%= f.text_field :value, class: 'resource_custom_property_body' -%>
6
+ <%= link_to_remove_association t('page.remove'), f, data: {confirm: t('page.are_you_sure')} %><br />
7
+ </div>
@@ -1,10 +1,12 @@
1
1
  <%= render 'manifestations/title', manifestation: @item.manifestation -%>
2
- <p>
3
- <%= t('activerecord.models.classification') -%>:
4
- <%- @item.manifestation.classifications.each do |classification| -%>
5
- <%= link_to "#{classification.classification_type.display_name}: #{classification.category}", manifestations_path(query: "classification_sm:#{classification.classification_type.name}_#{classification.category}") -%>
6
- <%- end -%>
7
- </p>
2
+ <% if defined?(EnjuSubject) %>
3
+ <p>
4
+ <%= t('activerecord.models.classification') -%>:
5
+ <%- @item.manifestation.classifications.each do |classification| -%>
6
+ <%= link_to "#{classification.classification_type.display_name}: #{classification.category}", manifestations_path(query: "classification_sm:#{classification.classification_type.name}_#{classification.category}") -%>
7
+ <%- end -%>
8
+ </p>
9
+ <% end %>
8
10
  <%= render 'page/required_field' %>
9
11
  <%= simple_form_for(@item) do |f| -%>
10
12
  <%= f.error_messages -%>
@@ -87,6 +89,16 @@
87
89
  <%= f.text_field :binding_item_identifier, class: 'resource_identifier' -%>
88
90
  </div>
89
91
 
92
+ <div class="field">
93
+ <%= f.label :custom_property -%><br />
94
+ <%= f.fields_for :custom_properties do |custom_property_form| %>
95
+ <%= render 'custom_property_fields', f: custom_property_form %>
96
+ <% end %>
97
+ <div class="links">
98
+ <p><%= link_to_add_association t('page.add'), f, :custom_properties %></p>
99
+ </div>
100
+ </div>
101
+
90
102
  <div class="field">
91
103
  <%= f.label :note -%><br />
92
104
  <%= f.text_area :note, class: 'resource_textarea' -%>
@@ -72,7 +72,7 @@
72
72
 
73
73
  <p>
74
74
  <strong><%= t('activerecord.models.budget_type') -%>:</strong>
75
- <%= @item.budget_type.try(:display_name).try(:localize) -%>
75
+ <%= @item.budget_type.try(:display_name) -%>
76
76
  </p>
77
77
 
78
78
  <p>
@@ -112,6 +112,13 @@
112
112
  </p>
113
113
 
114
114
  <% if current_user.try(:has_role?, 'Librarian') %>
115
+ <% @item.custom_properties.each do |custom_property| %>
116
+ <p>
117
+ <strong><%= custom_property.label -%>:</strong>
118
+ <%= custom_property.value -%>
119
+ </p>
120
+ <% end %>
121
+
115
122
  <p>
116
123
  <strong><%= t('activerecord.attributes.item.memo') -%>:</strong>
117
124
  <%= simple_format(@item.memo) %>
@@ -4,7 +4,7 @@
4
4
  <meta charset="UTF-8" />
5
5
  <%= render 'page/include' %>
6
6
  <title><%= title(controller.controller_name) %></title>
7
- <% if %w(index show new edit).include?(controller.action_name) %>
7
+ <% if %w(show edit index).include?(controller.action_name) && defined?(EnjuManifestationViewer) %>
8
8
  <%= book_jacket_header(@library_group.book_jacket_source) %>
9
9
  <% end %>
10
10
  </head>
@@ -8,7 +8,7 @@
8
8
  <%= auto_discovery_link_tag(:rss, url_for(filtered_params.merge(format: :rss, page: nil, commit: nil, only_path: true)), title: (t('manifestation.library_group_manifestation', library_group_name: @library_group.display_name) + " (RSS)")) %>
9
9
  <%= auto_discovery_link_tag(:atom, url_for(filtered_params.merge(format: :atom, page: nil, commit: nil, only_path: true)), title: (t('manifestation.library_group_manifestation', library_group_name: @library_group.display_name) + " (Atom)")) %>
10
10
  <%- end -%>
11
- <% if %w(show edit index).include?(controller.action_name) %>
11
+ <% if %w(show edit index).include?(controller.action_name) && defined?(EnjuManifestationViewer) %>
12
12
  <%= book_jacket_header(@library_group.book_jacket_source) %>
13
13
  <% end %>
14
14
  <link rel="search" type="application/opensearchdescription+xml" title="<%= LibraryGroup.site_config.display_name %>" href="<%= page_opensearch_url(format: :xml) %>" />
@@ -0,0 +1,7 @@
1
+ <div class="nested-fields">
2
+ <%= f.label :label %>
3
+ <%= f.text_field :label, class: 'resource_custom_property_body' -%>
4
+ <%= f.label :value %>
5
+ <%= f.text_field :value, class: 'resource_custom_property_body' -%>
6
+ <%= link_to_remove_association t('page.remove'), f, data: {confirm: t('page.are_you_sure')} %><br />
7
+ </div>
@@ -192,6 +192,16 @@
192
192
  <%= f.text_area :description, class: 'resource_textarea' -%>
193
193
  </div>
194
194
 
195
+ <div class="field">
196
+ <%= f.label :custom_property -%><br />
197
+ <%= f.fields_for :custom_properties do |custom_property_form| %>
198
+ <%= render 'custom_property_fields', f: custom_property_form %>
199
+ <% end %>
200
+ <div class="links">
201
+ <p><%= link_to_add_association t('page.add'), f, :custom_properties %></p>
202
+ </div>
203
+ </div>
204
+
195
205
  <div class="field">
196
206
  <%= f.label :note -%><br />
197
207
  <%= f.text_area :note, class: 'resource_textarea' -%>
@@ -1 +1 @@
1
- <%= manifestation.to_csv(format: :txt, role: current_user_role_name) -%>
1
+ <%= manifestation.to_hash(role: current_user_role_name).values.to_csv(col_sep: "\t") -%>
@@ -5,8 +5,8 @@
5
5
  <% end %>
6
6
  <%= form_for :manifestations, url: manifestations_path, html: {method: 'get'} do -%>
7
7
  <div>
8
- <span id="next_link"><%= t('page.next') %></span>
9
8
  <span id="prev_link"><%= t('page.previous') %></span>
9
+ <span id="next_link"><%= t('page.next') %></span>
10
10
  <span id="back_link"><%= t('page.back_to_index') %></span>
11
11
  <%= label_tag :search_form_top, t('page.search_term') -%>:
12
12
  <%= search_field_tag 'query', @query, {id: 'search_form_top', class: 'search_form_short', placeholder: t('page.search_term')} -%>
@@ -3,7 +3,7 @@
3
3
  <div id="detail">
4
4
  <% cache([manifestation, fragment: 'show_detail_librarian_html', role: current_user_role_name, locale: @locale]) do %>
5
5
  <table class="table table-striped" id="resource_detail">
6
- <%= embed_content(manifestation) -%>
6
+ <%= embed_content(manifestation) if defined?(EnjuManifestationViewer) -%>
7
7
  <% if manifestation.title_transcription? %>
8
8
  <tr>
9
9
  <td style="width: 200px"><%= t('activerecord.attributes.manifestation.title_transcription') -%>:</td>
@@ -101,6 +101,14 @@
101
101
  <%= raw simple_format(h(manifestation.description)) -%>
102
102
  </td>
103
103
  </tr>
104
+ <% @manifestation.custom_properties.each do |custom_property| %>
105
+ <tr>
106
+ <td><%= custom_property.label -%>:</td>
107
+ <td>
108
+ <%= custom_property.value -%>
109
+ </td>
110
+ </tr>
111
+ <% end %>
104
112
  <tr>
105
113
  <td><%= t('activerecord.attributes.manifestation.note') -%>:</td>
106
114
  <td>
@@ -3,7 +3,7 @@
3
3
  <div id="detail">
4
4
  <% cache([manifestation, fragment: 'show_detail_user_html', role: current_user_role_name, locale: @locale]) do %>
5
5
  <table class="table table-striped" id="resource_detail">
6
- <%= embed_content(manifestation) -%>
6
+ <%= embed_content(manifestation) if defined?(EnjuManifestationViewer) -%>
7
7
  <% if manifestation.title_transcription? %>
8
8
  <tr>
9
9
  <td style="width: 200px"><%= t('activerecord.attributes.manifestation.title_transcription') -%>:</td>
@@ -0,0 +1,7 @@
1
+ Manifestation.csv_header(
2
+ role: current_user_role_name
3
+ ).to_csv(col_sep: "\t") + @manifestations.map{|manifestation|
4
+ manifestation.to_hash(
5
+ role: current_user_role_name
6
+ ).values.to_csv(col_sep: "\t")
7
+ }.join
@@ -0,0 +1,5 @@
1
+ Manifestation.csv_header(
2
+ role: current_user_role_name
3
+ ).to_csv(col_sep: "\t") + @manifestation.to_hash(
4
+ role: current_user_role_name
5
+ ).values.to_csv(col_sep: "\t")
@@ -1,4 +1,10 @@
1
1
  <h2><%= t('activerecord.models.resource_import_result') %></h2>
2
+
3
+ <p>
4
+ <%= link_to((image_tag 'icons/page_white_excel.png', size: '16x16', alt: 'TSV', class: 'enju_icon'), resource_import_results_path(resource_import_file_id: @resource_import_file.id, format: :txt)) -%>
5
+ (<%= link_to 'TSV', resource_import_results_path(resource_import_file_id: @resource_import_file.id, format: :txt) -%>)
6
+ </p>
7
+
2
8
  <table class="table table-striped index">
3
9
  <tr>
4
10
  <th><%= t('activerecord.attributes.resource_import_result.lineno') %></th>
@@ -13,15 +13,4 @@
13
13
  </div>
14
14
 
15
15
  <div id="submenu" class="ui-corner-all ui-widget-content">
16
- <ul>
17
- <li>
18
- <% if @resource_import_file %>
19
- <%= link_to((image_tag 'icons/page_white_excel.png', size: '16x16', alt: 'TSV', class: 'enju_icon'), resource_import_results_path(resource_import_file_id: @resource_import_file.id, format: :txt)) -%>
20
- (<%= link_to 'TSV', resource_import_results_path(resource_import_file_id: @resource_import_file.id, format: :txt) -%>)
21
- <% else %>
22
- <%= link_to((image_tag 'icons/page_white_excel.png', size: '16x16', alt: 'TSV', class: 'enju_icon'), resource_import_results_path(format: :txt)) -%>
23
- (<%= link_to 'TSV', resource_import_results_path(format: :txt) -%>)
24
- <% end %>
25
- </li>
26
- </ul>
27
16
  </div>
@@ -24,20 +24,18 @@
24
24
  <%= f.label :title_subseries_transcription %><br />
25
25
  <%= f.text_field :title_subseries_transcription %>
26
26
  </div>
27
- <!--
28
27
  <div class="field">
29
- <%= f.label :numbering %><br />
30
- <%= f.text_field :numbering %>
28
+ <%= f.label :creator_string %><br />
29
+ <%= f.text_field :creator_string %>
31
30
  </div>
32
31
  <div class="field">
33
- <%= f.label :numbering_subseries -%><br />
34
- <%= f.text_field :numbering_subseries %>
32
+ <%= f.label :volume_number_string %><br />
33
+ <%= f.text_field :volume_number_string %>
35
34
  </div>
36
35
  <div class="field">
37
- <%= f.label :series_statement_identifier -%><br />
38
- <%= f.text_field :series_statement_identifier, class: 'resource_identifier' %>
36
+ <%= f.label :series_master %><br />
37
+ <%= f.check_box :series_master %>
39
38
  </div>
40
- -->
41
39
  <div class="field">
42
40
  <%= f.label :note -%><br />
43
41
  <%= f.text_area :note, class: 'resource_textarea' -%>
@@ -23,6 +23,18 @@
23
23
  <% end %>
24
24
  </td>
25
25
  </tr>
26
+ <tr>
27
+ <td><%= t('activerecord.attributes.series_statement.volume_number_string') -%></td>
28
+ <td><%= @series_statement.volume_number_string %></td>
29
+ </tr>
30
+ <tr>
31
+ <td><%= t('activerecord.attributes.series_statement.creator_string') -%></td>
32
+ <td><%= @series_statement.creator_string %></td>
33
+ </tr>
34
+ <tr>
35
+ <td><%= t('activerecord.attributes.series_statement.series_master') -%></td>
36
+ <td><%= localized_boolean(@series_statement.series_master) %></td>
37
+ </tr>
26
38
  <tr>
27
39
  <td><%= t('activerecord.attributes.series_statement.note') -%></td>
28
40
  <td><%= @series_statement.note %></td>
@@ -78,7 +78,7 @@ en:
78
78
  memo: Memo
79
79
  repository_content: Repository content
80
80
  lock_version: Lock version
81
- carrier_type: Manifestation form
81
+ carrier_type: Carrier type
82
82
  language: Language
83
83
  lccn: LCCN
84
84
  issn: ISSN
@@ -99,12 +99,16 @@ en:
99
99
  extent: Extent
100
100
  dimensions: Dimensions
101
101
  fulltext_content: Fulltext content
102
+ custom_property: Custom property
102
103
  manifestation/subjects:
103
104
  term: Subject
104
105
  manifestation/classifications:
105
106
  category: Classification
106
107
  manifestation/identifiers:
107
108
  body: Identifier
109
+ manifestation/custom_properties:
110
+ label: Label
111
+ value: Value
108
112
  item:
109
113
  call_number: Call number
110
114
  item_identifier: Item identifier
@@ -123,6 +127,10 @@ en:
123
127
  budget_type_id: Budget type
124
128
  bookstore_id: Bookstore
125
129
  required_role_id: Required role
130
+ custom_property: Custom property
131
+ item/custom_properties:
132
+ label: Label
133
+ value: Value
126
134
  agent:
127
135
  last_name: Last name
128
136
  middle_name: Middle name
@@ -333,6 +341,9 @@ en:
333
341
  series_statement_merge_list:
334
342
  title: Title
335
343
  series_statement_merge:
344
+ custom_property:
345
+ label: Label
346
+ value: Value
336
347
 
337
348
  resource_import_file:
338
349
  update_relationship: Update relationship
@@ -99,12 +99,16 @@ ja:
99
99
  extent: ページ数
100
100
  dimensions: 大きさ
101
101
  fulltext_content: 全文あり
102
+ custom_property: カスタム項目
102
103
  manifestation/subjects:
103
- term: 件名
104
+ term: 件名
104
105
  manifestation/classifications:
105
- category: 分類
106
+ category: 分類
106
107
  manifestation/identifiers:
107
- body: 識別子
108
+ body: 識別子
109
+ manifestation/custom_properties:
110
+ label: 項目名
111
+ value: 値
108
112
  item:
109
113
  call_number: 請求記号
110
114
  item_identifier: 所蔵情報ID
@@ -123,6 +127,10 @@ ja:
123
127
  budget_type_id: 予算種別
124
128
  bookstore_id: 書店
125
129
  required_role_id: 閲覧に必要な権限
130
+ custom_property: カスタム項目
131
+ item/custom_properties:
132
+ label: 項目名
133
+ value: 値
126
134
  agent:
127
135
  last_name: 姓
128
136
  middle_name: ミドルネーム
@@ -337,6 +345,9 @@ ja:
337
345
  series_statement_merge_list:
338
346
  title: タイトル
339
347
  series_statement_merge:
348
+ custom_property:
349
+ label: 項目名
350
+ value: 値
340
351
 
341
352
  resource_import_file:
342
353
  update_relationship: 関連を更新
@@ -13,7 +13,6 @@ class CreateAgents < ActiveRecord::Migration[4.2]
13
13
  t.text :full_name_transcription
14
14
  t.text :full_name_alternative
15
15
  t.timestamps
16
- t.datetime :deleted_at
17
16
  t.string :zip_code_1
18
17
  t.string :zip_code_2
19
18
  t.text :address_1
@@ -9,7 +9,6 @@ class CreateManifestations < ActiveRecord::Migration[4.2]
9
9
  t.datetime :date_of_publication
10
10
  t.datetime :copyright_date
11
11
  t.timestamps
12
- t.datetime :deleted_at
13
12
  t.string :access_address
14
13
  t.integer :language_id, default: 1, null: false
15
14
  t.integer :carrier_type_id, default: 1, null: false
@@ -4,7 +4,6 @@ class CreateItems < ActiveRecord::Migration[4.2]
4
4
  t.string :call_number
5
5
  t.string :item_identifier
6
6
  t.timestamps
7
- t.datetime :deleted_at
8
7
  t.integer :shelf_id, default: 1, null: false
9
8
  t.boolean :include_supplements, default: false, null: false
10
9
  t.text :note
@@ -0,0 +1,12 @@
1
+ class CreateCustomProperties < ActiveRecord::Migration[5.2]
2
+ def change
3
+ create_table :custom_properties do |t|
4
+ t.integer :resource_id, null: false
5
+ t.string :resource_type, null: false
6
+ t.text :label, null: false
7
+ t.text :value
8
+
9
+ t.timestamps
10
+ end
11
+ end
12
+ end
@@ -1,3 +1,3 @@
1
1
  module EnjuBiblio
2
- VERSION = "0.4.0.beta.2"
2
+ VERSION = "0.4.0.rc.1".freeze
3
3
  end