diff --git a/copanier/__init__.py b/copanier/__init__.py index fa0eb17..f8d54db 100644 --- a/copanier/__init__.py +++ b/copanier/__init__.py @@ -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) diff --git a/copanier/templates/groups.html b/copanier/templates/groups.html index 575c5a7..ace6caf 100644 --- a/copanier/templates/groups.html +++ b/copanier/templates/groups.html @@ -1,7 +1,10 @@ {% extends "base.html" %} {% block body %} -

Liste des colocs / familles  Créer un nouveau groupe

+{% if not request['user'].group_id %} +

Bienvenue ! Avant de pouvoir commander, peux-tu nous indiquer de quelle coloc / famille fais-tu partie ?

+{% endif %} +

Voici la liste des colocs / familles déjà renseignées. Tu peux aussi  créer un nouveau groupe

{% for group in groups.groups.values() %} diff --git a/copanier/templates/home.html b/copanier/templates/home.html index 4f6fb05..74265cc 100644 --- a/copanier/templates/home.html +++ b/copanier/templates/home.html @@ -1,10 +1,5 @@ {% extends "base.html" %} {% block body %} -{% if not request['user'].group_id %} -

Vous ne faites partie d'aucun groupe (coloc / famille). Si vous faites des commandes pour plusieurs personnes, merci de rejoindre un groupe. - Rejoindre un groupe -

-{% endif %}

Livraisons à venir

{% with deliveries=incoming %} {% include "includes/delivery_list.html" %}