diff --git a/providers/spot/aprsis.py b/providers/spot/aprsis.py index 8be74b7..cad8c03 100644 --- a/providers/spot/aprsis.py +++ b/providers/spot/aprsis.py @@ -83,3 +83,7 @@ class APRSIS(SpotProvider): except Exception: logger.exception("Exception handling APRS-IS packet") + + # Sending spots to APRS-IS from Spothole doesn't really make sense + def can_submit_spot(self, activity): + return False diff --git a/providers/spot/llota.py b/providers/spot/llota.py index eab1d4e..a6140ee 100644 --- a/providers/spot/llota.py +++ b/providers/spot/llota.py @@ -50,3 +50,7 @@ class LLOTA(HTTPSpotProvider): # that for us. new_spots.append(spot) return new_spots + + # As far as I know as of September 2026, there is no spot submission API for LLOTA. + def can_submit_spot(self, activity): + return False diff --git a/providers/spot/rbn.py b/providers/spot/rbn.py index 5862bcc..bdd10af 100644 --- a/providers/spot/rbn.py +++ b/providers/spot/rbn.py @@ -52,3 +52,8 @@ class RBN(TelnetSpotProvider): comment=match.group(4).strip(), time=spot_datetime.timestamp(), ) + + # Sending spots to RBN from Spothole doesn't really make sense + def can_submit_spot(self, activity): + return False + diff --git a/providers/spot/towers.py b/providers/spot/towers.py index 28bedb5..040e97e 100644 --- a/providers/spot/towers.py +++ b/providers/spot/towers.py @@ -47,3 +47,7 @@ class Towers(HTTPSpotProvider): # that for us. new_spots.append(spot) return new_spots + + # As far as I know as of September 2026, there is no spot submission API for Towers on the Air. + def can_submit_spot(self, activity): + return False diff --git a/providers/spot/ukpacketnet.py b/providers/spot/ukpacketnet.py index 3516d21..365a3c7 100644 --- a/providers/spot/ukpacketnet.py +++ b/providers/spot/ukpacketnet.py @@ -104,3 +104,7 @@ class UKPacketNet(HTTPSpotProvider): spot.dx_longitude = nodes[spot.dx_call]["location"]["coords"]["lon"] return new_spots + + # Sending spots to UK Packet Network from Spothole doesn't really make sense + def can_submit_spot(self, activity): + return False diff --git a/providers/spot/xota.py b/providers/spot/xota.py index 74ced34..8408a8f 100644 --- a/providers/spot/xota.py +++ b/providers/spot/xota.py @@ -58,3 +58,9 @@ class XOTA(WebsocketSpotProvider): qrt=source_spot["state"] != "active", ) return spot + + # I haven't investigated whether xOTA has a spot submission API, but as we only use it for + # Toilets on the air currently, and realistically no-one is entering their Toilet spots using + # Spothole, this is very low priority. + def can_submit_spot(self, activity): + return False diff --git a/templates/add-spot.html b/templates/add-spot.html index b91e695..2252683 100644 --- a/templates/add-spot.html +++ b/templates/add-spot.html @@ -130,7 +130,7 @@ const ALLOW_UPSTREAM_SPOTTING = {% raw safe_json_dumps(web_ui_options["allow_upstream_spotting"]) %}; - + diff --git a/templates/alerts.html b/templates/alerts.html index 6112e3a..5deca73 100644 --- a/templates/alerts.html +++ b/templates/alerts.html @@ -87,7 +87,7 @@ - + diff --git a/templates/bands.html b/templates/bands.html index d568fbd..46e05df 100644 --- a/templates/bands.html +++ b/templates/bands.html @@ -82,8 +82,8 @@ const BANDS = {% raw safe_json_dumps(options["bands"]) %}; - - + + diff --git a/templates/base.html b/templates/base.html index d7915f0..41749fd 100644 --- a/templates/base.html +++ b/templates/base.html @@ -1,6 +1,6 @@ {% extends "skeleton.html" %} {% block head_extra %} - + @@ -16,10 +16,10 @@ window.fetchEventSource = fetchEventSource; - - - - + + + + {% end %} {% block body %}