updated admin panel + side bar

This commit is contained in:
nvrl committed 2026-04-27 09:23:22 +02:00
1 parent 22fe0674dd
commit 556bae3556
23 files changed
+2217 -637

No files matched your search

@@ -0,0 +1,18 @@
# Generated by Django 6.0.4 on 2026-04-27 01:54
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('api', '0032_flavor_local_image_paths_flavor_main_image_path'),
]
operations = [
migrations.AddField(
model_name='user',
name='drawer_anchor',
field=models.CharField(choices=[('left', 'Left'), ('right', 'Right')], default='left', max_length=5),
),
]
+7
View File
@@ -26,8 +26,15 @@ class User(AbstractUser):
("en", "English"),
("de", "Deutsch"),
]
DRAWER_ANCHOR_CHOICES = [
("left", "Left"),
("right", "Right"),
]
theme = models.CharField(max_length=20, choices=THEME_CHOICES, default="holy_light")
language = models.CharField(max_length=2, choices=LANGUAGE_CHOICES, default="en")
drawer_anchor = models.CharField(
max_length=5, choices=DRAWER_ANCHOR_CHOICES, default="left"
)
avatar = models.ImageField(upload_to="avatars/", blank=True, null=True)
pending_email = models.EmailField(max_length=254, blank=True, null=True)
email_confirmation_code = models.CharField(max_length=6, blank=True, null=True)
+1
View File
@@ -24,6 +24,7 @@ class UserSerializer(serializers.ModelSerializer):
"email",
"theme",
"language",
"drawer_anchor",
"avatar",
"following_count",
"followers_count",
+5
View File
@@ -271,6 +271,7 @@ class UserViewSet(viewsets.ModelViewSet):
user = current_user(request)
theme = request.data.get("theme")
language = request.data.get("language")
drawer_anchor = request.data.get("drawer_anchor")
banner_id = request.data.get("selected_banner")
updated = False
@@ -280,6 +281,9 @@ class UserViewSet(viewsets.ModelViewSet):
if language in dict(User.LANGUAGE_CHOICES):
user.language = language
updated = True
if drawer_anchor in dict(User.DRAWER_ANCHOR_CHOICES):
user.drawer_anchor = drawer_anchor
updated = True
if banner_id is not None:
if banner_id == "":
@@ -303,6 +307,7 @@ class UserViewSet(viewsets.ModelViewSet):
"status": "preferences updated",
"theme": user.theme,
"language": user.language,
"drawer_anchor": user.drawer_anchor,
"selected_banner": (user.selected_banner.id if user.selected_banner else None),
}
)