Skip to content

Commit 213e001

Browse files
committed
blacklight-gallery: add slideshow_method to render large images
See projectblacklight/blacklight-gallery#19
1 parent 49f2829 commit 213e001

10 files changed

+40
-16
lines changed

Gemfile

+1-1
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ gem "therubyracer", "~> 0.12.3", platforms: :ruby
1919

2020
gem "active-fedora", "~> 11.0.0"
2121
gem "active-triples", "~> 0.11.0"
22-
gem "blacklight-gallery", "~> 0.5.0"
22+
gem "blacklight-gallery", "~> 0.8.0"
2323
gem "blacklight_range_limit", "~> 6.1.2"
2424
gem "curation_concerns", "~> 1.7.7"
2525
gem "ezid-client", "~> 1.2"

Gemfile.lock

+7-6
Original file line numberDiff line numberDiff line change
@@ -97,7 +97,7 @@ GEM
9797
american_date (1.1.1)
9898
arel (7.1.4)
9999
ast (2.3.0)
100-
autoprefixer-rails (7.1.2.3)
100+
autoprefixer-rails (7.1.2.6)
101101
execjs
102102
awesome_nested_set (3.1.3)
103103
activerecord (>= 4.0.0, < 5.2)
@@ -116,10 +116,11 @@ GEM
116116
execjs (~> 2.0)
117117
bcp47 (0.3.3)
118118
i18n
119-
blacklight (6.10.1)
119+
blacklight (6.11.0)
120120
bootstrap-sass (~> 3.2)
121121
deprecation
122122
globalid
123+
jbuilder
123124
kaminari (>= 0.15)
124125
nokogiri (~> 1.6)
125126
rails (>= 4.2, < 6)
@@ -129,8 +130,8 @@ GEM
129130
blacklight (~> 6.0)
130131
cancancan (~> 1.8)
131132
deprecation (~> 1.0)
132-
blacklight-gallery (0.5.0)
133-
blacklight (> 6.0.0.pre, < 7)
133+
blacklight-gallery (0.8.0)
134+
blacklight (~> 6.3)
134135
bootstrap-sass (~> 3.0)
135136
openseadragon (>= 0.2.0)
136137
rails
@@ -484,7 +485,7 @@ GEM
484485
activesupport
485486
nokogiri (>= 1.4.2)
486487
solrizer (~> 3.3)
487-
openseadragon (0.3.3)
488+
openseadragon (0.4.0)
488489
rails (> 3.2.0)
489490
os (0.9.6)
490491
parallel (1.12.0)
@@ -800,7 +801,7 @@ DEPENDENCIES
800801
active-triples (~> 0.11.0)
801802
american_date (~> 1.1.0)
802803
awesome_print
803-
blacklight-gallery (~> 0.5.0)
804+
blacklight-gallery (~> 0.8.0)
804805
blacklight_range_limit (~> 6.1.2)
805806
byebug
806807
capistrano (~> 3.8.0)

app/controllers/application_controller.rb

+4-4
Original file line numberDiff line numberDiff line change
@@ -66,11 +66,11 @@ def collection?(_config, document)
6666
document.collection?
6767
end
6868

69-
def show_contributors?(_config, document)
70-
!document.etd?
71-
end
72-
7369
def show_author?(_config, document)
7470
document.etd?
7571
end
72+
73+
def show_contributors?(_config, document)
74+
!document.etd?
75+
end
7676
end

app/controllers/catalog_controller.rb

+1
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,7 @@ def enforce_show_permissions(_opts = {})
5252
config.search_builder_class = SearchBuilder
5353
config.view.gallery.partials = [:index_header, :index]
5454
config.view.slideshow.partials = [:index]
55+
config.view.slideshow.slideshow_method = :choose_image
5556

