1
0
mirror of https://gitlab.crans.org/mediatek/med.git synced 2025-07-07 13:04:01 +02:00

Rename pseudo to username

This commit is contained in:
Alexandre Iooss
2019-08-02 21:35:30 +02:00
parent afdb08b926
commit e82053d16f
11 changed files with 91 additions and 63 deletions

View File

@ -6,8 +6,9 @@ import datetime
import uuid
from django.contrib.auth.models import AbstractBaseUser, BaseUserManager
from django.contrib.auth.validators import ASCIIUsernameValidator, UnicodeUsernameValidator
from django.db import models
from django.utils import timezone
from django.utils import six, timezone
from django.utils.translation import gettext_lazy as _
from med.settings import MAX_EMPRUNT, REQ_EXPIRE_HRS
@ -25,7 +26,7 @@ class UserManager(BaseUserManager):
email = self.normalize_email(email)
username = self.model.normalize_username(username)
user = self.model(
pseudo=username,
username=username,
name=name,
surname=surname,
email=email,
@ -37,22 +38,23 @@ class UserManager(BaseUserManager):
user.make_admin()
return user
def create_user(self, pseudo, name, surname, email, password=None):
def create_user(self, username, name, surname, email, password=None):
"""
Creates and saves a User with the given pseudo, name, surname, email,
Creates and saves a User with the given username, name, surname, email,
and password.
"""
return self._create_user(pseudo, name, surname, email, password, False)
return self._create_user(username, name, surname, email, password, False)
def create_superuser(self, pseudo, name, surname, email, password):
def create_superuser(self, username, name, surname, email, password):
"""
Creates and saves a superuser with the given pseudo, name, surname,
Creates and saves a superuser with the given username, name, surname,
email, and password.
"""
return self._create_user(pseudo, name, surname, email, password, True)
return self._create_user(username, name, surname, email, password, True)
class User(AbstractBaseUser):
username_validator = UnicodeUsernameValidator() if six.PY3 else ASCIIUsernameValidator()
PRETTY_NAME = "Utilisateurs"
name = models.CharField(max_length=255)
@ -61,8 +63,16 @@ class User(AbstractBaseUser):
telephone = models.CharField(max_length=15, null=True, blank=True)
adresse = models.CharField(max_length=255, null=True, blank=True)
maxemprunt = models.IntegerField(default=MAX_EMPRUNT, help_text="Maximum d'emprunts autorisés")
pseudo = models.CharField(max_length=32, unique=True,
help_text="Doit contenir uniquement des lettres, chiffres, ou tirets. ")
username = models.CharField(
_('username'),
max_length=150,
unique=True,
help_text=_('Required. 150 characters or fewer. Letters, digits and @/./+/-/_ only.'),
validators=[username_validator],
error_messages={
'unique': _("A user with that username already exists."),
},
)
comment = models.CharField(help_text="Commentaire, promo", max_length=255, blank=True)
is_staff = models.BooleanField(
_('staff status'),
@ -79,7 +89,7 @@ class User(AbstractBaseUser):
)
registered = models.DateTimeField(auto_now_add=True)
USERNAME_FIELD = 'pseudo'
USERNAME_FIELD = 'username'
REQUIRED_FIELDS = ['name', 'surname', 'email']
objects = UserManager()
@ -125,7 +135,8 @@ class User(AbstractBaseUser):
@property
def is_adherent(self):
return self in Adhesion.objects.all().order_by('annee_debut').reverse().first().adherent.all()
last_adh_year = Adhesion.objects.all().order_by('annee_debut').reverse().first()
return last_adh_year and self in last_adh_year.adherent.all()
def get_admin_right(self):
admin, created = ListRight.objects.get_or_create(listright="admin")
@ -146,7 +157,7 @@ class User(AbstractBaseUser):
user_right.delete()
def __str__(self):
return self.pseudo
return self.username
class Request(models.Model):