diff --git a/aleksis/core/apps.py b/aleksis/core/apps.py index dd3c9b3a8cafb9a6a0ae77fa7253f9a58ab76395..4f243858d97bb458b59c03ddb99ba67fd771a0c2 100644 --- a/aleksis/core/apps.py +++ b/aleksis/core/apps.py @@ -2,6 +2,7 @@ from typing import Any, List, Optional, Tuple import django.apps from django.http import HttpRequest +from django.core.files.uploadedfile import TemporaryUploadedFile from dynamic_preferences.registries import preference_models @@ -59,10 +60,15 @@ class CoreConfig(AppConfig): elif name in ("favicon", "pwa_icon"): from favicon.models import Favicon # noqa - Favicon.on_site.update_or_create( - title=name, - defaults={"isFavicon": name == "favicon", "faviconImage": new_value,}, - ) + is_favicon = name == "favicon" + + if new_value: + Favicon.on_site.update_or_create( + title=name, + defaults={"isFavicon": name == "favicon", "faviconImage": new_value, }, + ) + else: + Favicon.on_site.filter(title=name, isFavicon=is_favicon).delete() def post_migrate( self,