Module: Hyrax::SolrDocument::Export
- Included in:
- Hyrax::SolrDocumentBehavior
- Defined in:
- app/models/concerns/hyrax/solr_document/export.rb
Instance Method Summary collapse
- #end_note_format ⇒ Object
-
#endnote_filename ⇒ Object
Name of the downloaded endnote file Override this if you want to use a different name.
-
#export_as_endnote ⇒ Object
MIME: ‘application/x-endnote-refer’.
- #persistent_url ⇒ Object
Instance Method Details
#end_note_format ⇒ Object
33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 |
# File 'app/models/concerns/hyrax/solr_document/export.rb', line 33 def end_note_format { '%T' => [:title], # '%Q' => [:title, ->(x) { x.drop(1) }], # subtitles '%A' => [:creator], '%C' => [:publication_place], '%D' => [:date_created], '%8' => [:date_uploaded], '%E' => [:contributor], '%I' => [:publisher], '%J' => [:series_title], '%@' => [:isbn], '%U' => [:related_url], '%7' => [:edition_statement], '%R' => [:persistent_url], '%X' => [:description], '%G' => [:language], '%[' => [:date_modified], '%9' => [:resource_type], '%~' => I18n.t('hyrax.product_name'), '%W' => Institution.name } end |
#endnote_filename ⇒ Object
Name of the downloaded endnote file Override this if you want to use a different name
25 26 27 |
# File 'app/models/concerns/hyrax/solr_document/export.rb', line 25 def endnote_filename "#{id}.endnote" end |
#export_as_endnote ⇒ Object
MIME: ‘application/x-endnote-refer’
5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
# File 'app/models/concerns/hyrax/solr_document/export.rb', line 5 def export_as_endnote text = [] text << "%0 #{human_readable_type}" end_note_format.each do |endnote_key, mapping| if mapping.is_a? String values = [mapping] else values = send(mapping[0]) if respond_to? mapping[0] values = mapping[1].call(values) if mapping.length == 2 values = Array.wrap(values) end next if values.blank? || values.first.nil? spaced_values = values.join("; ") text << "#{endnote_key} #{spaced_values}" end text.join("\n") end |
#persistent_url ⇒ Object
29 30 31 |
# File 'app/models/concerns/hyrax/solr_document/export.rb', line 29 def persistent_url "#{Hyrax.config.persistent_hostpath}#{id}" end |