diff --git a/basicswap/basicswap.py b/basicswap/basicswap.py index b9a0f54..c48508a 100644 --- a/basicswap/basicswap.py +++ b/basicswap/basicswap.py @@ -6447,6 +6447,25 @@ class BasicSwap(BaseApp): settings_copy.pop('chart_api_key') settings_changed = True + if 'coingecko_api_key' in data: + new_value = data['coingecko_api_key'] + ensure(isinstance(new_value, str), 'New coingecko_api_key value not a string') + ensure(len(new_value) <= 128, 'New coingecko_api_keyvalue too long') + if all(c in string.hexdigits for c in new_value): + if settings_copy.get('coingecko_api_key', '') != new_value: + settings_copy['coingecko_api_key'] = new_value + if 'coingecko_api_key_enc' in settings_copy: + settings_copy.pop('coingecko_api_key_enc') + settings_changed = True + else: + # Encode value as hex to avoid escaping + new_value = new_value.encode('utf-8').hex() + if settings_copy.get('coingecko_api_key_enc', '') != new_value: + settings_copy['coingecko_api_key_enc'] = new_value + if 'coingecko_api_key' in settings_copy: + settings_copy.pop('coingecko_api_key') + settings_changed = True + if settings_changed: settings_path = os.path.join(self.data_dir, cfg.CONFIG_FILENAME) settings_path_new = settings_path + '.new' diff --git a/basicswap/static/images/coins/Wownero-20.png b/basicswap/static/images/coins/Wownero-20.png new file mode 100644 index 0000000..e0d243c Binary files /dev/null and b/basicswap/static/images/coins/Wownero-20.png differ diff --git a/basicswap/static/images/coins/Wownero.png b/basicswap/static/images/coins/Wownero.png new file mode 100644 index 0000000..504d708 Binary files /dev/null and b/basicswap/static/images/coins/Wownero.png differ diff --git a/basicswap/templates/offers.html b/basicswap/templates/offers.html index 3958683..6eb7a08 100644 --- a/basicswap/templates/offers.html +++ b/basicswap/templates/offers.html @@ -55,7 +55,7 @@
@@ -359,16 +359,77 @@ ++ Wownero (WOW) +
++ + + +
+