Move from Schema.org Place to AS Place with Schema.org properties

See https://socialhub.activitypub.rocks/t/how-to-represent-places-in-an-event/413

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
This commit is contained in:
Thomas Citharel 2019-12-18 11:03:04 +01:00
parent 8bfa95bdd0
commit 814c9ab53b
No known key found for this signature in database
GPG Key ID: A061B9DDE0CA0773
2 changed files with 5 additions and 13 deletions

View File

@ -35,11 +35,11 @@ defmodule Mobilizon.Service.ActivityPub.Converter.Address do
})
end
if is_nil(object["geo"]) do
if is_nil(object["latitude"]) or is_nil(object["longitude"]) do
res
else
geo = %Geo.Point{
coordinates: {object["geo"]["latitude"], object["geo"]["longitude"]},
coordinates: {object["latitude"], object["longitude"]},
srid: 4326
}
@ -70,11 +70,9 @@ defmodule Mobilizon.Service.ActivityPub.Converter.Address do
if is_nil(address.geom) do
res
else
Map.put(res, "geo", %{
"type" => "GeoCoordinates",
"latitude" => address.geom.coordinates |> elem(0),
"longitude" => address.geom.coordinates |> elem(1)
})
res
|> Map.put("latitude", address.geom.coordinates |> elem(0))
|> Map.put("longitude", address.geom.coordinates |> elem(1))
end
end
end

View File

@ -41,17 +41,11 @@ defmodule Mobilizon.Service.ActivityPub.Utils do
"@id" => "sc:location",
"@type" => "sc:Place"
},
"Place" => "sc:Place",
"PostalAddress" => "sc:PostalAddress",
"GeoCoordinates" => "sc:GeoCoordinates",
"address" => %{
"@id" => "sc:address",
"@type" => "sc:PostalAddress"
},
"geo" => %{
"@id" => "sc:geo",
"@type" => "sc:GeoCoordinates"
},
"addressCountry" => "sc:addressCountry",
"addressRegion" => "sc:addressRegion",
"postalCode" => "sc:postalCode",