diff --git a/CineSync/static/css/users/profile.css b/CineSync/static/css/users/profile.css index e728653..f6571b5 100644 --- a/CineSync/static/css/users/profile.css +++ b/CineSync/static/css/users/profile.css @@ -20,4 +20,9 @@ } .btn { margin: 5px !important; +} +.user_image { + width: 20vw; + border-radius: 2vw; + margin-bottom: 1.5vw; } \ No newline at end of file diff --git a/CineSync/templates/users/profile.html b/CineSync/templates/users/profile.html index 960e093..43afd62 100644 --- a/CineSync/templates/users/profile.html +++ b/CineSync/templates/users/profile.html @@ -38,6 +38,9 @@
{{ field.help_text }}
{% endfor %} + {% if user.profile.image %} + + {% endif %} {% if messages %} {% for message in messages %}

{{ message }}

diff --git a/CineSync/users/forms.py b/CineSync/users/forms.py index 485f5d0..0d44221 100644 --- a/CineSync/users/forms.py +++ b/CineSync/users/forms.py @@ -7,7 +7,9 @@ from django.contrib.auth.forms import ( UserChangeForm, UserCreationForm, ) +from django.core.validators import MaxLengthValidator, RegexValidator from django.forms import DateInput, ModelForm +from django.utils.translation import gettext_lazy as _ from users.models import Profile @@ -53,6 +55,15 @@ class SignUpForm(UserCreationForm): class Meta(UserCreationForm.Meta): fields = ('username', 'email') + def clean_username(self): + username = self.cleaned_data['username'] + if len(username) > 150: + raise forms.ValidationError('Максимальная длина 150 символов.') + if not all(char.isalnum() or char in '@/./+/-/_' for char in username): + raise forms.ValidationError('Можно использовать только буквы, цифры и символы @/./+/-/_.') + + return username + class ProfileForm(ModelForm): def __init__(self, *args, **kwargs) -> None: @@ -99,3 +110,12 @@ class UserForm(forms.ModelForm): model.first_name.field.name, model.last_name.field.name, ] + + def clean_username(self): + username = self.cleaned_data['username'] + if len(username) > 150: + raise forms.ValidationError('Максимальная длина 150 символов.') + if not all(char.isalnum() or char in '@/./+/-/_' for char in username): + raise forms.ValidationError('Можно использовать только буквы, цифры и символы @/./+/-/_.') + + return username