blacklight-marc 7.2.0 → 8.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.github/workflows/ruby.yml +3 -2
- data/README.md +1 -1
- data/app/assets/stylesheets/blacklight_marc.scss +9 -26
- data/{lib → app/controllers/concerns}/blacklight/marc/catalog.rb +10 -3
- data/app/helpers/blacklight_marc_helper.rb +8 -0
- data/app/views/catalog/_marc_view.html.erb +15 -17
- data/app/views/catalog/librarian_view.html.erb +8 -13
- data/blacklight-marc.gemspec +1 -1
- data/lib/blacklight/marc/version.rb +1 -1
- data/solr/conf/solrconfig.xml +1 -0
- data/spec/helpers/blacklight_marc_helper_spec.rb +7 -0
- metadata +13 -7
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 510b8f1ae8d1d7752d0dbeadf0db9e4cc5003d88dd25c7b4a9e76ba1757c2d4e
|
4
|
+
data.tar.gz: 61ffc549983a3e3ca3fe0497cfcac437bac64318fba45d7836ad0307d2f1a83a
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: cc9bacb9622c2e4f68f2ff7058d9ce8495e2667ab7b8fae7c5495e571a11e82ccd9699bb73237aad5935f6d47a229e651671158eb22fe686816b14c520adaf09
|
7
|
+
data.tar.gz: b8127b909fd370507c3a7a59860ae395abe2f7b23828e18dfae1c54042507ee7c7c8f7b03f7986e58d308f855ca38fad0851b1f93b6d5aab7e3ef31c632555e7
|
data/.github/workflows/ruby.yml
CHANGED
data/README.md
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
|
1
|
+
![Build Status](https://github.com/projectblacklight/blacklight-marc/actions/workflows/ruby.yml/badge.svg?branch=main)
|
2
2
|
|
3
3
|
# Blacklight::Marc
|
4
4
|
|
@@ -1,25 +1,14 @@
|
|
1
1
|
/* border between items on marc view */
|
2
2
|
$marc_item_separator: 1px solid $text-muted !default;
|
3
3
|
|
4
|
-
|
5
|
-
|
6
|
-
left:-17%;
|
7
|
-
text-align:left;
|
8
|
-
top:10%;
|
9
|
-
width:700px;
|
10
|
-
}
|
11
|
-
|
12
|
-
#marc_view
|
13
|
-
{
|
14
|
-
text-align:left;
|
15
|
-
/* https://meyerweb.com/eric/thoughts/2010/02/12/fixed-monospace-sizing/ */
|
16
|
-
font-family: "Courier New", monospace, serif;
|
17
|
-
font-size: 1em;
|
4
|
+
.marc_view {
|
5
|
+
font-family: $font-family-monospace;
|
18
6
|
|
19
|
-
.field
|
20
|
-
|
7
|
+
.field {
|
8
|
+
align-items: flex-start;
|
21
9
|
border-bottom: $marc_item_separator;
|
22
|
-
|
10
|
+
display: flex;
|
11
|
+
gap: 2em;
|
23
12
|
}
|
24
13
|
|
25
14
|
.ind1, .ind2
|
@@ -28,13 +17,7 @@ $marc_item_separator: 1px solid $text-muted !default;
|
|
28
17
|
padding: 0 ($spacer / 2);
|
29
18
|
}
|
30
19
|
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
}
|
35
|
-
|
36
|
-
.tag_ind
|
37
|
-
{
|
38
|
-
float:left;
|
39
|
-
}
|
20
|
+
.tag_ind {
|
21
|
+
flex-shrink: 0;
|
22
|
+
}
|
40
23
|
}
|
@@ -9,13 +9,20 @@ module Blacklight::Marc
|
|
9
9
|
end
|
10
10
|
|
11
11
|
def librarian_view
|
12
|
-
|
13
|
-
|
12
|
+
if Blacklight::VERSION >= '8'
|
13
|
+
@document = search_service.fetch(params[:id])
|
14
|
+
@response = ActiveSupport::Deprecation::DeprecatedObjectProxy.new(@document.response, "The @response instance variable is deprecated and will be removed in Blacklight-marc 8.0")
|
15
|
+
|
16
|
+
else
|
17
|
+
deprecated_response, @document = search_service.fetch(params[:id])
|
18
|
+
@response = ActiveSupport::Deprecation::DeprecatedObjectProxy.new(deprecated_response, "The @response instance variable is deprecated and will be removed in Blacklight-marc 8.0")
|
19
|
+
end
|
20
|
+
|
14
21
|
respond_to do |format|
|
15
22
|
format.html do
|
16
23
|
return render layout: false if request.xhr?
|
17
24
|
# Otherwise draw the full page
|
18
|
-
end
|
25
|
+
end
|
19
26
|
end
|
20
27
|
end
|
21
28
|
|
@@ -39,4 +39,12 @@ module BlacklightMarcHelper
|
|
39
39
|
end
|
40
40
|
val
|
41
41
|
end
|
42
|
+
|
43
|
+
# A URL to refworks export, with an embedded callback URL to this app.
|
44
|
+
# the callback URL is to bookmarks#export, which delivers a list of
|
45
|
+
# user's bookmarks in 'refworks marc txt' format -- we tell refworks
|
46
|
+
# to expect that format.
|
47
|
+
def bookmarks_export_url(format, params = {})
|
48
|
+
bookmarks_url(params.merge(format: format, encrypted_user_id: encrypt_user_id(current_or_guest_user.id)))
|
49
|
+
end
|
42
50
|
end
|
@@ -1,32 +1,30 @@
|
|
1
|
-
<div id="marc_view" class="
|
2
|
-
<% fields = document.to_marc.find_all{|f| ('000'..'999') === f.tag } %>
|
1
|
+
<div id="marc_view" class="marc_view">
|
3
2
|
<div class="field"><%= t('blacklight.search.librarian_view.leader', :leader => document.to_marc.leader) %></div>
|
4
|
-
<%-
|
5
|
-
<%- unless field.tag.to_s == "940" -%>
|
3
|
+
<%- document.to_marc.each do |field| -%>
|
6
4
|
<div class="field">
|
7
|
-
<div class="tag_ind">
|
8
|
-
<span class="tag">
|
9
|
-
<%= h(field.tag) %>
|
10
|
-
</span>
|
11
5
|
<%- if field.is_a?(MARC::ControlField) -%>
|
12
|
-
|
13
|
-
|
14
|
-
|
6
|
+
<div class="tag_ind">
|
7
|
+
<span class="tag"><%= field.tag %></span>
|
8
|
+
</div>
|
9
|
+
<span class="control_field_values">
|
10
|
+
<%= h(field.value) %>
|
11
|
+
</span>
|
15
12
|
<%- else -%>
|
13
|
+
<div class="tag_ind">
|
14
|
+
<span class="tag"><%= field.tag %></span>
|
16
15
|
<div class="ind1">
|
17
|
-
<%=
|
16
|
+
<%= field.try(:indicator1).present? ? field.indicator1 : " ".html_safe -%>
|
18
17
|
</div>
|
19
18
|
<div class="ind2">
|
20
|
-
<%=
|
19
|
+
<%= field.try(:indicator2).present? ? field.indicator2 : " ".html_safe -%>
|
21
20
|
</div>
|
22
21
|
</div>
|
23
22
|
<div class="subfields">
|
24
23
|
<%- field.each do |sub| -%>
|
25
|
-
<span class="sub_code"><%=
|
26
|
-
|
27
|
-
<%- end -%>
|
24
|
+
<span class="sub_code"><%= sub.code %>|</span> <%= sub.value %>
|
25
|
+
<%- end -%>
|
28
26
|
</div>
|
27
|
+
<%- end -%>
|
29
28
|
</div>
|
30
|
-
<%- end-%>
|
31
29
|
<%- end -%>
|
32
30
|
</div>
|
@@ -1,13 +1,8 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
<%= render "marc_view", document: @response.documents.first %>
|
10
|
-
<%- else %>
|
11
|
-
<%= t('blacklight.search.librarian_view.empty') %>
|
12
|
-
<%- end -%>
|
13
|
-
|
1
|
+
<%= render Blacklight::System::ModalComponent.new do |component| %>
|
2
|
+
<% component.title { t('blacklight.search.librarian_view.title') } %>
|
3
|
+
<%- if @document.respond_to?(:to_marc) -%>
|
4
|
+
<%= render "marc_view", document: @document %>
|
5
|
+
<%- else %>
|
6
|
+
<%= t('blacklight.search.librarian_view.empty') %>
|
7
|
+
<%- end -%>
|
8
|
+
<% end %>
|
data/blacklight-marc.gemspec
CHANGED
@@ -18,7 +18,7 @@ Gem::Specification.new do |spec|
|
|
18
18
|
spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
|
19
19
|
spec.require_paths = ["lib"]
|
20
20
|
|
21
|
-
spec.add_dependency 'blacklight', '
|
21
|
+
spec.add_dependency 'blacklight', '>= 7.11', '< 9'
|
22
22
|
spec.add_dependency "library_stdnums"
|
23
23
|
spec.add_dependency "rails"
|
24
24
|
spec.add_dependency "marc", ">= 0.4.3", "< 2.0" # Marc record parser.
|
data/solr/conf/solrconfig.xml
CHANGED
@@ -17,6 +17,7 @@
|
|
17
17
|
</updateHandler>
|
18
18
|
|
19
19
|
<!-- solr lib dirs -->
|
20
|
+
<lib dir="${solr.install.dir:../../../..}/modules/analysis-extras/lib" />
|
20
21
|
<lib dir="${solr.install.dir:../../../..}/contrib/analysis-extras/lib" />
|
21
22
|
<lib dir="${solr.install.dir:../../../..}/contrib/analysis-extras/lucene-libs" />
|
22
23
|
|
@@ -43,4 +43,11 @@ describe BlacklightMarcHelper do
|
|
43
43
|
end
|
44
44
|
end
|
45
45
|
|
46
|
+
describe "#bookmarks_export_url" do
|
47
|
+
it "is the bookmark url with an encrypted user token" do
|
48
|
+
allow(helper).to receive_messages(encrypt_user_id: 'xyz', current_or_guest_user: double(id: 123))
|
49
|
+
url = helper.bookmarks_export_url(:html)
|
50
|
+
expect(url).to eq helper.bookmarks_url(format: :html, encrypted_user_id: 'xyz')
|
51
|
+
end
|
52
|
+
end
|
46
53
|
end
|
metadata
CHANGED
@@ -1,29 +1,35 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: blacklight-marc
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version:
|
4
|
+
version: 8.0.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Justin Coyne
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2022-
|
11
|
+
date: 2022-07-07 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: blacklight
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
16
16
|
requirements:
|
17
|
-
- - "
|
17
|
+
- - ">="
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: '7.11'
|
20
|
+
- - "<"
|
18
21
|
- !ruby/object:Gem::Version
|
19
|
-
version: '
|
22
|
+
version: '9'
|
20
23
|
type: :runtime
|
21
24
|
prerelease: false
|
22
25
|
version_requirements: !ruby/object:Gem::Requirement
|
23
26
|
requirements:
|
24
|
-
- - "
|
27
|
+
- - ">="
|
28
|
+
- !ruby/object:Gem::Version
|
29
|
+
version: '7.11'
|
30
|
+
- - "<"
|
25
31
|
- !ruby/object:Gem::Version
|
26
|
-
version: '
|
32
|
+
version: '9'
|
27
33
|
- !ruby/object:Gem::Dependency
|
28
34
|
name: library_stdnums
|
29
35
|
requirement: !ruby/object:Gem::Requirement
|
@@ -227,6 +233,7 @@ files:
|
|
227
233
|
- README.md
|
228
234
|
- Rakefile
|
229
235
|
- app/assets/stylesheets/blacklight_marc.scss
|
236
|
+
- app/controllers/concerns/blacklight/marc/catalog.rb
|
230
237
|
- app/helpers/blacklight_marc_helper.rb
|
231
238
|
- app/models/concerns/blacklight/marc/document_export.rb
|
232
239
|
- app/models/concerns/blacklight/marc/document_extension.rb
|
@@ -247,7 +254,6 @@ files:
|
|
247
254
|
- config/locales/blacklight_marc.pt-BR.yml
|
248
255
|
- config/routes.rb
|
249
256
|
- lib/blacklight/marc.rb
|
250
|
-
- lib/blacklight/marc/catalog.rb
|
251
257
|
- lib/blacklight/marc/engine.rb
|
252
258
|
- lib/blacklight/marc/indexer.rb
|
253
259
|
- lib/blacklight/marc/indexer/dewey.rb
|