Page MenuHomePhabricator

Add external map service limited to location
Open, MediumPublicFeature

Description

Some map services offer their maps only for a limited region, so we need to show those links when the user is viewing only that region.

  • We could add geojson (geometry) field to the config file to specify the relevant region
  • The client could either see them based on the map view center, or overlaping bounding box
  • The geojson data will be stored in a separate file on the server, and merged with the externalData to minimize the payload (only referenced geojson objects will be attached to the result)

Schema:

{
  "regions": {
    // Value as returned from geoshapes service, GeoJSON's "geometries" field
    "Q30": {"type":"GeometryCollection","geometries":[{"type":"Polygon","coordinates":[[[-176.686, ...},
    ...
  }
  "services": [
  {
    "id": "us-and-canada-service",
    "featured": true,
    "region": ["Q30", "Q16"],  // US, Canada
    ...

Event Timeline

Restricted Application added a subscriber: Aklapper. · View Herald Transcript

Proper geocoding database would probably be noticeably heavy to download, do we need a geolocation API?

If we have server-side api, we would have to call it for every map move - so it will be a non-cachable flood of api calls on every map move stop. Instead, we should provide simplified (all data rounded to 1 decimal digit) simplified geoshapes that each client would download from cache, and reuse from thereon.

Change 314636 had a related patch set uploaded (by Yurik):
WIP: Add external map service limited to location

https://gerrit.wikimedia.org/r/314636

Change 314636 abandoned by Sbisson:
WIP: Add external map service limited to location

Reason:
This change doesn't seem to be under active development. Please restore if I'm mistaken.

https://gerrit.wikimedia.org/r/314636

Being able to configure both regional services and default services on wiki (T152971) would be nice.

Aklapper changed the subtype of this task from "Task" to "Feature Request".Nov 15 2023, 5:19 PM