Module: Geoblacklight::SolrDocument::Citation

Includes:
ActionView::Helpers::OutputSafetyHelper
Included in:
Geoblacklight::SolrDocument
Defined in:
app/models/concerns/geoblacklight/solr_document/citation.rb

Instance Method Summary collapse

Instance Method Details

#geoblacklight_citation(solr_document_url) ⇒ Object



8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
# File 'app/models/concerns/geoblacklight/solr_document/citation.rb', line 8

def geoblacklight_citation(solr_document_url)
  if Array(self[Settings.FIELDS.PUBLISHER]).size > 1
    Geoblacklight.deprecation.warn(
      "Geoblacklight::SolrDocument::Citation#geoblacklight_citation includes every value of " \
      "#{Settings.FIELDS.PUBLISHER}; GeoBlacklight 5 reads the publisher as a single value and keeps " \
      "only the first, so citations for this document will lose its other publishers"
    )
  end
  [
    fetch(Settings.FIELDS.CREATOR, nil),
    ("(#{issued})" if issued),
    fetch(Settings.FIELDS.TITLE, nil),
    ("[#{format}]" if format),
    fetch(Settings.FIELDS.PUBLISHER, nil),
    I18n.t("geoblacklight.citation.retrieved_from", document_url: solr_document_url)
  ].flatten.compact.join(". ")
end