[locations] Fix geoloc proximity comparison

Also, make it configurable
This commit is contained in:
2024-02-10 18:13:39 -05:00
parent 2661aee915
commit ca434cb08a
2 changed files with 7 additions and 1 deletions

View File

@ -15,6 +15,7 @@ BNULL = {"blank": True, "null": True}
User = get_user_model()
GEOLOC_ACCURACY = int(getattr(settings, "GEOLOC_ACCURACY", 4))
GEOLOC_PROXIMITY = Decimal(getattr(settings, "GEOLOC_ACCURACY", "0.0001"))
class GeoLocation(ScrobblableMixin):
@ -96,7 +97,11 @@ class GeoLocation(ScrobblableMixin):
all_moves = []
for point in past_points:
loc_diff = self.loc_diff((point.lat, point.lon))
if loc_diff and loc_diff[0] < 0.001 and loc_diff[1] > 0.001:
if (
loc_diff
and loc_diff[0] < GEOLOC_PROXIMITY
and loc_diff[1] < GEOLOC_PROXIMITY
):
all_moves.append(True)
else:
all_moves.append(False)

View File

@ -67,6 +67,7 @@ IGDB_CLIENT_ID = os.getenv("VROBBLER_IGDB_CLIENT_ID")
IGDB_CLIENT_SECRET = os.getenv("VROBBLER_IGDB_CLIENT_SECRET")
COMICVINE_API_KEY = os.getenv("VROBBLER_COMICVINE_API_KEY")
GEOLOC_ACCURACY = os.getenv("VROBBLER_GEOLOC_ACCURACY", 3)
GEOLOC_PROXIMITY = os.getnv("VROBBLER_GEOLOC_PROXIMITY", "0.0001")
POINTS_FOR_MOVEMENT_HISTORY = os.getenv(
"VROBBLER_POINTS_FOR_MOVEMENT_HISTORY", 3
)