From 87b7f639bb159f540f9cedcb8f93a709accf0ed8 Mon Sep 17 00:00:00 2001 From: A_D Date: Sun, 26 Jul 2020 19:24:04 +0200 Subject: [PATCH] cleanup coriolis.py --- plugins/coriolis.py | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/plugins/coriolis.py b/plugins/coriolis.py index 2a75662e..162dc2bd 100644 --- a/plugins/coriolis.py +++ b/plugins/coriolis.py @@ -7,17 +7,21 @@ import io # Migrate settings from <= 3.01 from config import config + if not config.get('shipyard_provider') and config.getint('shipyard'): config.set('shipyard_provider', 'Coriolis') + config.delete('shipyard') -def plugin_start3(plugin_dir): +def plugin_start3(_): return 'Coriolis' -# Return a URL for the current ship + def shipyard_url(loadout, is_beta): - string = json.dumps(loadout, ensure_ascii=False, sort_keys=True, separators=(',', ':')).encode('utf-8') # most compact representation + """Return a URL for the current ship""" + # most compact representation + string = json.dumps(loadout, ensure_ascii=False, sort_keys=True, separators=(',', ':')).encode('utf-8') if not string: return False @@ -25,4 +29,7 @@ def shipyard_url(loadout, is_beta): with gzip.GzipFile(fileobj=out, mode='w') as f: f.write(string) - return (is_beta and 'https://beta.coriolis.io/import?data=' or 'https://coriolis.io/import?data=') + base64.urlsafe_b64encode(out.getvalue()).decode().replace('=', '%3D') + encoded = base64.urlsafe_b64encode(out.getvalue()).decode().replace('=', '%3D') + url = 'https://beta.coriolis.io/import?data=' if is_beta else 'https://coriolis.io/import?data=' + + return f"{url}{encoded}"