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
...@@ -4,44 +4,59 @@ ...@@ -4,44 +4,59 @@
{% block nav_inscription %}current{% endblock %} {% block nav_inscription %}current{% endblock %}
{% block "content" %} {% block "content" %}
<h2>Inscription à l'événement</h2>
L'inscription à l'événement,
à l'hébergement et aux repas se fait sur <a
href="https://www.helloasso.com/associations/bureau-ludique-de-l-ens-de-lyon/evenements/interludes-ens-de-lyon">le
formulaire HelloAsso</a>
<h2>Inscription aux activités</h2>
Une fois votre inscription à l'événement effectuée, vous pourrez
vous inscrire à certaines activités sur cette page. La plupart des
activités ne demandent pas d'inscription et seront en libre accès
durant tout l'événement, mais certaines demandent une inscription à
l'avance.
<form id="main_form" method="post" action="{% url 'inscription' %}"> <form id="main_form" method="post" action="{% url 'inscription' %}">
{% csrf_token %} {% csrf_token %}
<h2>Inscription à l'événement</h2>
<p>L'inscription à l'événement,à l'hébergement
et aux repas se fait sur cette page.</p>
<h3>École</h3>
<p>{{ form.school.label_tag }} {{ form.school }}</p> <p>{{ form.school.label_tag }} {{ form.school }}</p>
<h3>Choix d'activités</h3> <h3>Repas</h3>
<p>Vous pouvez vous inscrire aux repas ci-dessous :</p>
<p>Saissisez les activités auquelles vous voulez vous inscrire, par ordre de préférence. <ul>
Vous trouverez une description des activités sur <a href="{% url 'activites' %}">cette page</a>. <li>Vendredi soir {{ form.meal_friday_evening }}</li>
</p> <li>Petit dej' du samedi {{ form.meal_saturday_morning }}</li>
<p> <li>Samedi midi {{ form.meal_saturday_midday }}</li>
Vous pouvez revenir modifier votre choix jusqu'à la fermeture des <li>Samedi soir {{ form.meal_saturday_evening }}</li>
inscriptions{% if settings.inscriptions_end %} (le {{ settings.inscriptions_end|date:"l d F Y à H:i" }}){% endif %}. <li>Dimanche matin {{ form.meal_sunday_morning }}</li>
</p> <li>Dimanche midi {{ form.meal_sunday_midday }}</li>
<p>Si vous vous inscrivez à une activité qui nécessite préparation, nous communiquerons <li>Dimanche soir (à emporter) {{ form.meal_sunday_evening }}</li>
votre email aux orgas pour qu'iels puissent vous contacter. </ul>
</p> <p>Les menus sont disponibles sur la <a href="{% url 'home' %}">page d'accueil</a>
<h3>Hébergement</h3>
<p>Pour l'hébergement, nous proposons le logement chez les Saclaysien⋅nes (comme aux InterQ). Si vous souhaitez un hébergement, cochez la case suivante : {{ form.sleeps }} </p>
<p>L'idée est de proposer aux normalien⋅nes de Saclay de loger celleux des autres écoles. Si vous avez besoin d'un hébergement vous pouvez compléter <a href="https://framaforms.org/logement-interludes-2023-extes-1668450149">ce questionnaire</a>. Si vous voulez loger quelqu'un <a href="https://framaforms.org/logement-interludes-2023-cote-hebergement-1668438253">c'est ici</a>. Merci à ceux qui veulent bien accueillir !</p>
<h3>Tarif</h3>
<p>Le tarif est différent selon si vous percevez un salaire ou non. Êtes-vous payé⋅e : {{ form.paid }}</p>
<h2>Inscription aux activités</h2>
{% if formset.non_form_errors %} {% if formset.non_form_errors %}
{{ formset.non_form_errors }} {{ formset.non_form_errors }}
{% endif %} {% endif %}
{{ formset.management_data }} {{ formset.management_data }}
{{ formset.management_form }} {{ formset.management_form }}
{% if settings.activity_inscriptions_open %}
<p>Vous pouvez vous inscrire à certaines activités sur cette page. La
plupart des activités ne demandent pas d'inscription et seront en libre
accès durant tout l'événement, mais certaines demandent une inscription
à l'avance.</p>
<h3>Choix d'activités</h3>
<p>Saissisez les activités auquelles vous voulez vous inscrire, <strong>par ordre de préférence</strong>.
Vous trouverez une description des activités sur <a href="{% url 'activites' %}">cette page</a>.</p>
<p>Si vous vous inscrivez à une activité qui nécessite préparation, nous communiquerons
votre email aux orgas pour qu'iels puissent vous contacter.</p>
{% for form in formset %} {% for form in formset %}
<div class="activity-form flex"> <div class="activity-form flex">
{{ form.as_p }} {{ form.as_p }}
...@@ -49,6 +64,29 @@ ...@@ -49,6 +64,29 @@
</div> </div>
{% endfor %} {% endfor %}
<button class="button" id="add-activity">Ajouter une activité</button> <button class="button" id="add-activity">Ajouter une activité</button>
{% else %}
<p>Vous pourrez vous inscrire à certaines activités sur cette page. La
plupart des activités ne demandent pas d'inscription et seront en libre
accès durant tout l'événement, mais certaines demandent une inscription
à l'avance.{% if settings.inscriptions_end %} Les inscriptions aux activités ouvrent le {{ settings.inscriptions_start|date:"l d F Y à H:i" }}){% endif %}. </p>
{% endif %}
<h3>Expérience</h3>
<p>Pour vous attribuer au mieux les activités, nous aimerions connaître votre exprérieurnce en murder (jeux de rôles grandeurs nature). Si vous avez perdu le compte, 42 conviendra très bien ;) </p>
Nombre de murder déjà jouées : {{ form.nb_murder }}
<h2>Commentaire</h2>
<p>Pour préciser toutes les informations qui vous semblent utiles comme les allergies alimentaires.</p>
{{ form.comment }}
<p>
Vous pouvez revenir modifier vos choix jusqu'à la fermeture des
inscriptions{% if settings.inscriptions_end %} (le {{ settings.inscriptions_end|date:"l d F Y à H:i" }}){% endif %}.
</p>
<div class="flex"> <div class="flex">
<input type="submit" value="Valider"> <input type="submit" value="Valider">
......
...@@ -4,7 +4,7 @@ ...@@ -4,7 +4,7 @@
{% block "content" %} {% block "content" %}
<h2>Inscriptions</h2> <h2>Inscriptions</h2>
<p>Vous devez être connecté pour pouvoir vous inscrire à des activités. Pour vous inscrire à l'événement en lui même, suivez le lien HelloAsso sur la <a href="{% url 'home' %}">page d'accueil</a></p> <p>Vous devez être connecté pour pouvoir vous inscrire</p>
<p>Aller à la page de <a href="{% url 'accounts:login' %}">connexion</a> pour vous connecter <p>Aller à la page de <a href="{% url 'accounts:login' %}">connexion</a> pour vous connecter
ou à celle de <a href="{% url 'accounts:create' %}">création de compte</a> si vous n'avez pas de compte.</p> ou à celle de <a href="{% url 'accounts:create' %}">création de compte</a> si vous n'avez pas de compte.</p>
{% if settings.inscriptions_end %} {% if settings.inscriptions_end %}
......
...@@ -26,9 +26,23 @@ ...@@ -26,9 +26,23 @@
modifiable jusqu'au {{ settings.inscriptions_end|date:"l d F Y à H:i" }} modifiable jusqu'au {{ settings.inscriptions_end|date:"l d F Y à H:i" }}
{% endif %} {% endif %}
<ul> <ul>
<!-- <li>{% if user.profile.sleeps %}Inscrit pour dormir sur place{% else %}Ne dors pas sur place{% endif %}</li> --> <li>Tarif personnalisé : {{ user.profile.cost }}€</li>
<!-- <li>{% if user.profile.mug %}Commandse une tasse{% else %}Ne commande pas de tasse{% endif %}</li> --> <li>{% if user.profile.sleeps %}Inscrit pour dormir sur place{% else %}Non inscrit pour dormir sur place{% endif %}</li>
<!-- <li>Inscrit à {{ user.profile.nb_meals }} repas.</li> --> {% comment "pas de tasse" %}<li>{% if user.profile.mug %}Commandse une tasse{% else %}Ne commande pas de tasse{% endif %}</li>{% endcomment%}
{% if user.profile.nb_meals != 0 %}
<li>Inscrit à {{ user.profile.nb_meals }} repas :</li>
<ul>
{% if user.profile.meal_friday_evening == True %}<li>Vendredi soir</li>{% endif %}
{% if user.profile.meal_saturday_morning == True %}<li>Petit dej' du samedi</li>{% endif %}
{% if user.profile.meal_saturday_midday == True %}<li>Samedi midi</li>{% endif %}
{% if user.profile.meal_saturday_evening == True %}<li>Samedi soir</li>{% endif %}
{% if user.profile.meal_sunday_morning == True %}<li>Petit dej' du dimanche</li>{% endif %}
{% if user.profile.meal_sunday_midday == True %}<li>Dimanche midi</li>{% endif %}
{% if user.profile.meal_sunday_evening == True %}<li>Dimanche soir (à emporter)</li>{% endif %}
</ul>
{% else %}
<li>Inscrit à aucun repas</li>
{% endif %}
{% if settings.activities_allocated %} {% if settings.activities_allocated %}
{% if my_choices %} {% if my_choices %}
<li>Inscrit à {{ my_choices|length }} activités&nbsp;: <li>Inscrit à {{ my_choices|length }} activités&nbsp;:
......
...@@ -126,14 +126,24 @@ class RegisterUpdateView(LoginRequiredMixin, TemplateView): ...@@ -126,14 +126,24 @@ class RegisterUpdateView(LoginRequiredMixin, TemplateView):
return render(request, self.template_name, context) return render(request, self.template_name, context)
def post(self, request, *args, **kwargs): def post(self, request, *args, **kwargs):
settings = SiteSettings.load()
form = self.form_class(request.POST, instance=request.user.profile) form = self.form_class(request.POST, instance=request.user.profile)
formset = self.formset_class(request.POST) if settings.activity_inscriptions_open : # meal + sleep + activities open
if not (form.is_valid() and formset.is_valid()): formset = self.formset_class(request.POST)
context = {"form": form, "formset": formset} if not (form.is_valid() and formset.is_valid()):
return render(request, self.template_name, context) context = {"form": form, "formset": formset}
return render(request, self.template_name, context)
self.set_activities(request.user.profile, formset)
else: # only meal and sleep open
if not form.is_valid():
participant = request.user.profile
slots = self.get_slots(participant)
formset = self.formset_class(initial=slots)
context = {"form": form, "formset": formset}
return render(request, self.template_name, context)
form.save() form.save()
self.set_activities(request.user.profile, formset)
messages.success(request, "Votre inscription a bien été enregistrée") messages.success(request, "Votre inscription a bien été enregistrée")
return redirect(self.success_url, permanent=False) return redirect(self.success_url, permanent=False)
......
...@@ -90,7 +90,6 @@ INSTALLED_APPS = [ ...@@ -90,7 +90,6 @@ INSTALLED_APPS = [
'accounts.apps.AccountsConfig', 'accounts.apps.AccountsConfig',
'site_settings.apps.SiteSettingsConfig', 'site_settings.apps.SiteSettingsConfig',
'shared.apps.SharedConfig', 'shared.apps.SharedConfig',
'cas_server',
] ]
MIDDLEWARE = [ MIDDLEWARE = [
...@@ -191,7 +190,3 @@ EMAIL_SIGNATURE = '-- Site Interludes (mail généré automatiquement)' ...@@ -191,7 +190,3 @@ EMAIL_SIGNATURE = '-- Site Interludes (mail généré automatiquement)'
# Prefix to mails to users # Prefix to mails to users
USER_EMAIL_SUBJECT_PREFIX = "[interludes] " USER_EMAIL_SUBJECT_PREFIX = "[interludes] "
# CAS SERVER
CAS_AUTH_CLASS = "interludes.cas_model.InterLudesAuthUser"
\ No newline at end of file
...@@ -22,5 +22,4 @@ from django.conf.urls.static import static ...@@ -22,5 +22,4 @@ from django.conf.urls.static import static
urlpatterns = static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT) + [ urlpatterns = static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT) + [
path('admin/', admin.site.urls), path('admin/', admin.site.urls),
path('', include('home.urls')), path('', include('home.urls')),
path('cas/', include('cas_server.urls', namespace="cas_server")),
] ]
# Generated by Django 3.2.16 on 2022-11-08 18:19
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('site_settings', '0002_sitesettings_hosting_school'),
]
operations = [
migrations.AddField(
model_name='sitesettings',
name='activity_inscriptions_open',
field=models.BooleanField(default=False, help_text="Permet d'ouvrir la partie du formulaire d'inscription pour les activités (nécessite l'ouverture des inscriptions)", verbose_name="Ouvrir l'inscription aux activitées"),
),
migrations.AlterField(
model_name='sitesettings',
name='inscriptions_open',
field=models.BooleanField(default=False, help_text="Permet d'ouvrir le formulaire d'inscription (repas et dodo; l'inscription aux activité est ouvrable en plus)", verbose_name='Ouvrir les inscriptions'),
),
]
...@@ -78,7 +78,8 @@ class SiteSettings(SingletonModel): ...@@ -78,7 +78,8 @@ class SiteSettings(SingletonModel):
date_end = models.DateField("Date de fin", blank=True, null=True) date_end = models.DateField("Date de fin", blank=True, null=True)
registrations_open = models.BooleanField("Ouvrir la création de compte", default=True) registrations_open = models.BooleanField("Ouvrir la création de compte", default=True)
inscriptions_open = models.BooleanField("Ouvrir les inscriptions", default=False) inscriptions_open = models.BooleanField("Ouvrir les inscriptions", default=False, help_text="Permet d'ouvrir le formulaire d'inscription (repas et dodo; l'inscription aux activité est ouvrable en plus)")
activity_inscriptions_open = models.BooleanField("Ouvrir l'inscription aux activitées", default=False, help_text="Permet d'ouvrir la partie du formulaire d'inscription pour les activités (nécessite l'ouverture des inscriptions)")
activity_submission_open = models.BooleanField( activity_submission_open = models.BooleanField(
"Ouvrir l'ajout d'activité", default=False, "Ouvrir l'ajout d'activité", default=False,
help_text="Permet de proposer une activité via le formulaire dédié" help_text="Permet de proposer une activité via le formulaire dédié"
......