Added logo and font migrations
This commit is contained in:
parent
450819c035
commit
e9ef293cf7
@ -1,14 +1,39 @@
|
|||||||
# Generated by Django 2.2.2 on 2019-06-28 06:09
|
# Generated by Django 2.2.2 on 2019-06-28 06:09
|
||||||
|
|
||||||
import os.path
|
import os.path
|
||||||
|
from typing import List
|
||||||
|
|
||||||
from django.contrib.auth.models import Permission
|
from django.contrib.auth.models import Permission
|
||||||
from django.contrib.contenttypes.models import ContentType
|
from django.contrib.contenttypes.models import ContentType
|
||||||
from django.db import migrations
|
from django.db import migrations
|
||||||
|
|
||||||
|
|
||||||
|
def change_logo_and_font_configs(apps, schema_editor):
|
||||||
|
"""
|
||||||
|
All old paths with "/media/file/..." will be replaced with "/media/...".
|
||||||
|
"""
|
||||||
|
ConfigStore = apps.get_model("core", "ConfigStore")
|
||||||
|
|
||||||
|
logo_font_keys: List[str] = []
|
||||||
|
try:
|
||||||
|
logo_font_keys.extend(ConfigStore.objects.get(key="logos_available").value)
|
||||||
|
logo_font_keys.extend(ConfigStore.objects.get(key="fonts_available").value)
|
||||||
|
except ConfigStore.DoesNotExist:
|
||||||
|
pass
|
||||||
|
|
||||||
|
for key in logo_font_keys:
|
||||||
|
config = ConfigStore.objects.get(key=key)
|
||||||
|
logo = config.value
|
||||||
|
path = logo.get("path")
|
||||||
|
if path and path.startswith("/media/file/"):
|
||||||
|
logo["path"] = path.replace("/media/file/", "/media/", 1)
|
||||||
|
config.value = logo
|
||||||
|
config.save()
|
||||||
|
|
||||||
|
|
||||||
def copy_filename(apps, schema_editor):
|
def copy_filename(apps, schema_editor):
|
||||||
Mediafile = apps.get_model("mediafiles", "Mediafile")
|
Mediafile = apps.get_model("mediafiles", "Mediafile")
|
||||||
|
|
||||||
for mediafile in Mediafile.objects.all():
|
for mediafile in Mediafile.objects.all():
|
||||||
filename = os.path.basename(mediafile.mediafile.name)
|
filename = os.path.basename(mediafile.mediafile.name)
|
||||||
mediafile.original_filename = filename
|
mediafile.original_filename = filename
|
||||||
@ -41,6 +66,7 @@ class Migration(migrations.Migration):
|
|||||||
dependencies = [("mediafiles", "0004_directories_and_permissions_1")]
|
dependencies = [("mediafiles", "0004_directories_and_permissions_1")]
|
||||||
|
|
||||||
operations = [
|
operations = [
|
||||||
|
migrations.RunPython(change_logo_and_font_configs),
|
||||||
migrations.RunPython(copy_filename),
|
migrations.RunPython(copy_filename),
|
||||||
migrations.RunPython(set_groups_and_delete_old_permissions),
|
migrations.RunPython(set_groups_and_delete_old_permissions),
|
||||||
]
|
]
|
||||||
|
Loading…
Reference in New Issue
Block a user