Class: Geoblacklight::LocationLeafletMapComponent
- Inherits:
-
ViewComponent::Base
- Object
- ViewComponent::Base
- Geoblacklight::LocationLeafletMapComponent
- Defined in:
- app/components/geoblacklight/location_leaflet_map_component.rb
Instance Method Summary collapse
-
#initialize(id: "leaflet-viewer", map_geometry: Settings.HOMEPAGE_MAP_GEOM, classes: "", page: nil, geosearch: nil) ⇒ LocationLeafletMapComponent
constructor
A new instance of LocationLeafletMapComponent.
-
#leaflet_options ⇒ Object
Add top-level geosearch control to leaflet options if configured.
- #search_bbox ⇒ Object
- #viewer_tag ⇒ Object
Constructor Details
#initialize(id: "leaflet-viewer", map_geometry: Settings.HOMEPAGE_MAP_GEOM, classes: "", page: nil, geosearch: nil) ⇒ LocationLeafletMapComponent
Returns a new instance of LocationLeafletMapComponent.
5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
# File 'app/components/geoblacklight/location_leaflet_map_component.rb', line 5 def initialize( id: "leaflet-viewer", map_geometry: Settings.HOMEPAGE_MAP_GEOM, classes: "", page: nil, geosearch: nil ) @id = id @classes = classes @map_geometry = map_geometry if map_geometry != "null" @page = page @geosearch = geosearch super() end |
Instance Method Details
#leaflet_options ⇒ Object
Add top-level geosearch control to leaflet options if configured
28 29 30 31 32 |
# File 'app/components/geoblacklight/location_leaflet_map_component.rb', line 28 def = helpers..deep_dup ["CONTROLS"] = {"Geosearch" => @geosearch} if @geosearch .to_json end |
#search_bbox ⇒ Object
20 21 22 23 24 25 |
# File 'app/components/geoblacklight/location_leaflet_map_component.rb', line 20 def search_bbox return unless params[:bbox].present? bbox = Geoblacklight::BoundingBox.new(*params[:bbox].split(" ")) bbox.to_geojson end |
#viewer_tag ⇒ Object
34 35 36 37 38 39 40 41 42 43 44 45 46 47 |
# File 'app/components/geoblacklight/location_leaflet_map_component.rb', line 34 def viewer_tag tag.div(nil, id: @id, class: @classes, data: { "controller" => "leaflet-viewer", "leaflet-viewer-basemap-value" => helpers.geoblacklight_basemap, "leaflet-viewer-map-geom-value" => search_bbox || @map_geometry, "leaflet-viewer-data-map-value" => @data_map, "leaflet-viewer-page-value" => params[:action]&.upcase, "leaflet-viewer-options-value" => , "leaflet-viewer-catalog-base-url-value" => (helpers.search_catalog_url if @geosearch) }.compact) end |