Fix LocationAttachment (#395)
Set `LocationAttachment.address` instead of `latitude` and `longitude`, when no GPS coords are supplied. Fixes #392
This commit is contained in:
@@ -143,13 +143,17 @@ def graphql_to_extensible_attachment(a):
|
||||
_type = target["__typename"]
|
||||
if _type == "MessageLocation":
|
||||
url = story.get("url")
|
||||
latitude, longitude = get_url_parameter(
|
||||
get_url_parameter(url, "u"), "where1"
|
||||
).split(", ")
|
||||
address = get_url_parameter(get_url_parameter(url, "u"), "where1")
|
||||
try:
|
||||
latitude, longitude = [float(x) for x in address.split(", ")]
|
||||
address = None
|
||||
except ValueError:
|
||||
latitude, longitude = None, None
|
||||
rtn = LocationAttachment(
|
||||
uid=int(story["deduplication_key"]),
|
||||
latitude=float(latitude),
|
||||
longitude=float(longitude),
|
||||
latitude=latitude,
|
||||
longitude=longitude,
|
||||
address=address,
|
||||
)
|
||||
media = story.get("media")
|
||||
if media and media.get("image"):
|
||||
|
@@ -444,7 +444,9 @@ class ShareAttachment(Attachment):
|
||||
|
||||
|
||||
class LocationAttachment(Attachment):
|
||||
#: Latidute of the location
|
||||
"""Latitude and longitude OR address is provided by Facebook"""
|
||||
|
||||
#: Latitude of the location
|
||||
latitude = None
|
||||
#: Longitude of the location
|
||||
longitude = None
|
||||
@@ -456,12 +458,15 @@ class LocationAttachment(Attachment):
|
||||
image_height = None
|
||||
#: URL to Bing maps with the location
|
||||
url = None
|
||||
# Address of the location
|
||||
address = None
|
||||
|
||||
def __init__(self, latitude=None, longitude=None, **kwargs):
|
||||
def __init__(self, latitude=None, longitude=None, address=None, **kwargs):
|
||||
"""Represents a user location"""
|
||||
super(LocationAttachment, self).__init__(**kwargs)
|
||||
self.latitude = latitude
|
||||
self.longitude = longitude
|
||||
self.address = address
|
||||
|
||||
|
||||
class LiveLocationAttachment(LocationAttachment):
|
||||
|
Reference in New Issue
Block a user