mirror of
https://github.com/narrrl/holy-flavor-rater.git
synced 2026-11-03 16:41:27 +01:00
updated admin panel + side bar
This commit is contained in:
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),
|
||||
),
|
||||
]
|
||||
@@ -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)
|
||||
|
||||
@@ -24,6 +24,7 @@ class UserSerializer(serializers.ModelSerializer):
|
||||
"email",
|
||||
"theme",
|
||||
"language",
|
||||
"drawer_anchor",
|
||||
"avatar",
|
||||
"following_count",
|
||||
"followers_count",
|
||||
|
||||
@@ -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),
|
||||
}
|
||||
)
|
||||
|
||||
Reference in new issue
Block a user