Refactor activity names to use an enum instead of a string to avoid typos #147

This commit is contained in:
Ian Renton
2026-09-18 18:09:41 +01:00
parent ab79e7e01c
commit e5caf7353d
61 changed files with 735 additions and 638 deletions
+2 -3
View File
@@ -7,9 +7,8 @@ from tornado import httputil
from tornado.web import Application
from core.activity_lookup_helper import populate_missing_activity_ref_info
from core.activity_utils import get_ref_regex_for_activity
from core.activity_utils import get_activity_by_name, get_ref_regex_for_activity
from core.call_lookup_helper import get_call_info
from core.constants import ACTIVITIES
from core.geo_utils import (
lat_lon_for_grid_sw_corner_plus_size,
lat_lon_to_cq_zone,
@@ -85,7 +84,7 @@ class APILookupActivityRefHandler(tornado.web.RequestHandler):
if "sig" in query_params and "id" in query_params:
activity = str(query_params.get("sig")).upper()
ref_id = str(query_params.get("id")).upper()
if activity in [a.name.upper() for a in ACTIVITIES]:
if get_activity_by_name(activity):
if not get_ref_regex_for_activity(activity) or re.match(
get_ref_regex_for_activity(activity), ref_id
):