Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found

Target

Select target project
  • mediatek/site-interludes
  • aeltheos/site-kwei
  • mediatek/site-kwei
3 results
Show changes
Commits on Source (38)
Showing
with 44 additions and 47 deletions
......@@ -112,7 +112,7 @@ Le site se gère depuis deux pages d'administration:
## En production
Le serveur a besoin d'être configuré pour HTTPS et d'être configuré pour livrer directement les fichiers situés des `/static/`.
Le serveur a besoin d'être configuré pour HTTPS et d'être configuré pour livrer directement les fichiers situés dans `/static/` et `/media/`.
1. Installer les dépendances `make install`
......
......@@ -12,16 +12,6 @@
<a class="button" href="{% url 'profile' %}">Annuler</a>
</div>
</form>
<h2>Changer mon mot de passe</h2>
<form method="post" action="{% url 'accounts:change_password' %}">
{% csrf_token %}
{{ password_form.as_html }}
<br>
<div class="flex">
<input type="submit" value="Valider">
<a class="button" href="{% url 'profile' %}">Annuler</a>
</div>
</form>
<h2> Mot de Passe </h2>
<a href ="{% url 'account_reset_password'% }" rel="text/html"> Réinitialisez votre mot de passe. </a>
{% endblock %}
......@@ -5,16 +5,5 @@ from accounts import views
app_name = "accounts"
urlpatterns = [
path("login/", views.LoginView.as_view(), name="login"),
path("logout/", views.LogoutView.as_view(), name="logout"),
path("create/", views.CreateAccountView.as_view(), name="create"),
path("update/", views.UpdateAccountView.as_view(), name="update"),
path("change_password/", views.UpdatePasswordView.as_view(), name="change_password"),
path('activate/<uidb64>/<token>/', views.ActivateAccountView.as_view(), name='activate'),
path("password_reset/", views.ResetPasswordView.as_view(), name="password_reset"),
path(
"password_reset/<uidb64>/<token>/",
views.ResetPasswordConfirmView.as_view(),
name="password_reset_confirm"
),
]
......@@ -46,22 +46,14 @@
<div class="qty">Participants</div>
<div class="nb_big">{{ metrics.participants }}</div>
</div>
<div class="stat">
<div class="qty">Ulm</div>
<div class="nb_small">{{ metrics.ulm }}</div>
</div>
<div class="stat">
<div class="qty">Lyon</div>
<div class="nb_small">{{ metrics.lyon }}</div>
</div>
<div class="stat">
<div class="qty">Rennes</div>
<div class="nb_small">{{ metrics.rennes }}</div>
</div>
<div class="stat">
<div class="qty">Paris-Saclay</div>
<div class="nb_small">{{ metrics.saclay }}</div>
</div>
<div class="stat">
<div class="qty">Extérieur</div>
<div class="nb_small">{{ metrics.exterieur }}</div>
</div>
<div class="stat">
<div class="qty">Non inscrits</div>
<div class="nb_small">{{ metrics.non_registered }}</div>
......
......@@ -35,10 +35,8 @@ class AdminView(SuperuserRequiredMixin, TemplateView):
)
class metrics:
participants = registered.count()
ulm = registered.filter(school=models.ParticipantModel.ENS.ENS_ULM).count()
lyon = registered.filter(school=models.ParticipantModel.ENS.ENS_LYON).count()
rennes = registered.filter(school=models.ParticipantModel.ENS.ENS_RENNES).count()
saclay = registered.filter(school=models.ParticipantModel.ENS.ENS_CACHAN).count()
exterieur = registered.filter(school=models.ParticipantModel.ENS.EXTERIEUR).count()
non_registered = EmailUser.objects.filter(is_active=True).count() - participants
# mugs = registered.filter(mug=True).count()
sleeps = registered.filter(sleeps=True).count()
......
......@@ -82,7 +82,8 @@ class ActivitySubmissionForm(FormRenderMixin, forms.ModelForm):
"available_sunday_afternoon",
"constraints",
"status", "needs",
#"status",
"needs",
"comments",
)
......
# Generated by Django 3.2.15 on 2022-08-21 13:31
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('home', '0001_initial'),
]
operations = [
migrations.AlterField(
model_name='activitymodel',
name='status',
field=models.CharField(blank=True, choices=[('P', 'En présentiel uniquement'), ('D', 'En distanciel uniquement'), ('2', 'Les deux')], default='P', max_length=1, verbose_name='Présentiel/distanciel'),
),
migrations.AlterField(
model_name='participantmodel',
name='school',
field=models.CharField(choices=[('C', 'ENS Paris-Saclay'), ('E', 'Extérieur')], max_length=1, verbose_name='ENS Paris-Saclay ou extérieur'),
),
]
......@@ -142,7 +142,10 @@ class ActivityModel(models.Model):
"Contraintes particulières", max_length=2000, blank=True, null=True
)
status = models.CharField("Présentiel/distanciel", choices=Status.choices, max_length=1)
status = models.CharField(
"Présentiel/distanciel", choices=Status.choices, max_length=1,
default=Status.PRESENT, blank=True
)
needs = models.TextField(
"Besoin particuliers", max_length=2000, blank=True, null=True
)
......@@ -303,13 +306,14 @@ class ParticipantModel(models.Model):
class ENS(models.TextChoices):
"""enum representant les ENS"""
ENS_ULM = "U", _("ENS Ulm")
ENS_LYON = "L", _("ENS Lyon")
ENS_RENNES = "R", _("ENS Rennes")
ENS_CACHAN = "C", _("ENS Paris Saclay")
#ENS_ULM = "U", _("ENS Ulm")
#ENS_LYON = "L", _("ENS Lyon")
#ENS_RENNES = "R", _("ENS Rennes")
ENS_CACHAN = "C", _("ENS Paris-Saclay")
EXTERIEUR = "E", _("Extérieur")
user = models.OneToOneField(EmailUser, on_delete=models.CASCADE, related_name="Utilisateur")
school = models.CharField("ENS de rattachement", choices=ENS.choices, max_length=1)
school = models.CharField("ENS Paris-Saclay ou extérieur", choices=ENS.choices, max_length=1)
is_registered = models.BooleanField("est inscrit", default=False)
......@@ -325,7 +329,7 @@ class ParticipantModel(models.Model):
# mug = models.BooleanField("commander une tasse", default=False)
def __str__(self) -> str:
school = self.ENS(self.school).label.replace("ENS ", "") if self.school else ""
school = self.ENS(self.school).label if self.school else ""
return "{} {} ({})".format(self.user.first_name, self.user.last_name, school)
@property
......
home/static/imgs/2022/favicon.ico

36.6 KiB

home/static/imgs/2022/trois_ptits_pois.png

41.4 KiB

home/static/imgs/2022/trollune.png

255 KiB