Force people to enroll in a group.

This commit is contained in:
Alexis M 2019-09-24 00:34:58 +02:00
parent 1131c55129
commit 911f327106
3 changed files with 15 additions and 8 deletions

View file

@ -189,6 +189,9 @@ async def logout(request, response):
@app.route("/", methods=["GET"])
async def home(request, response):
if not request['user'].group_id:
response.redirect = "/groupes"
return
response.html("home.html", incoming=Delivery.incoming(), former=Delivery.former())
@ -202,8 +205,10 @@ async def join_group(request, response, id):
user = session.user.get(None)
group = request["groups"].add_user(user.email, id)
request['groups'].persist()
redirect = '/' if not request['user'].group_id else '/groupes'
response.message(f"Vous avez bien rejoint le groupe '{group.name}'")
response.redirect = "/groupes"
response.redirect = redirect
@app.route("/groupes/créer", methods=["GET", "POST"])
@ -214,6 +219,10 @@ async def create_group(request, response):
members = []
if form.get('members'):
members = [m.strip() for m in form.get('members').split(',')]
if not request['user'].group_id and request['user'].email not in members:
members.append(request['user'].email)
group = Group.create(
id=slugify(form.get('name')),
name=form.get('name'),
@ -221,7 +230,7 @@ async def create_group(request, response):
request["groups"].add_group(group)
request["groups"].persist()
response.message(f"Le groupe {group.name} à bien été créé")
response.redirect = "/groupes"
response.redirect = "/"
response.html("edit_group.html", group=group)

View file

@ -1,7 +1,10 @@
{% extends "base.html" %}
{% block body %}
<h2>Liste des colocs / familles <a class="button" href="/groupes/créer"><i class="icon-globe"></i>&nbsp;Créer un nouveau groupe</a></h2>
{% if not request['user'].group_id %}
<p>Bienvenue ! Avant de pouvoir commander, peux-tu nous indiquer de quelle coloc / famille fais-tu partie ? </p>
{% endif %}
<p>Voici la liste des colocs / familles déjà renseignées. Tu peux aussi <a class="button" href="/groupes/créer"><i class="icon-globe"></i>&nbsp;créer un nouveau groupe</a></p>
{% for group in groups.groups.values() %}

View file

@ -1,10 +1,5 @@
{% extends "base.html" %}
{% block body %}
{% if not request['user'].group_id %}
<p class="notification warning">Vous ne faites partie d'aucun groupe (coloc / famille). Si vous faites des commandes pour plusieurs personnes, merci de rejoindre un groupe.
<a href="/groupes" class="button">Rejoindre un groupe</a>
</p>
{% endif %}
<h2>Livraisons à venir</h2>
{% with deliveries=incoming %}
{% include "includes/delivery_list.html" %}