Merge branch 'main' into storefront-nuxt

This commit is contained in:
Egor Pavlovich Gorbunov 2025-11-11 16:17:50 +03:00
commit dccaa206d6
2 changed files with 5 additions and 13 deletions

View file

@ -4,7 +4,7 @@ from contextlib import suppress
from hmac import compare_digest from hmac import compare_digest
from typing import Any from typing import Any
from constance import config from django.conf import settings
from django.contrib.auth import authenticate from django.contrib.auth import authenticate
from django.contrib.auth.models import update_last_login from django.contrib.auth.models import update_last_login
from django.contrib.auth.password_validation import validate_password from django.contrib.auth.password_validation import validate_password
@ -16,9 +16,9 @@ from rest_framework.fields import (
BooleanField, BooleanField,
CharField, CharField,
EmailField, EmailField,
JSONField,
ListField, ListField,
SerializerMethodField, SerializerMethodField,
JSONField,
) )
from rest_framework.serializers import ModelSerializer, Serializer from rest_framework.serializers import ModelSerializer, Serializer
from rest_framework_simplejwt.exceptions import TokenError from rest_framework_simplejwt.exceptions import TokenError
@ -30,7 +30,6 @@ from rest_framework_simplejwt.tokens import RefreshToken, Token, UntypedToken
from engine.core.models import Product from engine.core.models import Product
from engine.core.serializers import ProductSimpleSerializer from engine.core.serializers import ProductSimpleSerializer
from engine.core.utils.security import is_safe_key from engine.core.utils.security import is_safe_key
from django.conf import settings
from engine.vibes_auth.models import User from engine.vibes_auth.models import User
from engine.vibes_auth.validators import validate_phone_number from engine.vibes_auth.validators import validate_phone_number
@ -38,25 +37,18 @@ logger = logging.getLogger(__name__)
class UserSerializer(ModelSerializer): class UserSerializer(ModelSerializer):
avatar_url = SerializerMethodField(required=False, read_only=True)
password = CharField(write_only=True, required=False) password = CharField(write_only=True, required=False)
confirm_password = CharField(write_only=True, required=False) confirm_password = CharField(write_only=True, required=False)
is_staff = BooleanField(read_only=True) is_staff = BooleanField(read_only=True)
recently_viewed = SerializerMethodField(required=False, read_only=True) recently_viewed = SerializerMethodField(required=False, read_only=True)
attributes = JSONField(required=False) attributes = JSONField(required=False)
@staticmethod
def get_avatar_url(obj) -> str:
if obj.avatar:
return f"https://api.{config.BASE_DOMAIN}/media/{obj.avatar!s}"
return f"https://api.{config.BASE_DOMAIN}/static/person.png"
class Meta: class Meta:
model = User model = User
fields = [ fields = [
"uuid", "uuid",
"email", "email",
"avatar_url", "avatar",
"is_staff", "is_staff",
"recently_viewed", "recently_viewed",
"attributes", "attributes",

View file

@ -1,7 +1,7 @@
import logging import logging
from os import getenv from os import getenv
from constance import config from django.conf import settings
from django.contrib.auth.models import AnonymousUser from django.contrib.auth.models import AnonymousUser
from django.core.exceptions import BadRequest, DisallowedHost, PermissionDenied, ValidationError from django.core.exceptions import BadRequest, DisallowedHost, PermissionDenied, ValidationError
from django.http import HttpResponseForbidden from django.http import HttpResponseForbidden
@ -21,7 +21,7 @@ class CustomCommonMiddleware(CommonMiddleware):
try: try:
return super().process_request(request) return super().process_request(request)
except DisallowedHost: except DisallowedHost:
return redirect(f"https://api.{config.BASE_DOMAIN}") return redirect(f"https://api.{settings.BASE_DOMAIN}")
class CustomLocaleMiddleware(LocaleMiddleware): class CustomLocaleMiddleware(LocaleMiddleware):