mirror of
https://git.v0id.ovh/n3wt-innov/n3wt-school.git
synced 2026-01-28 23:43:22 +00:00
feat: Utilisation de l'établissement en variable de session / gestion de
la page des inscriptions en fonction de l'établissement / mise à jour du mock_data à l'init
This commit is contained in:
@ -20,6 +20,7 @@ class Profile(AbstractUser):
|
||||
datePeremption = models.CharField(max_length=200, default="", blank=True)
|
||||
droit = models.IntegerField(choices=Droits, default=Droits.PROFIL_UNDEFINED)
|
||||
estConnecte = models.BooleanField(default=False, blank=True)
|
||||
establishment = models.ForeignKey('School.Establishment', on_delete=models.PROTECT, related_name='profile', null=True, blank=True)
|
||||
|
||||
def __str__(self):
|
||||
return self.email + " - " + str(self.droit)
|
||||
|
||||
@ -8,7 +8,7 @@ class ProfileSerializer(serializers.ModelSerializer):
|
||||
|
||||
class Meta:
|
||||
model = Profile
|
||||
fields = ['id', 'password', 'email', 'code', 'datePeremption', 'estConnecte', 'droit', 'username', 'is_active']
|
||||
fields = ['id', 'password', 'email', 'code', 'datePeremption', 'estConnecte', 'droit', 'username', 'is_active', 'establishment']
|
||||
extra_kwargs = {'password': {'write_only': True}}
|
||||
|
||||
def create(self, validated_data):
|
||||
@ -16,7 +16,8 @@ class ProfileSerializer(serializers.ModelSerializer):
|
||||
username=validated_data['username'],
|
||||
email=validated_data['email'],
|
||||
is_active=validated_data['is_active'],
|
||||
droit=validated_data['droit']
|
||||
droit=validated_data['droit'],
|
||||
establishment=validated_data.get('establishment')
|
||||
)
|
||||
user.set_password(validated_data['password'])
|
||||
user.save()
|
||||
|
||||
@ -204,6 +204,7 @@ class LoginView(APIView):
|
||||
'user_id': user.id,
|
||||
'email': user.email,
|
||||
'droit': user.droit,
|
||||
'establishment': user.establishment.id,
|
||||
'type': 'access',
|
||||
'exp': datetime.utcnow() + settings.SIMPLE_JWT['ACCESS_TOKEN_LIFETIME'],
|
||||
'iat': datetime.utcnow(),
|
||||
@ -300,6 +301,7 @@ class RefreshJWTView(APIView):
|
||||
'user_id': user.id,
|
||||
'email': user.email,
|
||||
'droit': user.droit,
|
||||
'establishment': user.establishment.id,
|
||||
'type': 'access',
|
||||
'exp': datetime.utcnow() + settings.SIMPLE_JWT['ACCESS_TOKEN_LIFETIME'],
|
||||
'iat': datetime.utcnow(),
|
||||
|
||||
Reference in New Issue
Block a user