integrate code for joining grouped order in dashboard

- move home page into order app and name it 'dashboard'
This commit is contained in:
Laetitia Getti 2023-08-14 22:03:23 +02:00 committed by Laetitia Getti
parent dab7477f51
commit 6fe83b9275
9 changed files with 31 additions and 61 deletions

View file

@ -58,7 +58,7 @@
<body>
<div class="content">
<a href="{{ base_url }}{% url 'home' %}">
<a href="{{ base_url }}{% url 'dashboard' %}">
<img class="logo" src="{{ base_url }}{% static 'img/logos/logo_la_chariotte.png' %}">
</a>

View file

@ -14,7 +14,21 @@
<div class="column is-half">
<div class="box">
<p class="subtitle">Rejoindre une commande groupée</p>
<p>Si vous avez reçu un code à 6 caractères, entrez-le ici pour vous rendre sur la page de commande :</p>
<p>Si vous avez un code à 6 caractères, entrez-le ici :</p>
<form method="post">
{% csrf_token %}
{% for error in form.code.errors %}
<p class="help is-danger">{{ error }}</p>
{% endfor %}
<div class="field has-addons">
<div class="control">
<input name="code" class="input {% if form.code.errors %}is-danger{% endif %}" type="text">
</div>
<div class="control">
<input class="button is-primary" type="submit" value="Rejoindre">
</div>
</div>
</form>
</div>
</div>
<div class="column is-half">
@ -42,7 +56,7 @@
<p>Bienvenue sur la Chariotte, pensée pour vous aider à organiser des commandes groupées !
Que vous soyez producteur ou productrice, simple passant·e curieux·se,
ou expert·e des groupements d'achats en tout genre, la Chariotte vous réserve des rencontres,
des bons produits locaux et bien plusa quelque chose à vous proposez !
des bons produits locaux et bien plus !
</p>
<div class="buttons is-centered">
<a class="button is-info" href="{% url 'accounts:login' %}">

View file

@ -1,43 +0,0 @@
{% extends 'base.html' %}
{% block title %}Rejoindre une commande{% endblock %}
{% block content %}
<p class="desktop-hidden mobile-content-title">
{% block content_title %}Rejoindre une commande groupée{% endblock %}
</p>
<div class="box">
<div class="columns">
<div class="column is-8">
<h3>Utiliser un code</h3>
<p>Si vous avez un code pour rejoindre une distribution, entrez-le ici.</p>
<form method="post">
{% csrf_token %}
{% for error in form.code.errors %}
<p class="help is-danger">{{ error }}</p>
{% endfor %}
<div class="field has-addons">
<div class="control">
<input name="code" class="input {% if form.code.errors %}is-danger{% endif %}" type="text">
</div>
<div class="control">
<input class="button is-primary" type="submit" value="Rejoindre">
</div>
</div>
</div>
</form>
</div>
</div>
<div class="box">
<h4>Vous avez un lien ?</h4>
<p>Si vous avez reçu un lien par un organisateur ou une organisatrice de commande, vous pouvez coller ce lien dans
la barre de navigation en haut de l'écran !</p>
</div>
<p>Sinon, vous pouvez vous <a href="{% url 'accounts:signup' %}">créer un compte</a> ou <a
href="{% url 'accounts:login' %}">vous connecter</a>
pour organiser une nouvelle commande groupée.
</div>
{% endblock %}

View file

@ -199,7 +199,7 @@ class TestJoinGroupedOrderView:
name="test",
orga_user=logged_user,
)
join_url = reverse("order:grouped_order_join")
join_url = reverse("dashboard")
response = client.post(join_url, {"code": grouped_order.code})
expected_url = reverse(
@ -211,7 +211,7 @@ class TestJoinGroupedOrderView:
def test_incorrect_code_errors_out(self, client):
assert len(models.GroupedOrder.objects.all()) == 0
join_url = reverse("order:grouped_order_join")
join_url = reverse("dashboard")
response = client.post(join_url, {"code": "123456"})
assert (

View file

@ -6,11 +6,6 @@ from . import views
app_name = "order"
urlpatterns = [
path("", views.IndexView.as_view(), name="index"),
path(
"rejoindre-une-commande",
views.JoinGroupedOrderView.as_view(),
name="grouped_order_join",
),
path(
"<str:code>/",
views.GroupedOrderDetailView.as_view(),

View file

@ -54,7 +54,7 @@ class IndexView(LoginRequiredMixin, generic.ListView):
class JoinGroupedOrderView(generic.FormView, generic.RedirectView, LoginRequiredMixin):
form_class = JoinGroupedOrderForm
template_name = "order/grouped_order_join.html"
template_name = "order/dashboard.html"
def form_valid(self, form):
return redirect(

View file

@ -48,7 +48,7 @@ ROOT_URLCONF = "la_chariotte.urls"
LOGIN_URL = "accounts:login"
LOGIN_REDIRECT_URL = "order:index"
LOGOUT_REDIRECT_URL = "home"
LOGOUT_REDIRECT_URL = "dashboard"
TEMPLATES = [
{

View file

@ -57,7 +57,7 @@
<nav class="side-nav navbar is-fixed-top is-flex-desktop" role="navigation" aria-label="main navigation">
<!-- Navbar brand : always visible (all screen sizes)-->
<div class="navbar-brand">
<a class="navbar-item" href="{% url 'home' %}">
<a class="navbar-item" href="{% url 'dashboard' %}">
<img src="{% static 'img/logos/logo_la_chariotte.png' %}">
</a>
@ -71,19 +71,17 @@
<!-- Navbar menu : only visible on desktop-->
<div id="navbarBasicExample" class="navbar-menu">
<div class="navbar-start">
<a class="navbar-item" href="{% url 'home' %}">
<a class="navbar-item" href="{% url 'dashboard' %}">
<i class="fa fa-home mr-3" aria-hidden="true"></i>Tableau de bord
</a>
{% if user.is_authenticated %}
<a class="navbar-item" href="{% url 'order:index' %}">
<i class="fa fa-shopping-basket mr-3" aria-hidden="true"></i>Mes commandes groupées
</a>
{% endif %}
<a class="navbar-item" href="{% url 'home' %}">
<a class="navbar-item" href="{% url 'dashboard' %}">
<i class="fa fa-home mr-3" aria-hidden="true"></i>La Chariotte, c'est quoi&nbsp;?
</a>

View file

@ -24,6 +24,8 @@ from django.contrib.auth.views import (
from django.urls import include, path
from django.views.generic.base import TemplateView
from la_chariotte.order.views import JoinGroupedOrderView
urlpatterns = [
path("admin/", admin.site.urls),
path("commande/", include("la_chariotte.order.urls")),
@ -49,7 +51,11 @@ urlpatterns = [
PasswordResetCompleteView.as_view(),
name="password_reset_complete",
),
path("", TemplateView.as_view(template_name="home.html"), name="home"),
path(
"",
JoinGroupedOrderView.as_view(template_name="order/dashboard.html"),
name="dashboard",
),
path(
"mode-d-emploi",
TemplateView.as_view(template_name="help/notice.html"),