Class: IiifPrint::ExternalIiifDisplayImagePresenter

Inherits:
Hyrax::IiifManifestPresenter::DisplayImagePresenter
  • Object
show all
Defined in:
app/presenters/iiif_print/external_iiif_display_image_presenter.rb

Overview

Presenter for FileSets when an external IIIF server is configured. Returned by IiifManifestPresenter.for when IiifPrint.config.external_iiif_url is set. Overrides only the three methods that control URL construction.

Instance Method Summary collapse

Instance Method Details

#display_image_url(_base_url = nil) ⇒ Object



9
10
11
12
13
14
# File 'app/presenters/iiif_print/external_iiif_display_image_presenter.rb', line 9

def display_image_url(_base_url = nil)
  url_builder = Hyrax.config.iiif_image_url_builder
  args = [latest_file_id, IiifPrint.config.external_iiif_url, Hyrax.config.iiif_image_size_default]
  args << image_format(alpha_channels) if url_builder.arity == 4
  url_builder.call(*args).gsub(%r{images/}, '')
end

#iiif_endpoint(_file_id = nil, _base_url: nil) ⇒ Object



16
17
18
19
20
21
# File 'app/presenters/iiif_print/external_iiif_display_image_presenter.rb', line 16

def iiif_endpoint(_file_id = nil, _base_url: nil)
  IIIFManifest::IIIFEndpoint.new(
    File.join(IiifPrint.config.external_iiif_url, latest_file_id),
    profile: Hyrax.config.iiif_image_compliance_level_uri
  )
end