Skip to content
This repository has been archived by the owner on Oct 12, 2022. It is now read-only.

Commit

Permalink
Merge pull request #22 from lifemapper/new_lm
Browse files Browse the repository at this point in the history
Updates for new Lifemapper API responses
  • Loading branch information
cjgrady authored Oct 5, 2021
2 parents 06fd5fc + c1c3bdd commit 0f8ce33
Show file tree
Hide file tree
Showing 11 changed files with 362 additions and 362 deletions.
4 changes: 2 additions & 2 deletions boom/main.js
Original file line number Diff line number Diff line change
Expand Up @@ -98,8 +98,8 @@ function configureMap(element) {
mapLayers[element._leaflet_id] = wmsInfos.map(function(wmsInfo) {
bb && map.fitBounds(bb);

return L.tileLayer.wms(wmsInfo.endPoint, {
mapName: wmsInfo.mapName,
return L.tileLayer.wms(wmsInfo.endpoint, {
map_name: wmsInfo.map_name,
format: 'image/png',
version: '1.1.0',
transparent: true,
Expand Down
20 changes: 10 additions & 10 deletions source/BoomResults.elm
Original file line number Diff line number Diff line change
Expand Up @@ -255,9 +255,9 @@ makeOccurrenceMap : ProjectionInfo -> List MapCard.NamedMap
makeOccurrenceMap { occurrenceRecord } =
occurrenceRecord.map
|> Maybe.map
(\(Decoder.SingleLayerMap { endpoint, mapName, layerName }) ->
(\(Decoder.SingleLayerMap { endpoint, map_name, layer_name }) ->
{ name = "Occurrences"
, wmsInfo = { endPoint = endpoint, mapName = mapName, layers = [ layerName ] }
, wmsInfo = { endpoint = endpoint, map_name = map_name, layers = [ layer_name ] }
}
)
|> Maybe.toList
Expand All @@ -267,9 +267,9 @@ makeBackgroundMap : ProjectionInfo -> List MapCard.NamedMap
makeBackgroundMap { occurrenceRecord } =
occurrenceRecord.map
|> Maybe.map
(\(Decoder.SingleLayerMap { endpoint, mapName, layerName }) ->
(\(Decoder.SingleLayerMap { endpoint, map_name, layer_name }) ->
{ name = "Blue Marble Next Generation (NASA)"
, wmsInfo = { endPoint = endpoint, mapName = mapName, layers = [ "bmng" ] }
, wmsInfo = { endpoint = endpoint, map_name = map_name, layers = [ "bmng" ] }
}
)
|> Maybe.toList
Expand All @@ -284,7 +284,7 @@ projectionTitle record =

boundingBoxForProjection : ProjectionInfo -> Maybe BoundingBox
boundingBoxForProjection { record } =
record.spatialRaster
record.spatial_raster
|> Maybe.map (\(Decoder.SpatialRaster { bbox }) -> bbox)
|> Maybe.join
|> Maybe.map
Expand All @@ -303,16 +303,16 @@ makeProjectionMap : ProjectionInfo -> Maybe MapCard.NamedMap
makeProjectionMap { record } =
record.map
|> Maybe.map
(\(Decoder.SingleLayerMap { endpoint, mapName, layerName }) ->
(\(Decoder.SingleLayerMap { endpoint, map_name, layer_name }) ->
{ name = projectionTitle record
, wmsInfo = { endPoint = endpoint, mapName = mapName, layers = [ layerName ] }
, wmsInfo = { endpoint = endpoint, map_name = map_name, layers = [ layer_name ] }
}
)


loadOccurrenceSet : Decoder.ProjectionRecord -> Cmd Msg
loadOccurrenceSet record =
case record.occurrenceSet |> Maybe.andThen (\(Decoder.ObjectRef o) -> o.metadataUrl) of
case record.occurrence_set |> Maybe.andThen (\(Decoder.ObjectRef o) -> o.metadata_url) of
Just url ->
Http.request
{ method = "GET"
Expand Down Expand Up @@ -531,14 +531,14 @@ view { state, packageStatus, mdl, programFlags } =
if speciesFilter == "all" then
display
else
display |> List.filter (Tuple.first >> .record >> .speciesName >> ((==) (Just speciesFilter)))
display |> List.filter (Tuple.first >> .record >> .species_name >> ((==) (Just speciesFilter)))

projCount =
List.length filtered

species =
display
|> List.filterMap (Tuple.first >> .record >> .speciesName)
|> List.filterMap (Tuple.first >> .record >> .species_name)
|> Set.fromList
in
Options.div []
Expand Down
40 changes: 20 additions & 20 deletions source/BrowseProjectionsPage.elm
Original file line number Diff line number Diff line change
Expand Up @@ -169,14 +169,14 @@ update msg model =
Nop ->
( model, Cmd.none )

GotProjectionAtoms occurrenceSetId atoms ->
GotProjectionAtoms occurrence_set_id atoms ->
case model.state of
LoadingProjections loadingInfo ->
let
loadingInfo_ =
{ loadingInfo
| toLoad = loadingInfo.toLoad ++ atoms
, occSetsToLoad = loadingInfo.occSetsToLoad |> List.filter ((/=) occurrenceSetId)
, occSetsToLoad = loadingInfo.occSetsToLoad |> List.filter ((/=) occurrence_set_id)
}
in
if loadingInfo_.occSetsToLoad == [] && loadingInfo_.toLoad == [] then
Expand Down Expand Up @@ -308,9 +308,9 @@ makeOccurrenceMap : ProjectionInfo -> List MapCard.NamedMap
makeOccurrenceMap { occurrenceRecord } =
occurrenceRecord.map
|> Maybe.map
(\(Decoder.SingleLayerMap { endpoint, mapName, layerName }) ->
(\(Decoder.SingleLayerMap { endpoint, map_name, layer_name }) ->
{ name = "Occurrences"
, wmsInfo = { endPoint = endpoint, mapName = mapName, layers = [ layerName ] }
, wmsInfo = { endpoint = endpoint, map_name = map_name, layers = [ layer_name ] }
}
)
|> Maybe.toList
Expand All @@ -320,30 +320,30 @@ makeBackgroundMap : ProjectionInfo -> List MapCard.NamedMap
makeBackgroundMap { occurrenceRecord } =
occurrenceRecord.map
|> Maybe.map
(\(Decoder.SingleLayerMap { endpoint, mapName, layerName }) ->
(\(Decoder.SingleLayerMap { endpoint, map_name, layer_name }) ->
{ name = "Blue Marble (Next Generation)"
, wmsInfo = { endPoint = endpoint, mapName = mapName, layers = [ "bmng" ] }
, wmsInfo = { endpoint = endpoint, map_name = map_name, layers = [ "bmng" ] }
}
)
|> Maybe.toList


projectionTitle : Decoder.ProjectionRecord -> String
projectionTitle { speciesName, algorithm, modelScenario, projectionScenario } =
(speciesName |> Maybe.withDefault "")
projectionTitle { species_name, algorithm, model_scenario, projection_scenario } =
(species_name |> Maybe.withDefault "")
++ " "
++ (algorithm |> Maybe.map (\(Decoder.Algorithm { code }) -> code) |> Maybe.withDefault "")
++ " "
-- take out model scenario
-- ++ (modelScenario |> Maybe.map (\(Decoder.ScenarioRef { code }) -> code) |> Maybe.join |> Maybe.withDefault "")
-- ++ (model_scenario |> Maybe.map (\(Decoder.ScenarioRef { code }) -> code) |> Maybe.join |> Maybe.withDefault "")
-- ++ " to "
++
(projectionScenario |> Maybe.map (\(Decoder.ScenarioRef { code }) -> code) |> Maybe.join |> Maybe.withDefault "")
(projection_scenario |> Maybe.map (\(Decoder.ScenarioRef { code }) -> code) |> Maybe.join |> Maybe.withDefault "")


boundingBoxForProjection : ProjectionInfo -> Maybe BoundingBox
boundingBoxForProjection { record } =
record.spatialRaster
record.spatial_raster
|> Maybe.map (\(Decoder.SpatialRaster { bbox }) -> bbox)
|> Maybe.join
|> Maybe.map
Expand All @@ -362,16 +362,16 @@ makeProjectionMap : ProjectionInfo -> Maybe MapCard.NamedMap
makeProjectionMap { record } =
record.map
|> Maybe.map
(\(Decoder.SingleLayerMap { endpoint, mapName, layerName }) ->
(\(Decoder.SingleLayerMap { endpoint, map_name, layer_name }) ->
{ name = projectionTitle record
, wmsInfo = { endPoint = endpoint, mapName = mapName, layers = [ layerName ] }
, wmsInfo = { endpoint = endpoint, map_name = map_name, layers = [ layer_name ] }
}
)


loadOccurrenceSet : Decoder.ProjectionRecord -> Cmd Msg
loadOccurrenceSet record =
case record.occurrenceSet |> Maybe.andThen (\(Decoder.ObjectRef o) -> o.metadataUrl) of
case record.occurrence_set |> Maybe.andThen (\(Decoder.ObjectRef o) -> o.metadata_url) of
Just url ->
Http.request
{ method = "GET"
Expand Down Expand Up @@ -451,9 +451,9 @@ loadProjections model =
let
query occurrenceSet =
Q.empty
|> Q.add "occurrenceSetId" (occurrenceSet.id |> toString)
|> (model.modelScenarioFilter |> Maybe.map (Q.add "modelScenarioCode") |> Maybe.withDefault identity)
|> (model.projScenarioFilter |> Maybe.map (Q.add "projectionScenarioCode") |> Maybe.withDefault identity)
|> Q.add "occurrence_set_id" (occurrenceSet.id |> toString)
|> (model.modelScenarioFilter |> Maybe.map (Q.add "model_scenario_code") |> Maybe.withDefault identity)
|> (model.projScenarioFilter |> Maybe.map (Q.add "projection_scenario_code") |> Maybe.withDefault identity)
|> if OccurrenceSetChooser.isPublicData model.occurrenceSetChooser then
Q.add "user" "public"
else
Expand Down Expand Up @@ -486,10 +486,10 @@ loadProjections model =


gotProjectionAtoms : Int -> Result Http.Error Decoder.AtomList -> Msg
gotProjectionAtoms occurrenceSetId result =
gotProjectionAtoms occurrence_set_id result =
case result of
Ok (Decoder.AtomList atoms) ->
atoms |> List.map (\(Decoder.AtomObject o) -> o) |> (GotProjectionAtoms occurrenceSetId)
atoms |> List.map (\(Decoder.AtomObject o) -> o) |> (GotProjectionAtoms occurrence_set_id)

Err err ->
Debug.log "Error fetching projections" (toString err) |> always Nop
Expand Down Expand Up @@ -616,7 +616,7 @@ viewGrouped i ( projections, mapCard ) =

{ record } :: _ ->
Grid.cell [ Grid.size Grid.All cardSize ]
[ MapCard.view [ i ] (record.speciesName |> Maybe.withDefault (toString record.id)) mapCard
[ MapCard.view [ i ] (record.species_name |> Maybe.withDefault (toString record.id)) mapCard
|> Html.map (MapCardMsg i)
]

Expand Down
20 changes: 10 additions & 10 deletions source/Encoder.elm
Original file line number Diff line number Diff line change
Expand Up @@ -55,12 +55,12 @@ encodeOccurrenceMetadata (OccurrenceMetadata { role, field, delimiter }) =


encodeOccurrenceMetadataRole : OccurrenceMetadataRole -> Value
encodeOccurrenceMetadataRole (OccurrenceMetadataRole { uniqueId, taxaName, longitude, latitude, groupBy }) =
[ uniqueId |> Maybe.map (string >> (,) "uniqueId")
, taxaName |> (string >> (,) "taxaName") |> Just
encodeOccurrenceMetadataRole (OccurrenceMetadataRole { unique_id, taxa_name, longitude, latitude, group_by }) =
[ unique_id |> Maybe.map (string >> (,) "unique_id")
, taxa_name |> (string >> (,) "taxa_name") |> Just
, longitude |> (string >> (,) "longitude") |> Just
, latitude |> (string >> (,) "latitude") |> Just
, groupBy |> Maybe.map (string >> (,) "groupBy")
, group_by |> Maybe.map (string >> (,) "group_by")
]
|> List.concatMap Maybe.toList
|> object
Expand All @@ -72,18 +72,18 @@ encodeOccurrenceMetadataField (OccurrenceMetadataField fields) =


encodeOccurrenceMetadataFieldItem : OccurrenceMetadataFieldItem -> Value
encodeOccurrenceMetadataFieldItem (OccurrenceMetadataFieldItem { key, shortName, fieldType }) =
encodeOccurrenceMetadataFieldItem (OccurrenceMetadataFieldItem { key, short_name, field_type }) =
[ key |> Maybe.map (string >> (,) "key")
, shortName |> Maybe.map (string >> (,) "shortName")
, fieldType |> Maybe.map (encodeOccurrenceMetadataFieldItemFieldType >> (,) "fieldType")
, short_name |> Maybe.map (string >> (,) "short_name")
, field_type |> Maybe.map (encodeOccurrenceMetadataFieldItemFieldType >> (,) "field_type")
]
|> List.concatMap Maybe.toList
|> object


encodeOccurrenceMetadataFieldItemFieldType : OccurrenceMetadataFieldItemFieldType -> Value
encodeOccurrenceMetadataFieldItemFieldType fieldType =
case fieldType of
encodeOccurrenceMetadataFieldItemFieldType : OccurrenceMetadataFieldItemField_type -> Value
encodeOccurrenceMetadataFieldItemFieldType field_type =
case field_type of
String ->
string "string"

Expand Down
8 changes: 4 additions & 4 deletions source/Leaflet.elm
Original file line number Diff line number Diff line change
Expand Up @@ -31,9 +31,9 @@ import Json.Encode exposing (..)


type alias WMSInfo =
{ mapName : String
{ map_name : String
, layers : List String
, endPoint : String
, endpoint : String
}


Expand All @@ -50,8 +50,8 @@ serialize =
List.map
(\info ->
object
[ ( "mapName", string info.mapName )
, ( "endPoint", string info.endPoint )
[ ( "map_name", string info.map_name )
, ( "endpoint", string info.endpoint )
, ( "layers", info.layers |> List.map string |> list )
]
)
Expand Down
2 changes: 1 addition & 1 deletion source/Main.elm
Original file line number Diff line number Diff line change
Expand Up @@ -339,7 +339,7 @@ gotGridSets msg result =
Ok (AtomList atoms) ->
atoms
|> List.map (\(AtomObject o) -> o)
|> List.sortBy .modificationTime
|> List.sortBy .modification_time
|> List.reverse
|> msg

Expand Down
4 changes: 2 additions & 2 deletions source/MapCard.elm
Original file line number Diff line number Diff line change
Expand Up @@ -81,10 +81,10 @@ view index title model =
else
Options.span [ Options.css "width" "40px" ] []

menuItem layer layerName =
menuItem layer layer_name =
Menu.item [ Menu.onSelect (SetLayer layer) ]
[ checkmark (layer == model.mapLayer)
, Html.text layerName
, Html.text layer_name
]

leafletDiv =
Expand Down
Loading

0 comments on commit 0f8ce33

Please sign in to comment.