enju_biblio 0.3.16 → 0.3.17
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/app/models2/agent.rb +331 -0
- data/app/models2/agent_import_file.rb +259 -0
- data/app/models2/agent_import_file_state_machine.rb +19 -0
- data/app/models2/agent_import_file_transition.rb +20 -0
- data/app/models2/agent_import_result.rb +20 -0
- data/app/models2/agent_merge.rb +17 -0
- data/app/models2/agent_merge_list.rb +27 -0
- data/app/models2/agent_relationship.rb +24 -0
- data/app/models2/agent_relationship_type.rb +20 -0
- data/app/models2/agent_type.rb +19 -0
- data/app/models2/carrier_type.rb +50 -0
- data/app/models2/content_type.rb +19 -0
- data/app/models2/country.rb +47 -0
- data/app/models2/create.rb +29 -0
- data/app/models2/create_type.rb +19 -0
- data/app/models2/doi_record.rb +36 -0
- data/app/models2/donate.rb +15 -0
- data/app/models2/form_of_work.rb +19 -0
- data/app/models2/frequency.rb +19 -0
- data/app/models2/identifier.rb +83 -0
- data/app/models2/identifier_type.rb +18 -0
- data/app/models2/import_request.rb +77 -0
- data/app/models2/import_request_state_machine.rb +9 -0
- data/app/models2/import_request_transition.rb +21 -0
- data/app/models2/isbn_record.rb +51 -0
- data/app/models2/isbn_record_and_manifestation.rb +18 -0
- data/app/models2/issn_record.rb +49 -0
- data/app/models2/issn_record_and_manifestation.rb +18 -0
- data/app/models2/item.rb +173 -0
- data/app/models2/item_custom_property.rb +18 -0
- data/app/models2/item_custom_value.rb +17 -0
- data/app/models2/language.rb +39 -0
- data/app/models2/license.rb +18 -0
- data/app/models2/manifestation.rb +764 -0
- data/app/models2/manifestation_custom_property.rb +18 -0
- data/app/models2/manifestation_custom_value.rb +17 -0
- data/app/models2/manifestation_relationship.rb +27 -0
- data/app/models2/manifestation_relationship_type.rb +20 -0
- data/app/models2/medium_of_performance.rb +19 -0
- data/app/models2/own.rb +29 -0
- data/app/models2/periodical.rb +33 -0
- data/app/models2/periodical_and_manifestation.rb +16 -0
- data/app/models2/picture_file.rb +60 -0
- data/app/models2/produce.rb +30 -0
- data/app/models2/produce_type.rb +19 -0
- data/app/models2/realize.rb +29 -0
- data/app/models2/realize_type.rb +19 -0
- data/app/models2/resource_export_file.rb +64 -0
- data/app/models2/resource_export_file_state_machine.rb +15 -0
- data/app/models2/resource_export_file_transition.rb +21 -0
- data/app/models2/resource_import_file.rb +909 -0
- data/app/models2/resource_import_file_state_machine.rb +19 -0
- data/app/models2/resource_import_file_transition.rb +21 -0
- data/app/models2/resource_import_result.rb +24 -0
- data/app/models2/series_statement.rb +72 -0
- data/app/models2/series_statement_merge.rb +17 -0
- data/app/models2/series_statement_merge_list.rb +17 -0
- data/app/views/manifestations/_book_jacket.html.erb +9 -5
- data/app/views/manifestations/_colorbox.html.erb +1 -1
- data/app/views/manifestations/_pickup.html.erb +1 -1
- data/lib/enju_biblio/version.rb +1 -1
- data/spec/dummy/yarn.lock +7560 -0
- metadata +61 -2
@@ -0,0 +1,19 @@
|
|
1
|
+
class ResourceImportFileStateMachine
|
2
|
+
include Statesman::Machine
|
3
|
+
|
4
|
+
state :pending, initial: true
|
5
|
+
state :started
|
6
|
+
state :completed
|
7
|
+
state :failed
|
8
|
+
|
9
|
+
transition from: :pending, to: [:started, :failed]
|
10
|
+
transition from: :started, to: [:completed, :failed]
|
11
|
+
|
12
|
+
after_transition(from: :pending, to: :started) do |resource_import_file|
|
13
|
+
resource_import_file.update_column(:executed_at, Time.zone.now)
|
14
|
+
end
|
15
|
+
|
16
|
+
before_transition(from: :started, to: :completed) do |resource_import_file|
|
17
|
+
#resource_import_file.error_message = nil
|
18
|
+
end
|
19
|
+
end
|
@@ -0,0 +1,21 @@
|
|
1
|
+
class ResourceImportFileTransition < ApplicationRecord
|
2
|
+
include Statesman::Adapters::ActiveRecordTransition
|
3
|
+
|
4
|
+
|
5
|
+
belongs_to :resource_import_file, inverse_of: :resource_import_file_transitions
|
6
|
+
#attr_accessible :to_state, :sort_key, :metadata
|
7
|
+
end
|
8
|
+
|
9
|
+
# == Schema Information
|
10
|
+
#
|
11
|
+
# Table name: resource_import_file_transitions
|
12
|
+
#
|
13
|
+
# id :integer not null, primary key
|
14
|
+
# to_state :string
|
15
|
+
# metadata :text default({})
|
16
|
+
# sort_key :integer
|
17
|
+
# resource_import_file_id :integer
|
18
|
+
# created_at :datetime
|
19
|
+
# updated_at :datetime
|
20
|
+
# most_recent :boolean not null
|
21
|
+
#
|
@@ -0,0 +1,24 @@
|
|
1
|
+
class ResourceImportResult < ApplicationRecord
|
2
|
+
default_scope { order('resource_import_results.id') }
|
3
|
+
scope :file_id, proc{|file_id| where(resource_import_file_id: file_id)}
|
4
|
+
scope :failed, -> { where(manifestation_id: nil) }
|
5
|
+
scope :skipped, -> { where('error_message IS NOT NULL') }
|
6
|
+
|
7
|
+
belongs_to :resource_import_file
|
8
|
+
belongs_to :manifestation, optional: true
|
9
|
+
belongs_to :item, optional: true
|
10
|
+
end
|
11
|
+
|
12
|
+
# == Schema Information
|
13
|
+
#
|
14
|
+
# Table name: resource_import_results
|
15
|
+
#
|
16
|
+
# id :integer not null, primary key
|
17
|
+
# resource_import_file_id :integer
|
18
|
+
# manifestation_id :integer
|
19
|
+
# item_id :integer
|
20
|
+
# body :text
|
21
|
+
# created_at :datetime
|
22
|
+
# updated_at :datetime
|
23
|
+
# error_message :text
|
24
|
+
#
|
@@ -0,0 +1,72 @@
|
|
1
|
+
class SeriesStatement < ApplicationRecord
|
2
|
+
has_many :series_statement_merges, dependent: :destroy
|
3
|
+
has_many :series_statement_merge_lists, through: :series_statement_merges
|
4
|
+
belongs_to :manifestation, touch: true, optional: true
|
5
|
+
belongs_to :root_manifestation, foreign_key: :root_manifestation_id, class_name: 'Manifestation', touch: true, optional: true
|
6
|
+
validates :original_title, presence: true
|
7
|
+
validates :root_manifestation_id, uniqueness: true, allow_nil: true
|
8
|
+
before_save :create_root_series_statement
|
9
|
+
after_save :reindex
|
10
|
+
after_destroy :reindex
|
11
|
+
|
12
|
+
acts_as_list
|
13
|
+
searchable do
|
14
|
+
text :title do
|
15
|
+
titles
|
16
|
+
end
|
17
|
+
text :numbering, :title_subseries, :numbering_subseries
|
18
|
+
integer :manifestation_id
|
19
|
+
integer :position
|
20
|
+
integer :series_statement_merge_list_ids, multiple: true
|
21
|
+
end
|
22
|
+
|
23
|
+
attr_accessor :selected
|
24
|
+
strip_attributes only: :original_title
|
25
|
+
|
26
|
+
paginates_per 10
|
27
|
+
|
28
|
+
def reindex
|
29
|
+
manifestation.try(:index)
|
30
|
+
root_manifestation.try(:index)
|
31
|
+
end
|
32
|
+
|
33
|
+
def titles
|
34
|
+
[
|
35
|
+
original_title,
|
36
|
+
title_transcription
|
37
|
+
]
|
38
|
+
end
|
39
|
+
|
40
|
+
def create_root_series_statement
|
41
|
+
if series_master?
|
42
|
+
self.root_manifestation = manifestation
|
43
|
+
else
|
44
|
+
self.root_manifestation = nil
|
45
|
+
end
|
46
|
+
end
|
47
|
+
end
|
48
|
+
|
49
|
+
# == Schema Information
|
50
|
+
#
|
51
|
+
# Table name: series_statements
|
52
|
+
#
|
53
|
+
# id :integer not null, primary key
|
54
|
+
# original_title :text
|
55
|
+
# numbering :text
|
56
|
+
# title_subseries :text
|
57
|
+
# numbering_subseries :text
|
58
|
+
# position :integer
|
59
|
+
# created_at :datetime
|
60
|
+
# updated_at :datetime
|
61
|
+
# title_transcription :text
|
62
|
+
# title_alternative :text
|
63
|
+
# series_statement_identifier :string
|
64
|
+
# manifestation_id :integer
|
65
|
+
# note :text
|
66
|
+
# title_subseries_transcription :text
|
67
|
+
# creator_string :text
|
68
|
+
# volume_number_string :text
|
69
|
+
# volume_number_transcription_string :text
|
70
|
+
# series_master :boolean
|
71
|
+
# root_manifestation_id :integer
|
72
|
+
#
|
@@ -0,0 +1,17 @@
|
|
1
|
+
class SeriesStatementMerge < ApplicationRecord
|
2
|
+
belongs_to :series_statement
|
3
|
+
belongs_to :series_statement_merge_list
|
4
|
+
|
5
|
+
paginates_per 10
|
6
|
+
end
|
7
|
+
|
8
|
+
# == Schema Information
|
9
|
+
#
|
10
|
+
# Table name: series_statement_merges
|
11
|
+
#
|
12
|
+
# id :integer not null, primary key
|
13
|
+
# series_statement_id :integer not null
|
14
|
+
# series_statement_merge_list_id :integer not null
|
15
|
+
# created_at :datetime
|
16
|
+
# updated_at :datetime
|
17
|
+
#
|
@@ -0,0 +1,17 @@
|
|
1
|
+
class SeriesStatementMergeList < ApplicationRecord
|
2
|
+
has_many :series_statement_merges, dependent: :destroy
|
3
|
+
has_many :series_statements, through: :series_statement_merges
|
4
|
+
validates_presence_of :title
|
5
|
+
|
6
|
+
paginates_per 10
|
7
|
+
end
|
8
|
+
|
9
|
+
# == Schema Information
|
10
|
+
#
|
11
|
+
# Table name: series_statement_merge_lists
|
12
|
+
#
|
13
|
+
# id :integer not null, primary key
|
14
|
+
# title :string
|
15
|
+
# created_at :datetime
|
16
|
+
# updated_at :datetime
|
17
|
+
#
|
@@ -1,5 +1,9 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
1
|
+
<% if manifestation %>
|
2
|
+
<%= render 'manifestations/colorbox', manifestation: manifestation %>
|
3
|
+
|
4
|
+
<% if defined?(EnjuManifestationViewer) %>
|
5
|
+
<div id="manifestation_book_jacket">
|
6
|
+
<%= book_jacket(manifestation) -%>
|
7
|
+
</div>
|
8
|
+
<% end %>
|
9
|
+
<% end %>
|
@@ -1,7 +1,7 @@
|
|
1
1
|
<% if manifestation %>
|
2
2
|
<% cache([manifestation, fragment: 'pickup_html', role: current_user_role_name, locale: @locale]) do %>
|
3
3
|
<div id="pickup_book_jacket">
|
4
|
-
<%= book_jacket
|
4
|
+
<%= render 'manifestations/book_jacket', manifestation: manifestation -%>
|
5
5
|
</div>
|
6
6
|
<div style="float: left">
|
7
7
|
<% if defined?(EnjuSubject) %>
|
data/lib/enju_biblio/version.rb
CHANGED