5657
# config.show.tile_source_field = :content_metadata_image_iiif_info_ssm
5758
# config.show.partials.insert(1, :openseadragon)
+22
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
# frozen_string_literal: true
2+
3+
module Blacklight::GalleryHelper
4+
WITH_LARGE_IMAGES = %w[
5+
Image
6+
ComponentMap
7+
IndexMap
8+
ScannedMap
9+
].freeze
10+
11+
def choose_image(document, options)
12+
if WITH_LARGE_IMAGES.include? document["has_model_ssim"].first
13+
image_tag(document["image_url_ssm"].first, options)
14+
else
15+
render_thumbnail_tag(
16+
document,
17+
options,
18+
url_options.reverse_merge(suppress_link: true)
19+
)
20+
end
21+
end
22+
end

spec/indexers/component_map_indexer_spec.rb

+1-1
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@
3333
)
3434

3535
expect(subject[ObjectIndexer.thumbnail_field]).to(
36-
eq ["/image-service/s1%2F78%2F4k%2F72%2Fs1784k724%2Ffiles%2F6185235a-79b2-4c29-8c24-4d6ad9b11470/full/300,/0/default.jpg"]
36+
eq ["/image-service/s1%2F78%2F4k%2F72%2Fs1784k724%2Ffiles%2F6185235a-79b2-4c29-8c24-4d6ad9b11470/square/100,/0/default.jpg"]
3737
)
3838

3939
expect(subject["image_url_ssm"]).to(

spec/indexers/image_indexer_spec.rb

+1-1
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@
3030
VCR.use_cassette("image_indexer") do
3131
# rubocop:disable Metrics/LineLength
3232
expect(subject[ObjectIndexer.thumbnail_field]).to(
33-
eq ["/image-service/s1%2F78%2F4k%2F72%2Fs1784k724%2Ffiles%2F6185235a-79b2-4c29-8c24-4d6ad9b11470/full/300,/0/default.jpg"]
33+
eq ["/image-service/s1%2F78%2F4k%2F72%2Fs1784k724%2Ffiles%2F6185235a-79b2-4c29-8c24-4d6ad9b11470/square/100,/0/default.jpg"]
3434
)
3535

3636
expect(subject["image_url_ssm"]).to(

spec/indexers/index_map_indexer_spec.rb

+1-1
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@
3333
)
3434

3535
expect(subject[ObjectIndexer.thumbnail_field]).to(
36-
eq ["/image-service/s1%2F78%2F4k%2F72%2Fs1784k724%2Ffiles%2F6185235a-79b2-4c29-8c24-4d6ad9b11470/full/300,/0/default.jpg"]
36+
eq ["/image-service/s1%2F78%2F4k%2F72%2Fs1784k724%2Ffiles%2F6185235a-79b2-4c29-8c24-4d6ad9b11470/square/100,/0/default.jpg"]
3737
)
3838

3939
expect(subject["image_url_ssm"]).to(

spec/indexers/scanned_map_indexer_spec.rb

+1-1
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@
3030
VCR.use_cassette("scanned_map_indexer") do
3131
# rubocop:disable Metrics/LineLength
3232
expect(subject[ObjectIndexer.thumbnail_field]).to(
33-
eq ["/image-service/s1%2F78%2F4k%2F72%2Fs1784k724%2Ffiles%2F6185235a-79b2-4c29-8c24-4d6ad9b11470/full/300,/0/default.jpg"]
33+
eq ["/image-service/s1%2F78%2F4k%2F72%2Fs1784k724%2Ffiles%2F6185235a-79b2-4c29-8c24-4d6ad9b11470/square/100,/0/default.jpg"]
3434
)
3535

3636
expect(subject["image_url_ssm"]).to(

spec/views/collections/show.html.erb_spec.rb

+1-1
Original file line numberDiff line numberDiff line change
@@ -70,7 +70,7 @@
7070
allow(view).to receive(:render_index_doc_actions).and_return nil
7171
allow(controller). to receive(:show_contributors?).and_return false
7272
allow(controller). to receive(:show_author?).and_return false
73-
# allow(controller).to receive(:show_type?).and_return(false)
73+
allow(controller).to receive(:collection?).and_return(true)
7474
view.lookup_context.prefixes += ["catalog"]
7575
assign(:response, response)
7676
assign(:presenter, presenter)

0 commit comments

Comments
 (0)