enju_ndl 0.1.0.pre15 → 0.1.0.pre16
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/app/controllers/ndl_books_controller.rb +4 -1
- data/lib/enju_ndl/ndl_search.rb +11 -9
- data/lib/enju_ndl/version.rb +1 -1
- data/spec/dummy/db/migrate/20130421093852_add_periodical_to_manifestation.rb +5 -0
- data/spec/dummy/db/migrate/20130421155019_add_creator_string_to_series_statement.rb +7 -0
- data/spec/dummy/db/migrate/20130421164124_add_series_master_to_series_statement.rb +5 -0
- data/spec/dummy/db/migrate/20130504133816_add_manifestation_id_to_subject.rb +6 -0
- data/spec/dummy/db/migrate/20130504143515_add_manifestation_id_to_classification.rb +6 -0
- data/spec/dummy/db/schema.rb +14 -5
- data/spec/dummy/db/test.sqlite3 +0 -0
- data/spec/models/ndl_book_spec.rb +5 -5
- metadata +17 -11
- data/spec/dummy/db/development.sqlite3 +0 -0
- data/spec/dummy/db/migrate/20110918161853_rename_series_statement_manifestation_id_to_root_manifestation_id.rb +0 -13
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: d30bcd302d1a7555044730c4eaf2847a1ffc8aaf
|
4
|
+
data.tar.gz: 5996038247ff243245f2b2fb5d6d649b36aa985f
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: bc3164372c5764496eadefb815a60781a918ff7ae04e6c46de3456d7d8bf266bd556e43f8e42282fa575014fe320b5e310407add9210018ad4837a9a9baabf92
|
7
|
+
data.tar.gz: 9f57ba3ea0505c1b45da23a25940c7013fa7bd6e382907055d645b466734cf8ba4b497ce83618572c62f578e58e02f722ebb83b5e794880f2e46572946cf9be4
|
@@ -21,7 +21,10 @@ class NdlBooksController < ApplicationController
|
|
21
21
|
|
22
22
|
def create
|
23
23
|
if params[:book]
|
24
|
-
|
24
|
+
begin
|
25
|
+
@manifestation = NdlBook.import_from_sru_response(params[:book][:nbn])
|
26
|
+
rescue EnjuNdl::RecordNotFound
|
27
|
+
end
|
25
28
|
respond_to do |format|
|
26
29
|
if @manifestation.try(:save)
|
27
30
|
flash[:notice] = t('controller.successfully_created', :model => t('activerecord.models.manifestation'))
|
data/lib/enju_ndl/ndl_search.rb
CHANGED
@@ -59,6 +59,12 @@ module EnjuNdl
|
|
59
59
|
ndc9_url = classification_urls.map{|url| URI.parse(URI.escape(url))}.select{|u| u.path.split('/').reverse[1] == 'ndc9'}.first
|
60
60
|
if ndc9_url
|
61
61
|
ndc = ndc9_url.path.split('/').last
|
62
|
+
classification_type = ClassificationType.where(:name => 'ndc9').first
|
63
|
+
unless classification_type
|
64
|
+
classification_type = ClassificationType.create!(:name => 'ndc9', :display_name => 'NDC9')
|
65
|
+
end
|
66
|
+
classification = Classification.new(:category => ndc)
|
67
|
+
classification.classification_type = classification_type
|
62
68
|
end
|
63
69
|
end
|
64
70
|
|
@@ -104,8 +110,7 @@ module EnjuNdl
|
|
104
110
|
:nbn => nbn,
|
105
111
|
:start_page => extent[:start_page],
|
106
112
|
:end_page => extent[:end_page],
|
107
|
-
:height => extent[:height]
|
108
|
-
:ndc => ndc
|
113
|
+
:height => extent[:height]
|
109
114
|
)
|
110
115
|
manifestation.carrier_type = carrier_type if carrier_type
|
111
116
|
manifestation.manifestation_content_type = content_type if content_type
|
@@ -113,6 +118,7 @@ module EnjuNdl
|
|
113
118
|
manifestation.publishers << publisher_patrons
|
114
119
|
create_additional_attributes(doc, manifestation)
|
115
120
|
create_series_statement(doc, manifestation)
|
121
|
+
manifestation.classifications << classification if classification
|
116
122
|
end
|
117
123
|
end
|
118
124
|
|
@@ -288,8 +294,7 @@ module EnjuNdl
|
|
288
294
|
unless series_statement
|
289
295
|
series_statement = SeriesStatement.new(
|
290
296
|
:original_title => series_title[:title],
|
291
|
-
:title_transcription => series_title[:title_transcription]
|
292
|
-
:periodical => false
|
297
|
+
:title_transcription => series_title[:title_transcription]
|
293
298
|
)
|
294
299
|
end
|
295
300
|
elsif publication_periodicity
|
@@ -305,11 +310,8 @@ module EnjuNdl
|
|
305
310
|
end
|
306
311
|
end
|
307
312
|
|
308
|
-
if series_statement
|
309
|
-
|
310
|
-
series_statement.manifestations << manifestation
|
311
|
-
end
|
312
|
-
#manifestation.save
|
313
|
+
if series_statement.try(:save)
|
314
|
+
manifestation.series_statements << series_statement
|
313
315
|
end
|
314
316
|
manifestation
|
315
317
|
end
|
data/lib/enju_ndl/version.rb
CHANGED
@@ -0,0 +1,7 @@
|
|
1
|
+
class AddCreatorStringToSeriesStatement < ActiveRecord::Migration
|
2
|
+
def change
|
3
|
+
add_column :series_statements, :creator_string, :text
|
4
|
+
add_column :series_statements, :volume_number_string, :text
|
5
|
+
add_column :series_statements, :volume_number_transcription_string, :text
|
6
|
+
end
|
7
|
+
end
|
data/spec/dummy/db/schema.rb
CHANGED
@@ -11,7 +11,7 @@
|
|
11
11
|
#
|
12
12
|
# It's strongly recommended to check this file into your version control system.
|
13
13
|
|
14
|
-
ActiveRecord::Schema.define(:version =>
|
14
|
+
ActiveRecord::Schema.define(:version => 20130504143515) do
|
15
15
|
|
16
16
|
create_table "carrier_types", :force => true do |t|
|
17
17
|
t.string "name", :null => false
|
@@ -40,10 +40,12 @@ ActiveRecord::Schema.define(:version => 20121116033446) do
|
|
40
40
|
t.datetime "updated_at", :null => false
|
41
41
|
t.integer "lft"
|
42
42
|
t.integer "rgt"
|
43
|
+
t.integer "manifestation_id"
|
43
44
|
end
|
44
45
|
|
45
46
|
add_index "classifications", ["category"], :name => "index_classifications_on_category"
|
46
47
|
add_index "classifications", ["classification_type_id"], :name => "index_classifications_on_classification_type_id"
|
48
|
+
add_index "classifications", ["manifestation_id"], :name => "index_classifications_on_manifestation_id"
|
47
49
|
add_index "classifications", ["parent_id"], :name => "index_classifications_on_parent_id"
|
48
50
|
|
49
51
|
create_table "content_types", :force => true do |t|
|
@@ -287,6 +289,7 @@ ActiveRecord::Schema.define(:version => 20121116033446) do
|
|
287
289
|
t.text "attachment_meta"
|
288
290
|
t.integer "month_of_publication"
|
289
291
|
t.string "doi"
|
292
|
+
t.boolean "periodical"
|
290
293
|
end
|
291
294
|
|
292
295
|
add_index "manifestations", ["access_address"], :name => "index_manifestations_on_access_address"
|
@@ -580,19 +583,23 @@ ActiveRecord::Schema.define(:version => 20121116033446) do
|
|
580
583
|
t.text "title_subseries"
|
581
584
|
t.text "numbering_subseries"
|
582
585
|
t.integer "position"
|
583
|
-
t.datetime "created_at",
|
584
|
-
t.datetime "updated_at",
|
586
|
+
t.datetime "created_at", :null => false
|
587
|
+
t.datetime "updated_at", :null => false
|
585
588
|
t.text "title_transcription"
|
586
589
|
t.text "title_alternative"
|
587
590
|
t.string "series_statement_identifier"
|
588
591
|
t.string "issn"
|
589
592
|
t.boolean "periodical"
|
590
|
-
t.integer "
|
593
|
+
t.integer "manifestation_id"
|
591
594
|
t.text "note"
|
592
595
|
t.text "title_subseries_transcription"
|
596
|
+
t.text "creator_string"
|
597
|
+
t.text "volume_number_string"
|
598
|
+
t.text "volume_number_transcription_string"
|
599
|
+
t.boolean "series_master"
|
593
600
|
end
|
594
601
|
|
595
|
-
add_index "series_statements", ["
|
602
|
+
add_index "series_statements", ["manifestation_id"], :name => "index_series_statements_on_manifestation_id"
|
596
603
|
add_index "series_statements", ["series_statement_identifier"], :name => "index_series_statements_on_series_statement_identifier"
|
597
604
|
|
598
605
|
create_table "subject_has_classifications", :force => true do |t|
|
@@ -648,8 +655,10 @@ ActiveRecord::Schema.define(:version => 20121116033446) do
|
|
648
655
|
t.datetime "updated_at"
|
649
656
|
t.datetime "deleted_at"
|
650
657
|
t.string "url"
|
658
|
+
t.integer "manifestation_id"
|
651
659
|
end
|
652
660
|
|
661
|
+
add_index "subjects", ["manifestation_id"], :name => "index_subjects_on_manifestation_id"
|
653
662
|
add_index "subjects", ["parent_id"], :name => "index_subjects_on_parent_id"
|
654
663
|
add_index "subjects", ["required_role_id"], :name => "index_subjects_on_required_role_id"
|
655
664
|
add_index "subjects", ["subject_type_id"], :name => "index_subjects_on_subject_type_id"
|
data/spec/dummy/db/test.sqlite3
CHANGED
Binary file
|
@@ -23,7 +23,7 @@ describe NdlBook do
|
|
23
23
|
manifestation = NdlBook.import_from_sru_response('21816393')
|
24
24
|
manifestation.manifestation_identifier.should eq 'http://iss.ndl.go.jp/books/R100000002-I000010980901-00'
|
25
25
|
manifestation.isbn.should eq '9784839931995'
|
26
|
-
manifestation.
|
26
|
+
manifestation.classifications.pluck(:category).should eq ["007.64"]
|
27
27
|
manifestation.nbn.should eq "21816393"
|
28
28
|
manifestation.language.name.should eq "Japanese"
|
29
29
|
manifestation.creators.first.full_name.should eq '秋葉, 拓哉'
|
@@ -59,15 +59,15 @@ describe NdlBook do
|
|
59
59
|
it "should import series_statement", :vcr => true do
|
60
60
|
manifestation = NdlBook.import_from_sru_response('20408556')
|
61
61
|
manifestation.original_title.should eq "ズッコケ三人組のダイエット講座"
|
62
|
-
manifestation.
|
63
|
-
manifestation.
|
62
|
+
manifestation.series_statements.first.original_title.should eq "ポプラ社文庫. ズッコケ文庫"
|
63
|
+
manifestation.periodical.should be_false
|
64
64
|
end
|
65
65
|
|
66
66
|
it "should import series_statement if the resource is periodical", :vcr => true do
|
67
67
|
manifestation = NdlBook.import_from_sru_response('00010852')
|
68
68
|
manifestation.original_title.should eq "週刊新潮"
|
69
|
-
manifestation.
|
70
|
-
manifestation.
|
69
|
+
manifestation.series_statements.first.original_title.should eq "週刊新潮"
|
70
|
+
manifestation.periodical.should be_false
|
71
71
|
end
|
72
72
|
|
73
73
|
it "should import pud_date is nil", :vcr => true do
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: enju_ndl
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.0.
|
4
|
+
version: 0.1.0.pre16
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Kosuke Tanabe
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2013-04
|
11
|
+
date: 2013-05-04 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rails
|
@@ -128,28 +128,28 @@ dependencies:
|
|
128
128
|
requirements:
|
129
129
|
- - ~>
|
130
130
|
- !ruby/object:Gem::Version
|
131
|
-
version: 0.1.0.
|
131
|
+
version: 0.1.0.pre36
|
132
132
|
type: :development
|
133
133
|
prerelease: false
|
134
134
|
version_requirements: !ruby/object:Gem::Requirement
|
135
135
|
requirements:
|
136
136
|
- - ~>
|
137
137
|
- !ruby/object:Gem::Version
|
138
|
-
version: 0.1.0.
|
138
|
+
version: 0.1.0.pre36
|
139
139
|
- !ruby/object:Gem::Dependency
|
140
140
|
name: enju_subject
|
141
141
|
requirement: !ruby/object:Gem::Requirement
|
142
142
|
requirements:
|
143
143
|
- - ~>
|
144
144
|
- !ruby/object:Gem::Version
|
145
|
-
version: 0.1.0.
|
145
|
+
version: 0.1.0.pre13
|
146
146
|
type: :development
|
147
147
|
prerelease: false
|
148
148
|
version_requirements: !ruby/object:Gem::Requirement
|
149
149
|
requirements:
|
150
150
|
- - ~>
|
151
151
|
- !ruby/object:Gem::Version
|
152
|
-
version: 0.1.0.
|
152
|
+
version: 0.1.0.pre13
|
153
153
|
- !ruby/object:Gem::Dependency
|
154
154
|
name: enju_question
|
155
155
|
requirement: !ruby/object:Gem::Requirement
|
@@ -265,7 +265,6 @@ files:
|
|
265
265
|
- spec/dummy/config/locales/en.yml
|
266
266
|
- spec/dummy/config/routes.rb
|
267
267
|
- spec/dummy/config.ru
|
268
|
-
- spec/dummy/db/development.sqlite3
|
269
268
|
- spec/dummy/db/migrate/001_create_patrons.rb
|
270
269
|
- spec/dummy/db/migrate/005_create_manifestations.rb
|
271
270
|
- spec/dummy/db/migrate/006_create_items.rb
|
@@ -326,7 +325,6 @@ files:
|
|
326
325
|
- spec/dummy/db/migrate/20110916053430_rename_manifestation_number_list_to_number_string.rb
|
327
326
|
- spec/dummy/db/migrate/20110916091020_add_volume_number_to_manifestation.rb
|
328
327
|
- spec/dummy/db/migrate/20110916103953_add_manifestaiton_id_to_series_statement.rb
|
329
|
-
- spec/dummy/db/migrate/20110918161853_rename_series_statement_manifestation_id_to_root_manifestation_id.rb
|
330
328
|
- spec/dummy/db/migrate/20110918162329_add_note_to_series_statement.rb
|
331
329
|
- spec/dummy/db/migrate/20111009183423_add_ndc_to_manifestation.rb
|
332
330
|
- spec/dummy/db/migrate/20111124110059_create_create_types.rb
|
@@ -355,6 +353,11 @@ files:
|
|
355
353
|
- spec/dummy/db/migrate/20120511072422_add_patron_identifier_to_patron.rb
|
356
354
|
- spec/dummy/db/migrate/20120602141129_add_edit_mode_to_patron_import_file.rb
|
357
355
|
- spec/dummy/db/migrate/20121116033446_add_doi_to_manifestation.rb
|
356
|
+
- spec/dummy/db/migrate/20130421093852_add_periodical_to_manifestation.rb
|
357
|
+
- spec/dummy/db/migrate/20130421155019_add_creator_string_to_series_statement.rb
|
358
|
+
- spec/dummy/db/migrate/20130421164124_add_series_master_to_series_statement.rb
|
359
|
+
- spec/dummy/db/migrate/20130504133816_add_manifestation_id_to_subject.rb
|
360
|
+
- spec/dummy/db/migrate/20130504143515_add_manifestation_id_to_classification.rb
|
358
361
|
- spec/dummy/db/schema.rb
|
359
362
|
- spec/dummy/db/test.sqlite3
|
360
363
|
- spec/dummy/public/404.html
|
@@ -412,7 +415,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
412
415
|
version: 1.3.1
|
413
416
|
requirements: []
|
414
417
|
rubyforge_project:
|
415
|
-
rubygems_version: 2.0.
|
418
|
+
rubygems_version: 2.0.3
|
416
419
|
signing_key:
|
417
420
|
specification_version: 4
|
418
421
|
summary: enju_ndl plugin
|
@@ -466,7 +469,6 @@ test_files:
|
|
466
469
|
- spec/dummy/config/locales/en.yml
|
467
470
|
- spec/dummy/config/routes.rb
|
468
471
|
- spec/dummy/config.ru
|
469
|
-
- spec/dummy/db/development.sqlite3
|
470
472
|
- spec/dummy/db/migrate/001_create_patrons.rb
|
471
473
|
- spec/dummy/db/migrate/005_create_manifestations.rb
|
472
474
|
- spec/dummy/db/migrate/006_create_items.rb
|
@@ -527,7 +529,6 @@ test_files:
|
|
527
529
|
- spec/dummy/db/migrate/20110916053430_rename_manifestation_number_list_to_number_string.rb
|
528
530
|
- spec/dummy/db/migrate/20110916091020_add_volume_number_to_manifestation.rb
|
529
531
|
- spec/dummy/db/migrate/20110916103953_add_manifestaiton_id_to_series_statement.rb
|
530
|
-
- spec/dummy/db/migrate/20110918161853_rename_series_statement_manifestation_id_to_root_manifestation_id.rb
|
531
532
|
- spec/dummy/db/migrate/20110918162329_add_note_to_series_statement.rb
|
532
533
|
- spec/dummy/db/migrate/20111009183423_add_ndc_to_manifestation.rb
|
533
534
|
- spec/dummy/db/migrate/20111124110059_create_create_types.rb
|
@@ -556,6 +557,11 @@ test_files:
|
|
556
557
|
- spec/dummy/db/migrate/20120511072422_add_patron_identifier_to_patron.rb
|
557
558
|
- spec/dummy/db/migrate/20120602141129_add_edit_mode_to_patron_import_file.rb
|
558
559
|
- spec/dummy/db/migrate/20121116033446_add_doi_to_manifestation.rb
|
560
|
+
- spec/dummy/db/migrate/20130421093852_add_periodical_to_manifestation.rb
|
561
|
+
- spec/dummy/db/migrate/20130421155019_add_creator_string_to_series_statement.rb
|
562
|
+
- spec/dummy/db/migrate/20130421164124_add_series_master_to_series_statement.rb
|
563
|
+
- spec/dummy/db/migrate/20130504133816_add_manifestation_id_to_subject.rb
|
564
|
+
- spec/dummy/db/migrate/20130504143515_add_manifestation_id_to_classification.rb
|
559
565
|
- spec/dummy/db/schema.rb
|
560
566
|
- spec/dummy/db/test.sqlite3
|
561
567
|
- spec/dummy/public/404.html
|
Binary file
|
@@ -1,13 +0,0 @@
|
|
1
|
-
class RenameSeriesStatementManifestationIdToRootManifestationId < ActiveRecord::Migration
|
2
|
-
def self.up
|
3
|
-
remove_index :series_statements, :series_statement_identifier
|
4
|
-
rename_column :series_statements, :manifestation_id, :root_manifestation_id
|
5
|
-
add_index :series_statements, :series_statement_identifier
|
6
|
-
end
|
7
|
-
|
8
|
-
def self.down
|
9
|
-
remove_index :series_statements, :series_statement_identifier
|
10
|
-
rename_column :series_statements, :root_manifestation_id, :manifestation_id
|
11
|
-
add_index :series_statements, :series_statement_identifier
|
12
|
-
end
|
13
|
-
end
|