From 8423433f669197d8fa971dc5b4152b8b9516d976 Mon Sep 17 00:00:00 2001 From: Finn Stutzenstein Date: Mon, 21 Jun 2021 07:46:13 +0200 Subject: [PATCH] Fix updating logo and font configs when deleting a mediafile --- server/openslides/mediafiles/config.py | 23 +++++++++++------------ 1 file changed, 11 insertions(+), 12 deletions(-) diff --git a/server/openslides/mediafiles/config.py b/server/openslides/mediafiles/config.py index 73c9f60b9..85f1e53eb 100644 --- a/server/openslides/mediafiles/config.py +++ b/server/openslides/mediafiles/config.py @@ -23,32 +23,31 @@ def watch_and_update_configs(): def build_mapping(base_config_key, mediafiles): - """Returns a map of config keys to medaifile ids""" - logos = {} + """Returns a map of config keys to mediafile ids""" + mapping = {} for key in config[base_config_key]: url = config[key]["path"] for mediafile in mediafiles: if mediafile.url == url: - logos[key] = mediafile.id + mapping[key] = mediafile.id break - return logos + return mapping def update_mapping(mapping, mediafiles): """ Tries to get the mediafile from the id for a specific config field. If the file was found and the path changed, the config is updated. If the - mediafile cound not be found, the config is cleared (mediafile deleted). + mediafile could not be found, the config is cleared (mediafile deleted). """ for key, id in mapping.items(): + config_value = config[key] try: mediafile = mediafiles.filter(pk=id)[0] - print(config[key]["path"], mediafile.url) - if config[key]["path"] != mediafile.url: - config[key] = { - "display_name": config[key]["display_name"], - "path": mediafile.url, - } + if config_value["path"] != mediafile.url: + config_value["path"] = mediafile.url + config[key] = config_value except IndexError: - config[key] = {"display_name": config[key]["display_name"], "path": ""} + config_value["path"] = "" + config[key] = config_value