diff --git a/avisstage/models.py b/avisstage/models.py
index e15ddba..6c596ef 100644
--- a/avisstage/models.py
+++ b/avisstage/models.py
@@ -2,6 +2,9 @@
from __future__ import unicode_literals
+from allauth.account.models import EmailAddress
+from allauth.socialaccount.models import SocialAccount
+
from django.db import models
from django.db.models.signals import post_save
from django.contrib.auth.models import User
@@ -9,6 +12,7 @@ from django.contrib.gis.db import models as geomodels
from django.template.defaultfilters import slugify
from django.forms.widgets import DateInput
from django.urls import reverse
+
from django.utils import timezone
from django.utils.html import strip_tags
@@ -47,6 +51,18 @@ class Normalien(models.Model):
def stages_publics(self):
return self.stages.filter(public=True).order_by('-date_debut')
+ @property
+ def en_scolarite(self):
+ return SocialAccount.objects.filter(user_id=self.user_id,
+ provider="clipper").exists()
+
+ def has_nonENS_email(self):
+ a = EmailAddress.objects.filter(user_id=self.user_id,
+ verified=True) \
+ .exclude(email__endswith="ens.fr")
+ print(a)
+ return a.exists()
+
# Hook à la création d'un nouvel utilisateur : récupération de ses infos par LDAP
def create_user_profile(sender, instance, created, **kwargs):
if created:
diff --git a/avisstage/templates/avisstage/perso.html b/avisstage/templates/avisstage/perso.html
index 8f0b235..6876666 100644
--- a/avisstage/templates/avisstage/perso.html
+++ b/avisstage/templates/avisstage/perso.html
@@ -6,6 +6,49 @@
{% block content %}
+ Mon compte
+
+ {% if user.profil.en_scolarite %}
+ Statut : En scolarité
+ Vous pouvez accéder à l'ensemble du site, et aux fiches de stages.
+ Quand vous n'aurez plus de compte clipper (après votre scolarité), votre accès sera restreint à vos propres expériences, que vous pourrez ajouter, modifier, supprimer.
+ Pensez à renseigner une adresse e-mail non-ENS pour conserver cet accès, et permettre aux futur⋅e⋅s normalien⋅ne⋅s de toujours vous contacter !
+ {% else %}
+ Statut : Archicube
+ Vous ne pouvez plus accéder qu'à vos propres expériences pour les modifier, et tenir à jour votre profil.
+ Si vous êtes encore en scolarité, merci de vous reconnecter en passant par le serveur d'authentification de l'ENS pour mettre à jour votre statut.
+ {% endif %}
+
+ Le statut est mis à jour automatiquement chaque année selon le mode de connexion que vous utilisez.
+ {% if not user.profil.has_nonENS_email %}Vous n'avez pas renseigné d'adresse mail autre que celle de l'ENS. Pensez à le faire !
{% endif %}
+ Gérer les adresses e-mail liées à mon compte
+ {% if not user.password %}Vous n'avez pas créé de mot de passe interne à ExperiENS. Pensez-y pour garder l'accès au site quand vous n'aurez plus de compte clipper !
{% endif %}
+ Changer mon mot de passe ExperiENS
+ Votre nom d'utilisateur pour la connexion directement sur ExperiENS est {{ user.username }}.
+
+
+