geoblacklight 4.0.0 → 4.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.github/workflows/ruby.yml +23 -8
- data/.gitignore +3 -0
- data/.standard.yml +1 -0
- data/Gemfile +13 -11
- data/README.md +1 -1
- data/Rakefile +42 -50
- data/app/assets/images/blacklight/american-geographical-society-library-uwm-libraries.svg +26 -0
- data/app/assets/images/blacklight/arizona.svg +4 -0
- data/app/assets/images/blacklight/circle-info-solid.svg +1 -0
- data/app/assets/images/blacklight/fire-solid.svg +1 -0
- data/app/assets/images/blacklight/lightbulb-solid.svg +1 -0
- data/app/assets/images/blacklight/nebraska.svg +4 -0
- data/app/assets/images/blacklight/rutgers.svg +5 -0
- data/app/assets/images/blacklight/triangle-exclamation-solid.svg +1 -0
- data/app/assets/javascripts/geoblacklight/basemaps.js +1 -1
- data/app/assets/stylesheets/geoblacklight/modules/sidebar.scss +8 -0
- data/app/components/geoblacklight/display_note_component.html.erb +1 -0
- data/app/components/geoblacklight/display_note_component.rb +47 -0
- data/app/components/geoblacklight/icon_facet_item_component.rb +2 -2
- data/app/controllers/download_controller.rb +36 -37
- data/app/controllers/relation_controller.rb +1 -0
- data/app/controllers/wms_controller.rb +1 -0
- data/app/helpers/arcgis_helper.rb +2 -1
- data/app/helpers/blacklight_helper.rb +2 -1
- data/app/helpers/carto_helper.rb +3 -2
- data/app/helpers/geoblacklight/geoblacklight_helper_behavior.rb +2 -1
- data/app/helpers/geoblacklight_helper.rb +47 -36
- data/app/models/concerns/geoblacklight/bbox_filter_query.rb +1 -1
- data/app/models/concerns/geoblacklight/solr_document/arcgis.rb +1 -0
- data/app/models/concerns/geoblacklight/solr_document/carto.rb +1 -0
- data/app/models/concerns/geoblacklight/solr_document/citation.rb +3 -2
- data/app/models/concerns/geoblacklight/solr_document/finder.rb +1 -0
- data/app/models/concerns/geoblacklight/solr_document/inspection.rb +1 -0
- data/app/models/concerns/geoblacklight/solr_document.rb +17 -9
- data/app/models/concerns/geoblacklight/suppressed_records_search_behavior.rb +2 -1
- data/app/presenters/geoblacklight/document_presenter.rb +3 -2
- data/app/views/catalog/_citation.html.erb +35 -10
- data/app/views/catalog/_show_default_display_note.html.erb +7 -0
- data/app/views/catalog/_show_sidebar.html.erb +1 -0
- data/app/views/catalog/_show_sidebar_static_map.html.erb +10 -0
- data/app/views/relation/index.json.jbuilder +1 -1
- data/config/initializers/new_gbl_settings_defaults_4.1.yml +104 -0
- data/config/initializers/rails_config.rb +5 -1
- data/config/locales/geoblacklight.en.yml +18 -10
- data/geoblacklight.gemspec +36 -40
- data/lib/generators/geoblacklight/assets_generator.rb +15 -15
- data/lib/generators/geoblacklight/install_generator.rb +24 -23
- data/lib/generators/geoblacklight/templates/catalog_controller.rb +66 -71
- data/lib/generators/geoblacklight/templates/settings.gbl_v1.yml +2 -2
- data/lib/generators/geoblacklight/templates/settings.yml +76 -24
- data/lib/geoblacklight/bounding_box.rb +1 -0
- data/lib/geoblacklight/constants.rb +26 -25
- data/lib/geoblacklight/download/geojson_download.rb +10 -9
- data/lib/geoblacklight/download/geotiff_download.rb +6 -5
- data/lib/geoblacklight/download/hgl_download.rb +4 -3
- data/lib/geoblacklight/download/kmz_download.rb +11 -10
- data/lib/geoblacklight/download/shapefile_download.rb +10 -9
- data/lib/geoblacklight/download.rb +12 -11
- data/lib/geoblacklight/engine.rb +10 -9
- data/lib/geoblacklight/exceptions.rb +3 -0
- data/lib/geoblacklight/faraday_middleware/follow_redirects.rb +14 -11
- data/lib/geoblacklight/geometry.rb +6 -5
- data/lib/geoblacklight/item_viewer.rb +4 -3
- data/lib/geoblacklight/metadata/base.rb +4 -3
- data/lib/geoblacklight/metadata/fgdc.rb +1 -0
- data/lib/geoblacklight/metadata/html.rb +5 -4
- data/lib/geoblacklight/metadata/iso19139.rb +1 -0
- data/lib/geoblacklight/metadata.rb +1 -0
- data/lib/geoblacklight/metadata_transformer/base.rb +5 -4
- data/lib/geoblacklight/metadata_transformer/fgdc.rb +1 -0
- data/lib/geoblacklight/metadata_transformer/iso19139.rb +1 -0
- data/lib/geoblacklight/metadata_transformer.rb +6 -2
- data/lib/geoblacklight/reference.rb +3 -2
- data/lib/geoblacklight/references.rb +12 -7
- data/lib/geoblacklight/relation/ancestors.rb +4 -3
- data/lib/geoblacklight/relation/descendants.rb +4 -3
- data/lib/geoblacklight/relation/relation_response.rb +3 -2
- data/lib/geoblacklight/routes/downloadable.rb +3 -2
- data/lib/geoblacklight/routes/exportable.rb +4 -3
- data/lib/geoblacklight/routes/wms.rb +2 -1
- data/lib/geoblacklight/routes.rb +4 -3
- data/lib/geoblacklight/version.rb +2 -1
- data/lib/geoblacklight/view_helper_override.rb +3 -2
- data/lib/geoblacklight/wms_layer/feature_info_response.rb +5 -4
- data/lib/geoblacklight/wms_layer.rb +4 -3
- data/lib/geoblacklight.rb +32 -31
- data/lib/tasks/geoblacklight.rake +45 -44
- data/schema/geoblacklight-schema-aardvark.json +6 -0
- data/spec/components/geoblacklight/display_note_component_spec.rb +27 -0
- data/spec/components/geoblacklight/homepage_feature_facet_component_spec.rb +11 -10
- data/spec/components/geoblacklight/icon_facet_item_component_spec.rb +8 -7
- data/spec/config/initializers/rails_config_spec.rb +10 -9
- data/spec/controllers/catalog_controller_spec.rb +27 -26
- data/spec/controllers/download_controller_spec.rb +50 -49
- data/spec/controllers/relation_controller_spec.rb +5 -4
- data/spec/controllers/wms_controller_spec.rb +10 -9
- data/spec/factories/user.rb +3 -2
- data/spec/features/bookmarks_spec.rb +7 -6
- data/spec/features/citations_spec.rb +12 -0
- data/spec/features/configurable_basemap_spec.rb +12 -11
- data/spec/features/data_dictionary_download_spec.rb +11 -10
- data/spec/features/download_layer_spec.rb +64 -63
- data/spec/features/empty_search_spec.rb +6 -5
- data/spec/features/esri_viewer_spec.rb +33 -32
- data/spec/features/exports_spec.rb +18 -17
- data/spec/features/full_screen_controll_spec.rb +8 -8
- data/spec/features/help_text_spec.rb +6 -5
- data/spec/features/home_page_spec.rb +30 -29
- data/spec/features/iiif_viewer_spec.rb +6 -5
- data/spec/features/index_map_spec.rb +17 -16
- data/spec/features/layer_inspection_spec.rb +8 -7
- data/spec/features/layer_opacity_spec.rb +15 -14
- data/spec/features/layer_preview_spec.rb +11 -10
- data/spec/features/layer_with_no_references_spec.rb +5 -4
- data/spec/features/linkified_attribute_table_spec.rb +8 -7
- data/spec/features/metadata_panel_spec.rb +32 -31
- data/spec/features/missing_metadata_spec.rb +18 -17
- data/spec/features/multiple_downloads_spec.rb +11 -10
- data/spec/features/oembed_spec.rb +6 -5
- data/spec/features/relations_spec.rb +51 -26
- data/spec/features/saved_searches_spec.rb +7 -6
- data/spec/features/search_bar_spec.rb +9 -8
- data/spec/features/search_results_complex_geometry_spec.rb +12 -11
- data/spec/features/search_results_icons_spec.rb +10 -9
- data/spec/features/search_results_map_spec.rb +21 -20
- data/spec/features/search_results_overlap_ratio_spec.rb +17 -16
- data/spec/features/search_spec.rb +19 -18
- data/spec/features/show_page_download_spec.rb +15 -14
- data/spec/features/show_page_metadata_spec.rb +9 -8
- data/spec/features/show_page_sidebar_static_map_spec.rb +21 -0
- data/spec/features/sms_spec.rb +12 -11
- data/spec/features/split_view.html.erb_spec.rb +56 -55
- data/spec/features/suppressed_records_spec.rb +10 -9
- data/spec/features/tilejson_spec.rb +12 -9
- data/spec/features/tms_spec.rb +6 -5
- data/spec/features/web_services_modal_spec.rb +39 -38
- data/spec/features/wmts_spec.rb +20 -17
- data/spec/features/xyz_spec.rb +6 -5
- data/spec/fixtures/manifests/tilejson.json +1 -1
- data/spec/fixtures/manifests/wmts-single.xml +5 -5
- data/spec/fixtures/solr_documents/actual-papermap1.json +1 -1
- data/spec/fixtures/solr_documents/actual-point1.json +1 -1
- data/spec/fixtures/solr_documents/actual-polygon1.json +1 -1
- data/spec/fixtures/solr_documents/actual-raster1.json +1 -1
- data/spec/fixtures/solr_documents/baruch_ancestor1.json +1 -1
- data/spec/fixtures/solr_documents/baruch_ancestor2.json +1 -1
- data/spec/fixtures/solr_documents/baruch_documentation_download.json +2 -2
- data/spec/fixtures/solr_documents/cornell_html_metadata.json +1 -1
- data/spec/fixtures/solr_documents/display-note.json +52 -0
- data/spec/fixtures/solr_documents/esri-dynamic-layer-all-layers.json +1 -1
- data/spec/fixtures/solr_documents/esri-dynamic-layer-single-layer.json +1 -1
- data/spec/fixtures/solr_documents/esri-feature-layer.json +1 -1
- data/spec/fixtures/solr_documents/esri-image-map-layer.json +1 -1
- data/spec/fixtures/solr_documents/esri-tiled_map_layer.json +1 -1
- data/spec/fixtures/solr_documents/esri-wms-layer.json +1 -1
- data/spec/fixtures/solr_documents/harvard_raster.json +1 -1
- data/spec/fixtures/solr_documents/iiif-eastern-hemisphere.json +1 -1
- data/spec/fixtures/solr_documents/index-map-polygon-no-downloadurl.json +1 -1
- data/spec/fixtures/solr_documents/index-map-polygon.json +1 -1
- data/spec/fixtures/solr_documents/index-map-stanford.json +1 -1
- data/spec/fixtures/solr_documents/index_map_point.json +1 -1
- data/spec/fixtures/solr_documents/princeton-parent.json +1 -1
- data/spec/fixtures/solr_documents/public_direct_download.json +1 -1
- data/spec/fixtures/solr_documents/public_iiif_princeton.json +1 -1
- data/spec/fixtures/solr_documents/restricted-line.json +1 -1
- data/spec/fixtures/solr_documents/tilejson.json +3 -3
- data/spec/fixtures/solr_documents/umn_metro_result1.json +2 -2
- data/spec/fixtures/solr_documents/umn_state_result1.json +1 -1
- data/spec/fixtures/solr_documents/umn_state_result2.json +1 -1
- data/spec/fixtures/solr_documents/uva_slug_colon.json +1 -1
- data/spec/fixtures/solr_documents/wmts-multiple.json +1 -1
- data/spec/fixtures/solr_documents/wmts-single-layer.json +7 -7
- data/spec/fixtures/solr_documents/xyz.json +3 -3
- data/spec/helpers/arcgis_helper_spec.rb +8 -7
- data/spec/helpers/carto_helper_spec.rb +6 -5
- data/spec/helpers/geoblacklight/geoblacklight_helper_behavior_spec.rb +10 -15
- data/spec/helpers/geoblacklight_helper_spec.rb +139 -138
- data/spec/lib/geoblacklight/bounding_box_spec.rb +14 -13
- data/spec/lib/geoblacklight/document_presenter_spec.rb +26 -25
- data/spec/lib/geoblacklight/download/geojson_download_spec.rb +8 -7
- data/spec/lib/geoblacklight/download/geotiff_download_spec.rb +8 -7
- data/spec/lib/geoblacklight/download/hgl_download_spec.rb +16 -15
- data/spec/lib/geoblacklight/download/kmz_download_spec.rb +9 -8
- data/spec/lib/geoblacklight/download/shapefile_download_spec.rb +8 -7
- data/spec/lib/geoblacklight/download_spec.rb +61 -60
- data/spec/lib/geoblacklight/geometry_spec.rb +29 -28
- data/spec/lib/geoblacklight/item_viewer_spec.rb +25 -24
- data/spec/lib/geoblacklight/metadata/base_spec.rb +44 -43
- data/spec/lib/geoblacklight/metadata/html_spec.rb +7 -6
- data/spec/lib/geoblacklight/metadata_spec.rb +15 -14
- data/spec/lib/geoblacklight/metadata_transformer/base_spec.rb +13 -12
- data/spec/lib/geoblacklight/metadata_transformer/fgdc_spec.rb +8 -7
- data/spec/lib/geoblacklight/metadata_transformer/iso19139_spec.rb +8 -7
- data/spec/lib/geoblacklight/metadata_transformer_spec.rb +15 -14
- data/spec/lib/geoblacklight/reference_spec.rb +28 -27
- data/spec/lib/geoblacklight/references_spec.rb +89 -76
- data/spec/lib/geoblacklight/relation/ancestors_spec.rb +17 -16
- data/spec/lib/geoblacklight/relation/descendants_spec.rb +17 -16
- data/spec/lib/geoblacklight/relation/relation_response_spec.rb +29 -28
- data/spec/lib/geoblacklight/view_helper_override_spec.rb +14 -13
- data/spec/lib/geoblacklight/wms_layer/feature_info_response_spec.rb +19 -18
- data/spec/lib/geoblacklight/wms_layer_spec.rb +31 -30
- data/spec/models/concerns/geoblacklight/bbox_filter_field_spec.rb +31 -31
- data/spec/models/concerns/geoblacklight/bbox_filter_query_spec.rb +32 -32
- data/spec/models/concerns/geoblacklight/solr_document/carto_spec.rb +16 -15
- data/spec/models/concerns/geoblacklight/solr_document/citation_spec.rb +7 -6
- data/spec/models/concerns/geoblacklight/solr_document/finder_spec.rb +16 -17
- data/spec/models/concerns/geoblacklight/solr_document/inspection_spec.rb +7 -6
- data/spec/models/concerns/geoblacklight/solr_document_spec.rb +121 -107
- data/spec/models/concerns/geoblacklight/suppressed_records_search_behavior_spec.rb +8 -7
- data/spec/presenters/geoblacklight/bbox_item_presenter_spec.rb +10 -10
- data/spec/routing/catalog_routing_spec.rb +4 -3
- data/spec/spec_helper.rb +35 -38
- data/spec/support/backport_test_helpers.rb +6 -5
- data/spec/support/features/session_helpers.rb +8 -7
- data/spec/support/features.rb +2 -1
- data/spec/support/fixtures.rb +2 -1
- data/spec/tasks/geoblacklight_spec.rb +10 -9
- data/spec/test_app_templates/lib/generators/test_app_generator.rb +16 -15
- data/spec/views/catalog/_document_split.html.erb_spec.rb +3 -2
- data/spec/views/catalog/_index_split.html.erb_spec.rb +3 -2
- data/spec/views/catalog/_results_pagination.html.erb_spec.rb +5 -4
- data/spec/views/catalog/_show_downloads.html.erb_spec.rb +11 -10
- data/spec/views/catalog/_show_tools.html.erb_spec.rb +13 -12
- data/template.rb +9 -8
- metadata +40 -216
- data/.gitmodules +0 -0
- data/.rubocop.yml +0 -111
- data/.rubocop_todo.yml +0 -437
- data/config/initializers/new_gbl_settings_defaults_3_4.yml +0 -6
- /data/app/assets/images/blacklight/{berkeley.svg → university-of-california-berkeley.svg} +0 -0
@@ -1,6 +1,7 @@
|
|
1
1
|
en:
|
2
2
|
geoblacklight:
|
3
3
|
bbox_label: 'Bounding Box'
|
4
|
+
location: 'Location'
|
4
5
|
citation:
|
5
6
|
retrieved_from: 'Retrieved from %{document_url}'
|
6
7
|
download:
|
@@ -70,18 +71,21 @@ en:
|
|
70
71
|
xyz: 'XYZ Tiles'
|
71
72
|
wmts: 'Web Map Tile Service'
|
72
73
|
relations:
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
part_of: 'Is part of...'
|
74
|
+
member_of_ancestors: 'Belongs to collection...'
|
75
|
+
member_of_descendants: 'Collection records...'
|
76
|
+
part_of_ancestors: 'Is part of...'
|
77
77
|
part_of_descendants: 'Has part...'
|
78
|
-
|
79
|
-
|
80
|
-
|
81
|
-
|
82
|
-
|
83
|
-
|
78
|
+
relation_ancestors: 'Related records...'
|
79
|
+
relation_descendants: 'Related records...'
|
80
|
+
replaces_ancestors: 'Replaces...'
|
81
|
+
replaces_descendants: 'Is replaced by...'
|
82
|
+
source_ancestors: 'Source records...'
|
83
|
+
source_descendants: 'Derived records...'
|
84
|
+
version_of_ancestors: 'Is version of...'
|
85
|
+
version_of_descendants: 'Has version...'
|
86
|
+
browse_all_no_count: "Browse all records..."
|
84
87
|
browse_all: "Browse all %{count} records..."
|
88
|
+
|
85
89
|
metadata:
|
86
90
|
toggle_summary: 'Toggle summary'
|
87
91
|
view_metadata: 'View Metadata'
|
@@ -126,6 +130,8 @@ en:
|
|
126
130
|
content: A Web Map Service displays a geospatial dataset as map images.
|
127
131
|
blacklight:
|
128
132
|
icon:
|
133
|
+
american-geographical-society-library-uwm-libraries: American Geographical Society Library - UWM Libraries
|
134
|
+
arizona: The University of Arizona
|
129
135
|
arrow-circle-down: Arrow within a circle, pointing down
|
130
136
|
baruch-cuny: Baruch College
|
131
137
|
berkeley: University of California, Berkeley
|
@@ -150,6 +156,7 @@ en:
|
|
150
156
|
multilinestring: Multi-line string
|
151
157
|
multipoint: Multi-point
|
152
158
|
multipolygon: Multi-polygon
|
159
|
+
nebraska: University of Nebraska
|
153
160
|
nyu: New York University
|
154
161
|
ohio-state: The Ohio State University
|
155
162
|
penn-state: Penn State University
|
@@ -157,6 +164,7 @@ en:
|
|
157
164
|
public: Public content
|
158
165
|
purdue: Purdue University
|
159
166
|
restricted: Restricted content
|
167
|
+
rutgers: Rutgers University
|
160
168
|
sms: SMS
|
161
169
|
stanford: Stanford University
|
162
170
|
texas: The University of Texas at Austin
|
data/geoblacklight.gemspec
CHANGED
@@ -1,47 +1,43 @@
|
|
1
|
-
|
2
|
-
lib = File.expand_path('../lib', __FILE__)
|
1
|
+
lib = File.expand_path("../lib", __FILE__)
|
3
2
|
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
4
|
-
require
|
3
|
+
require "geoblacklight/version"
|
5
4
|
|
6
5
|
Gem::Specification.new do |spec|
|
7
|
-
spec.name
|
8
|
-
spec.version
|
9
|
-
spec.authors
|
10
|
-
spec.email
|
11
|
-
spec.summary
|
12
|
-
spec.description
|
13
|
-
spec.homepage
|
14
|
-
spec.license
|
6
|
+
spec.name = "geoblacklight"
|
7
|
+
spec.version = Geoblacklight::VERSION
|
8
|
+
spec.authors = ["Mike Graves", "Darren Hardy", "Eliot Jordan", "Jack Reed"]
|
9
|
+
spec.email = ["mgraves@mit.edu", "drh@stanford.edu", "eliotj@princeton.edu", "pjreed@stanford.edu"]
|
10
|
+
spec.summary = "A discovery platform for geospatial holdings"
|
11
|
+
spec.description = "GeoBlacklight provides a world-class discovery platform for geospatial (GIS) holdings. It is an open collaborative project aiming to build off of the successes of the Blacklight Solr-powered discovery interface and the multi-institutional OpenGeoportal federated metadata sharing communities."
|
12
|
+
spec.homepage = "http://github.com/geoblacklight/geoblacklight"
|
13
|
+
spec.license = "Apache 2.0"
|
15
14
|
|
16
|
-
spec.files
|
17
|
-
spec.executables
|
18
|
-
spec.
|
19
|
-
spec.
|
20
|
-
spec.required_rubygems_version = '>= 2.5.2'
|
15
|
+
spec.files = `git ls-files -z`.split(%(\x0))
|
16
|
+
spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
|
17
|
+
spec.require_paths = ["lib"]
|
18
|
+
spec.required_rubygems_version = ">= 2.5.2"
|
21
19
|
|
22
|
-
spec.add_dependency
|
23
|
-
spec.add_dependency
|
24
|
-
spec.add_dependency
|
25
|
-
spec.add_dependency
|
26
|
-
spec.add_dependency
|
27
|
-
spec.add_dependency
|
28
|
-
spec.add_dependency
|
29
|
-
spec.add_dependency
|
30
|
-
spec.add_dependency
|
31
|
-
spec.add_dependency
|
20
|
+
spec.add_dependency "rails", ">= 6.1", "< 7.1"
|
21
|
+
spec.add_dependency "blacklight", ">= 7.0", "<= 7.33"
|
22
|
+
spec.add_dependency "config"
|
23
|
+
spec.add_dependency "faraday", ">= 1.0"
|
24
|
+
spec.add_dependency "coderay"
|
25
|
+
spec.add_dependency "deprecation"
|
26
|
+
spec.add_dependency "geo_combine", "~> 0.8"
|
27
|
+
spec.add_dependency "mime-types"
|
28
|
+
spec.add_dependency "handlebars_assets"
|
29
|
+
spec.add_dependency "rgeo-geojson"
|
32
30
|
|
33
|
-
spec.add_development_dependency
|
34
|
-
spec.add_development_dependency
|
35
|
-
spec.add_development_dependency
|
36
|
-
spec.add_development_dependency
|
37
|
-
spec.add_development_dependency
|
38
|
-
spec.add_development_dependency
|
39
|
-
spec.add_development_dependency
|
40
|
-
spec.add_development_dependency
|
41
|
-
spec.add_development_dependency
|
42
|
-
spec.add_development_dependency
|
43
|
-
spec.add_development_dependency
|
44
|
-
spec.add_development_dependency
|
45
|
-
spec.add_development_dependency 'rubocop-rspec', '~> 2.8'
|
46
|
-
spec.add_development_dependency 'webmock', '~> 3.14'
|
31
|
+
spec.add_development_dependency "solr_wrapper"
|
32
|
+
spec.add_development_dependency "rails-controller-testing"
|
33
|
+
spec.add_development_dependency "rspec-rails"
|
34
|
+
spec.add_development_dependency "engine_cart", "~> 2.0"
|
35
|
+
spec.add_development_dependency "capybara", ">= 2.5.0"
|
36
|
+
spec.add_development_dependency "webdrivers"
|
37
|
+
spec.add_development_dependency "factory_bot_rails"
|
38
|
+
spec.add_development_dependency "database_cleaner", "~> 1.3"
|
39
|
+
spec.add_development_dependency "simplecov", "~> 0.17.1"
|
40
|
+
spec.add_development_dependency "foreman"
|
41
|
+
spec.add_development_dependency "standardrb", "1.0.1"
|
42
|
+
spec.add_development_dependency "webmock", "~> 3.14"
|
47
43
|
end
|
@@ -1,10 +1,10 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
-
require
|
3
|
+
require "rails/generators"
|
4
4
|
|
5
5
|
module Geoblacklight
|
6
6
|
class AssetsGenerator < Rails::Generators::Base
|
7
|
-
source_root File.expand_path(
|
7
|
+
source_root File.expand_path("templates", __dir__)
|
8
8
|
|
9
9
|
desc <<-DESCRIPTION
|
10
10
|
This generator makes the following changes to your application:
|
@@ -15,32 +15,32 @@ module Geoblacklight
|
|
15
15
|
DESCRIPTION
|
16
16
|
|
17
17
|
def add_javascript
|
18
|
-
copy_file
|
18
|
+
copy_file "assets/geoblacklight.js", "app/assets/javascripts/geoblacklight.js"
|
19
19
|
|
20
20
|
if Rails.version.to_i >= 6
|
21
|
-
append_to_file
|
22
|
-
|
21
|
+
append_to_file "app/assets/javascripts/application.js",
|
22
|
+
"\n// Required by GeoBlacklight\n//= require geoblacklight"
|
23
23
|
end
|
24
24
|
end
|
25
25
|
|
26
26
|
def remove_stylesheets
|
27
|
-
remove_file
|
28
|
-
remove_file
|
27
|
+
remove_file "app/assets/stylesheets/application.css"
|
28
|
+
remove_file "app/assets/stylesheets/blacklight.scss"
|
29
29
|
end
|
30
30
|
|
31
31
|
def add_stylesheets
|
32
|
-
copy_file
|
33
|
-
copy_file
|
34
|
-
copy_file
|
35
|
-
copy_file
|
32
|
+
copy_file "assets/application.scss", "app/assets/stylesheets/application.scss"
|
33
|
+
copy_file "assets/_blacklight.scss", "app/assets/stylesheets/_blacklight.scss"
|
34
|
+
copy_file "assets/_customizations.scss", "app/assets/stylesheets/_customizations.scss"
|
35
|
+
copy_file "assets/_geoblacklight.scss", "app/assets/stylesheets/_geoblacklight.scss"
|
36
36
|
end
|
37
37
|
|
38
38
|
def add_initializers
|
39
|
-
append_to_file
|
40
|
-
|
39
|
+
append_to_file "config/initializers/assets.rb",
|
40
|
+
"\nRails.application.config.assets.precompile += %w( favicon.ico )\n"
|
41
41
|
|
42
|
-
append_to_file
|
43
|
-
|
42
|
+
append_to_file "config/initializers/assets.rb",
|
43
|
+
"\nRails.application.config.assets.paths << Rails.root.join('vendor', 'assets', 'images')\n"
|
44
44
|
end
|
45
45
|
end
|
46
46
|
end
|
@@ -1,14 +1,15 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
|
-
|
2
|
+
|
3
|
+
require "rails/generators"
|
3
4
|
|
4
5
|
module Geoblacklight
|
5
6
|
class Install < Rails::Generators::Base
|
6
|
-
source_root File.expand_path(
|
7
|
+
source_root File.expand_path("../templates", __FILE__)
|
7
8
|
|
8
|
-
desc
|
9
|
+
desc "Install Geoblacklight"
|
9
10
|
|
10
11
|
def allow_geoblacklight_params
|
11
|
-
gbl_params = <<-
|
12
|
+
gbl_params = <<-PARAMS
|
12
13
|
before_action :allow_geoblacklight_params
|
13
14
|
|
14
15
|
def allow_geoblacklight_params
|
@@ -17,19 +18,19 @@ module Geoblacklight
|
|
17
18
|
end
|
18
19
|
PARAMS
|
19
20
|
|
20
|
-
inject_into_file
|
21
|
+
inject_into_file "app/controllers/application_controller.rb", gbl_params, before: /^end/
|
21
22
|
end
|
22
23
|
|
23
24
|
def raise_unpermitted_params
|
24
|
-
inject_into_file
|
25
|
+
inject_into_file "config/environments/test.rb", "config.action_controller.action_on_unpermitted_parameters = :raise\n", before: /^end/
|
25
26
|
end
|
26
27
|
|
27
28
|
def mount_geoblacklight_engine
|
28
|
-
inject_into_file
|
29
|
+
inject_into_file "config/routes.rb", "mount Geoblacklight::Engine => 'geoblacklight'\n", before: /^end/
|
29
30
|
end
|
30
31
|
|
31
32
|
def inject_geoblacklight_routes
|
32
|
-
routes = <<-
|
33
|
+
routes = <<-ROUTES
|
33
34
|
concern :gbl_exportable, Geoblacklight::Routes::Exportable.new
|
34
35
|
resources :solr_documents, only: [:show], path: '/catalog', controller: 'catalog' do
|
35
36
|
concerns :gbl_exportable
|
@@ -45,71 +46,71 @@ module Geoblacklight
|
|
45
46
|
resources :download, only: [:show]
|
46
47
|
ROUTES
|
47
48
|
|
48
|
-
inject_into_file
|
49
|
+
inject_into_file "config/routes.rb", routes, before: /^end/
|
49
50
|
end
|
50
51
|
|
51
52
|
def generate_assets
|
52
|
-
generate
|
53
|
+
generate "geoblacklight:assets"
|
53
54
|
end
|
54
55
|
|
55
56
|
def create_blacklight_catalog
|
56
|
-
remove_file
|
57
|
-
copy_file
|
57
|
+
remove_file "app/controllers/catalog_controller.rb"
|
58
|
+
copy_file "catalog_controller.rb", "app/controllers/catalog_controller.rb"
|
58
59
|
end
|
59
60
|
|
60
61
|
def rails_config
|
61
|
-
copy_file
|
62
|
+
copy_file "settings.yml", "config/settings.yml"
|
62
63
|
end
|
63
64
|
|
64
65
|
def solr_config
|
65
|
-
directory
|
66
|
+
directory "../../../../solr", "solr"
|
66
67
|
end
|
67
68
|
|
68
69
|
def include_geoblacklight_solrdocument
|
69
|
-
inject_into_file
|
70
|
+
inject_into_file "app/models/solr_document.rb", after: "include Blacklight::Solr::Document" do
|
70
71
|
"\n include Geoblacklight::SolrDocument"
|
71
72
|
end
|
72
73
|
end
|
73
74
|
|
74
75
|
def add_unique_key
|
75
|
-
inject_into_file
|
76
|
+
inject_into_file "app/models/solr_document.rb", after: "# self.unique_key = 'id'" do
|
76
77
|
"\n self.unique_key = Settings.FIELDS.UNIQUE_KEY"
|
77
78
|
end
|
78
79
|
end
|
79
80
|
|
80
81
|
def add_spatial_search_behavior
|
81
|
-
inject_into_file
|
82
|
+
inject_into_file "app/models/search_builder.rb", after: "include Blacklight::Solr::SearchBuilderBehavior" do
|
82
83
|
"\n include Geoblacklight::SuppressedRecordsSearchBehavior"
|
83
84
|
end
|
84
85
|
end
|
85
86
|
|
86
87
|
# Turn off JQuery animations during testing
|
87
88
|
def inject_disable_jquery_animations
|
88
|
-
inject_into_file
|
89
|
+
inject_into_file "app/views/layouts/application.html.erb", before: "</head>" do
|
89
90
|
" <%= javascript_tag '$.fx.off = true;' if Rails.env.test? %>\n"
|
90
91
|
end
|
91
92
|
end
|
92
93
|
|
93
94
|
def create_downloads_directory
|
94
|
-
FileUtils.mkdir_p(
|
95
|
+
FileUtils.mkdir_p("tmp/cache/downloads") unless File.directory?("tmp/cache/downloads")
|
95
96
|
end
|
96
97
|
|
97
98
|
def disable_turbolinks
|
98
|
-
gsub_file(
|
99
|
+
gsub_file("app/assets/javascripts/application.js", %r{//= require turbolinks}, "")
|
99
100
|
end
|
100
101
|
|
101
102
|
def update_application_name
|
102
|
-
gsub_file(
|
103
|
+
gsub_file("config/locales/blacklight.en.yml", "Blacklight", "GeoBlacklight")
|
103
104
|
end
|
104
105
|
|
105
106
|
# Ensure that assets/images exists
|
106
107
|
def create_image_assets_directory
|
107
|
-
FileUtils.mkdir_p(
|
108
|
+
FileUtils.mkdir_p("app/assets/images") unless File.directory?("app/assets/images")
|
108
109
|
end
|
109
110
|
|
110
111
|
def bundle_install
|
111
112
|
Bundler.with_clean_env do
|
112
|
-
run
|
113
|
+
run "bundle install"
|
113
114
|
end
|
114
115
|
end
|
115
116
|
end
|
@@ -1,12 +1,9 @@
|
|
1
|
-
|
2
|
-
require 'blacklight/catalog'
|
1
|
+
require "blacklight/catalog"
|
3
2
|
|
4
3
|
class CatalogController < ApplicationController
|
5
|
-
|
6
4
|
include Blacklight::Catalog
|
7
5
|
|
8
6
|
configure_blacklight do |config|
|
9
|
-
|
10
7
|
# Ensures that JSON representations of Solr Documents can be retrieved using
|
11
8
|
# the path /catalog/:id/raw
|
12
9
|
# Please see https://github.com/projectblacklight/blacklight/pull/2006/
|
@@ -16,8 +13,8 @@ class CatalogController < ApplicationController
|
|
16
13
|
## @see https://lucene.apache.org/solr/guide/6_6/common-query-parameters.html
|
17
14
|
## @see https://lucene.apache.org/solr/guide/6_6/the-dismax-query-parser.html#TheDisMaxQueryParser-Theq.altParameter
|
18
15
|
config.default_solr_params = {
|
19
|
-
start
|
20
|
-
|
16
|
+
:start => 0,
|
17
|
+
"q.alt" => "*:*"
|
21
18
|
}
|
22
19
|
|
23
20
|
## Default rows returned from Solr
|
@@ -28,14 +25,14 @@ class CatalogController < ApplicationController
|
|
28
25
|
## parameters included in the Blacklight-jetty document requestHandler.
|
29
26
|
#
|
30
27
|
config.default_document_solr_params = {
|
31
|
-
|
32
|
-
|
28
|
+
qt: "document",
|
29
|
+
q: "{!raw f=#{Settings.FIELDS.ID} v=$id}"
|
33
30
|
}
|
34
31
|
|
35
32
|
# GeoBlacklight Defaults
|
36
33
|
# * Adds the "map" split view for catalog#index
|
37
|
-
config.view.split(partials: [
|
38
|
-
config.view.delete_field(
|
34
|
+
config.view.split(partials: ["index"])
|
35
|
+
config.view.delete_field("list")
|
39
36
|
|
40
37
|
# solr field configuration for search results/index views
|
41
38
|
# config.index.show_link = 'title_display'
|
@@ -47,11 +44,12 @@ class CatalogController < ApplicationController
|
|
47
44
|
# This sets the metadata to display below the map viewer.
|
48
45
|
# To move metadata above the map viewer,
|
49
46
|
# remove the lines deleting and re-adding the :show partial
|
50
|
-
config.show.display_type_field =
|
47
|
+
config.show.display_type_field = "format"
|
51
48
|
config.show.partials.delete(:show)
|
52
|
-
config.show.partials <<
|
53
|
-
config.show.partials <<
|
54
|
-
config.show.partials <<
|
49
|
+
config.show.partials << "show_default_display_note"
|
50
|
+
config.show.partials << "show_default_viewer_container"
|
51
|
+
config.show.partials << "show_default_attribute_table"
|
52
|
+
config.show.partials << "show_default_viewer_information"
|
55
53
|
config.show.partials << :show
|
56
54
|
|
57
55
|
##
|
@@ -92,23 +90,22 @@ class CatalogController < ApplicationController
|
|
92
90
|
# :years_25 => { :label => 'within 25 Years', :fq => "pub_date:[#{Time.now.year - 25 } TO *]" }
|
93
91
|
# }
|
94
92
|
|
95
|
-
|
96
93
|
# FACETS
|
97
94
|
|
98
95
|
# DEFAULT FACETS
|
99
96
|
# to add additional facets, use the keys defined in the settings.yml file
|
100
|
-
config.add_facet_field Settings.FIELDS.INDEX_YEAR, :
|
101
|
-
config.add_facet_field Settings.FIELDS.SPATIAL_COVERAGE, :
|
102
|
-
config.add_facet_field Settings.FIELDS.ACCESS_RIGHTS, label:
|
103
|
-
config.add_facet_field Settings.FIELDS.RESOURCE_CLASS, label:
|
104
|
-
config.add_facet_field Settings.FIELDS.RESOURCE_TYPE, label:
|
105
|
-
config.add_facet_field Settings.FIELDS.FORMAT, :
|
106
|
-
config.add_facet_field Settings.FIELDS.SUBJECT, :
|
107
|
-
config.add_facet_field Settings.FIELDS.THEME, :
|
108
|
-
config.add_facet_field Settings.FIELDS.CREATOR, :
|
109
|
-
config.add_facet_field Settings.FIELDS.PUBLISHER, :
|
110
|
-
config.add_facet_field Settings.FIELDS.PROVIDER, label:
|
111
|
-
config.add_facet_field Settings.FIELDS.GEOREFERENCED, :
|
97
|
+
config.add_facet_field Settings.FIELDS.INDEX_YEAR, label: "Year", limit: 10
|
98
|
+
config.add_facet_field Settings.FIELDS.SPATIAL_COVERAGE, label: "Place", limit: 8
|
99
|
+
config.add_facet_field Settings.FIELDS.ACCESS_RIGHTS, label: "Access", limit: 8, item_component: Geoblacklight::IconFacetItemComponent
|
100
|
+
config.add_facet_field Settings.FIELDS.RESOURCE_CLASS, label: "Resource Class", limit: 8
|
101
|
+
config.add_facet_field Settings.FIELDS.RESOURCE_TYPE, label: "Resource Type", limit: 8
|
102
|
+
config.add_facet_field Settings.FIELDS.FORMAT, label: "Format", limit: 8
|
103
|
+
config.add_facet_field Settings.FIELDS.SUBJECT, label: "Subject", limit: 8
|
104
|
+
config.add_facet_field Settings.FIELDS.THEME, label: "Theme", limit: 8
|
105
|
+
config.add_facet_field Settings.FIELDS.CREATOR, label: "Creator", limit: 8
|
106
|
+
config.add_facet_field Settings.FIELDS.PUBLISHER, label: "Publisher", limit: 8
|
107
|
+
config.add_facet_field Settings.FIELDS.PROVIDER, label: "Provider", limit: 8, item_component: Geoblacklight::IconFacetItemComponent
|
108
|
+
config.add_facet_field Settings.FIELDS.GEOREFERENCED, label: "Georeferenced", limit: 3
|
112
109
|
|
113
110
|
# GEOBLACKLIGHT APPLICATION FACETS
|
114
111
|
|
@@ -117,26 +114,25 @@ class CatalogController < ApplicationController
|
|
117
114
|
# filter_query_builder - Defines the query generated for Solr
|
118
115
|
# filter_class - Defines how to add/remove facet from query
|
119
116
|
# label - Defines the label used in contstraints container
|
120
|
-
config.add_facet_field Settings.FIELDS.GEOMETRY, item_presenter: Geoblacklight::BboxItemPresenter, filter_class: Geoblacklight::BboxFilterField, filter_query_builder: Geoblacklight::BboxFilterQuery, within_boost: Settings.BBOX_WITHIN_BOOST, overlap_boost: Settings.OVERLAP_RATIO_BOOST, overlap_field: Settings.FIELDS.OVERLAP_FIELD, label:
|
117
|
+
config.add_facet_field Settings.FIELDS.GEOMETRY, item_presenter: Geoblacklight::BboxItemPresenter, filter_class: Geoblacklight::BboxFilterField, filter_query_builder: Geoblacklight::BboxFilterQuery, within_boost: Settings.BBOX_WITHIN_BOOST, overlap_boost: Settings.OVERLAP_RATIO_BOOST, overlap_field: Settings.FIELDS.OVERLAP_FIELD, label: "Bounding Box"
|
121
118
|
|
122
119
|
# Item Relationship Facets
|
123
120
|
# * Not displayed to end user (show: false)
|
124
121
|
# * Must be present for relationship "Browse all 4 records" links to work
|
125
122
|
# * Label value becomes the search contraint filter name
|
126
|
-
config.add_facet_field Settings.FIELDS.MEMBER_OF, label:
|
127
|
-
config.add_facet_field Settings.FIELDS.IS_PART_OF, label:
|
128
|
-
config.add_facet_field Settings.FIELDS.RELATION, label:
|
129
|
-
config.add_facet_field Settings.FIELDS.REPLACES, label:
|
130
|
-
config.add_facet_field Settings.FIELDS.IS_REPLACED_BY, label:
|
131
|
-
config.add_facet_field Settings.FIELDS.SOURCE, label:
|
132
|
-
config.add_facet_field Settings.FIELDS.VERSION, label:
|
123
|
+
config.add_facet_field Settings.FIELDS.MEMBER_OF, label: "Member Of", show: false
|
124
|
+
config.add_facet_field Settings.FIELDS.IS_PART_OF, label: "Is Part Of", show: false
|
125
|
+
config.add_facet_field Settings.FIELDS.RELATION, label: "Related", show: false
|
126
|
+
config.add_facet_field Settings.FIELDS.REPLACES, label: "Replaces", show: false
|
127
|
+
config.add_facet_field Settings.FIELDS.IS_REPLACED_BY, label: "Is Replaced By", show: false
|
128
|
+
config.add_facet_field Settings.FIELDS.SOURCE, label: "Source", show: false
|
129
|
+
config.add_facet_field Settings.FIELDS.VERSION, label: "Is Version Of", show: false
|
133
130
|
|
134
131
|
# Have BL send all facet field names to Solr, which has been the default
|
135
132
|
# previously. Simply remove these lines if you'd rather use Solr request
|
136
133
|
# handler defaults, or have no facets.
|
137
134
|
config.add_facet_fields_to_solr_request!
|
138
135
|
|
139
|
-
|
140
136
|
# SEARCH RESULTS FIELDS
|
141
137
|
|
142
138
|
# solr fields to be displayed in the index (search results) view
|
@@ -162,28 +158,28 @@ class CatalogController < ApplicationController
|
|
162
158
|
# The following fields all feature string values. If there is a value present in the metadata, they fields will show up on the item show page.
|
163
159
|
# The labels and order can be customed. Comment out fields to hide them.
|
164
160
|
|
165
|
-
config.add_show_field Settings.FIELDS.ALTERNATIVE_TITLE, label:
|
166
|
-
config.add_show_field Settings.FIELDS.DESCRIPTION, label:
|
167
|
-
config.add_show_field Settings.FIELDS.CREATOR, label:
|
168
|
-
config.add_show_field Settings.FIELDS.PUBLISHER, label:
|
169
|
-
config.add_show_field Settings.FIELDS.PROVIDER, label:
|
170
|
-
|
171
|
-
config.add_show_field Settings.FIELDS.RESOURCE_TYPE, label:
|
172
|
-
config.add_show_field Settings.FIELDS.SUBJECT, label:
|
173
|
-
config.add_show_field Settings.FIELDS.THEME, label:
|
174
|
-
config.add_show_field Settings.FIELDS.TEMPORAL_COVERAGE, label:
|
175
|
-
config.add_show_field Settings.FIELDS.DATE_ISSUED, label:
|
176
|
-
config.add_show_field Settings.FIELDS.SPATIAL_COVERAGE, label:
|
177
|
-
config.add_show_field Settings.FIELDS.RIGHTS, label:
|
178
|
-
config.add_show_field Settings.FIELDS.RIGHTS_HOLDER, label:
|
179
|
-
config.add_show_field Settings.FIELDS.LICENSE, label:
|
180
|
-
config.add_show_field Settings.FIELDS.ACCESS_RIGHTS, label:
|
181
|
-
config.add_show_field Settings.FIELDS.FORMAT, label:
|
182
|
-
config.add_show_field Settings.FIELDS.FILE_SIZE, label:
|
183
|
-
config.add_show_field Settings.FIELDS.GEOREFERENCED, label:
|
161
|
+
config.add_show_field Settings.FIELDS.ALTERNATIVE_TITLE, label: "Alternative Title", itemprop: "alt_title"
|
162
|
+
config.add_show_field Settings.FIELDS.DESCRIPTION, label: "Description", itemprop: "description", helper_method: :render_value_as_truncate_abstract
|
163
|
+
config.add_show_field Settings.FIELDS.CREATOR, label: "Creator", itemprop: "creator"
|
164
|
+
config.add_show_field Settings.FIELDS.PUBLISHER, label: "Publisher", itemprop: "publisher"
|
165
|
+
config.add_show_field Settings.FIELDS.PROVIDER, label: "Provider", link_to_facet: true
|
166
|
+
config.add_show_field Settings.FIELDS.RESOURCE_CLASS, label: "Resource Class", itemprop: "class"
|
167
|
+
config.add_show_field Settings.FIELDS.RESOURCE_TYPE, label: "Resource Type", itemprop: "type"
|
168
|
+
config.add_show_field Settings.FIELDS.SUBJECT, label: "Subject", itemprop: "keywords", link_to_facet: true
|
169
|
+
config.add_show_field Settings.FIELDS.THEME, label: "Theme", itemprop: "theme"
|
170
|
+
config.add_show_field Settings.FIELDS.TEMPORAL_COVERAGE, label: "Temporal Coverage", itemprop: "temporal"
|
171
|
+
config.add_show_field Settings.FIELDS.DATE_ISSUED, label: "Date Issued", itemprop: "issued"
|
172
|
+
config.add_show_field Settings.FIELDS.SPATIAL_COVERAGE, label: "Spatial Coverage", itemprop: "spatial", link_to_facet: true
|
173
|
+
config.add_show_field Settings.FIELDS.RIGHTS, label: "Rights", itemprop: "rights"
|
174
|
+
config.add_show_field Settings.FIELDS.RIGHTS_HOLDER, label: "Rights Holder", itemprop: "rights_holder"
|
175
|
+
config.add_show_field Settings.FIELDS.LICENSE, label: "License", itemprop: "license"
|
176
|
+
config.add_show_field Settings.FIELDS.ACCESS_RIGHTS, label: "Access Rights", itemprop: "access_rights"
|
177
|
+
config.add_show_field Settings.FIELDS.FORMAT, label: "Format", itemprop: "format"
|
178
|
+
config.add_show_field Settings.FIELDS.FILE_SIZE, label: "File Size", itemprop: "file_size"
|
179
|
+
config.add_show_field Settings.FIELDS.GEOREFERENCED, label: "Georeferenced", itemprop: "georeferenced"
|
184
180
|
config.add_show_field(
|
185
181
|
Settings.FIELDS.REFERENCES,
|
186
|
-
label:
|
182
|
+
label: "More details at",
|
187
183
|
accessor: [:external_url],
|
188
184
|
if: proc { |_, _, doc| doc.external_url },
|
189
185
|
helper_method: :render_references_url
|
@@ -217,7 +213,6 @@ class CatalogController < ApplicationController
|
|
217
213
|
# config.add_show_field Settings.FIELDS.METADATA_VERSION, label: 'Metadata Version', itemprop: 'metadata_version'
|
218
214
|
# config.add_show_field Settings.FIELDS.SUPPRESSED, label: 'Suppressed', itemprop: 'suppresed'
|
219
215
|
|
220
|
-
|
221
216
|
# "fielded" search configuration. Used by pulldown among other places.
|
222
217
|
# For supported keys in hash, see rdoc for Blacklight::SearchFields
|
223
218
|
#
|
@@ -236,7 +231,7 @@ class CatalogController < ApplicationController
|
|
236
231
|
# solr request handler? The one set in config[:default_solr_parameters][:qt],
|
237
232
|
# since we aren't specifying it otherwise.
|
238
233
|
|
239
|
-
config.add_search_field
|
234
|
+
config.add_search_field "all_fields", label: "All Fields"
|
240
235
|
# config.add_search_field 'dct_title_ti', :label => 'Title'
|
241
236
|
# config.add_search_field 'dct_description_ti', :label => 'Description'
|
242
237
|
|
@@ -290,33 +285,33 @@ class CatalogController < ApplicationController
|
|
290
285
|
# label in pulldown is followed by the name of the SOLR field to sort by and
|
291
286
|
# whether the sort is ascending or descending (it must be asc or desc
|
292
287
|
# except in the relevancy case).
|
293
|
-
config.add_sort_field
|
294
|
-
config.add_sort_field "#{Settings.FIELDS.INDEX_YEAR} desc, dct_title_sort asc", :
|
295
|
-
config.add_sort_field "#{Settings.FIELDS.INDEX_YEAR} asc, dct_title_sort asc", :
|
296
|
-
config.add_sort_field
|
297
|
-
config.add_sort_field
|
288
|
+
config.add_sort_field "score desc, dct_title_sort asc", label: "Relevance"
|
289
|
+
config.add_sort_field "#{Settings.FIELDS.INDEX_YEAR} desc, dct_title_sort asc", label: "Year (Newest first)"
|
290
|
+
config.add_sort_field "#{Settings.FIELDS.INDEX_YEAR} asc, dct_title_sort asc", label: "Year (Oldest first)"
|
291
|
+
config.add_sort_field "dct_title_sort asc", label: "Title (A-Z)"
|
292
|
+
config.add_sort_field "dct_title_sort desc", label: "Title (Z-A)"
|
298
293
|
|
299
294
|
# If there are more than this many search results, no spelling ("did you
|
300
295
|
# mean") suggestion is offered.
|
301
296
|
config.spell_max = 5
|
302
297
|
|
303
298
|
# Nav actions from Blacklight
|
304
|
-
config.add_nav_action(:bookmark, partial:
|
305
|
-
config.add_nav_action(:search_history, partial:
|
299
|
+
config.add_nav_action(:bookmark, partial: "blacklight/nav/bookmark", if: :render_bookmarks_control?)
|
300
|
+
config.add_nav_action(:search_history, partial: "blacklight/nav/search_history")
|
306
301
|
|
307
302
|
# Tools from Blacklight
|
308
303
|
config.add_results_collection_tool(:sort_widget)
|
309
304
|
config.add_results_collection_tool(:per_page_widget)
|
310
|
-
config.add_show_tools_partial(:bookmark, partial:
|
305
|
+
config.add_show_tools_partial(:bookmark, partial: "bookmark_control", if: :render_bookmarks_control?)
|
311
306
|
config.add_show_tools_partial(:citation)
|
312
307
|
config.add_show_tools_partial(:email, callback: :email_action, validator: :validate_email_params)
|
313
308
|
config.add_show_tools_partial(:sms, if: :render_sms_action?, callback: :sms_action, validator: :validate_sms_params)
|
314
309
|
|
315
310
|
# Custom tools for GeoBlacklight
|
316
311
|
config.add_show_tools_partial :metadata, if: proc { |_context, _config, options| options[:document] && (Settings.METADATA_SHOWN & options[:document].references.refs.map(&:type).map(&:to_s)).any? }
|
317
|
-
config.add_show_tools_partial :carto, partial:
|
318
|
-
config.add_show_tools_partial :arcgis, partial:
|
319
|
-
config.add_show_tools_partial :data_dictionary, partial:
|
312
|
+
config.add_show_tools_partial :carto, partial: "carto", if: proc { |_context, _config, options| options[:document] && options[:document].carto_reference.present? }
|
313
|
+
config.add_show_tools_partial :arcgis, partial: "arcgis", if: proc { |_context, _config, options| options[:document] && options[:document].arcgis_urls.present? }
|
314
|
+
config.add_show_tools_partial :data_dictionary, partial: "data_dictionary", if: proc { |_context, _config, options| options[:document] && options[:document].data_dictionary_download.present? }
|
320
315
|
|
321
316
|
# Configure basemap provider for GeoBlacklight maps (uses https only basemap
|
322
317
|
# providers with open licenses)
|
@@ -331,11 +326,11 @@ class CatalogController < ApplicationController
|
|
331
326
|
# 'openstreetmapHot'
|
332
327
|
# 'openstreetmapStandard'
|
333
328
|
|
334
|
-
config.basemap_provider =
|
329
|
+
config.basemap_provider = "positron"
|
335
330
|
|
336
331
|
# Configuration for autocomplete suggestor
|
337
332
|
config.autocomplete_enabled = true
|
338
|
-
config.autocomplete_path =
|
333
|
+
config.autocomplete_path = "suggest"
|
339
334
|
end
|
340
335
|
|
341
336
|
def web_services
|