mirror of
https://framagit.org/la-chariotte/la-chariotte.git
synced 2025-05-01 11:22:24 +02:00
integrate code for joining grouped order in dashboard
- move home page into order app and name it 'dashboard'
This commit is contained in:
parent
dab7477f51
commit
6fe83b9275
9 changed files with 31 additions and 61 deletions
|
@ -58,7 +58,7 @@
|
||||||
|
|
||||||
<body>
|
<body>
|
||||||
<div class="content">
|
<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' %}">
|
<img class="logo" src="{{ base_url }}{% static 'img/logos/logo_la_chariotte.png' %}">
|
||||||
</a>
|
</a>
|
||||||
|
|
||||||
|
|
|
@ -14,7 +14,21 @@
|
||||||
<div class="column is-half">
|
<div class="column is-half">
|
||||||
<div class="box">
|
<div class="box">
|
||||||
<p class="subtitle">Rejoindre une commande groupée</p>
|
<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>
|
</div>
|
||||||
<div class="column is-half">
|
<div class="column is-half">
|
||||||
|
@ -42,7 +56,7 @@
|
||||||
<p>Bienvenue sur la Chariotte, pensée pour vous aider à organiser des commandes groupées !
|
<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,
|
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,
|
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>
|
</p>
|
||||||
<div class="buttons is-centered">
|
<div class="buttons is-centered">
|
||||||
<a class="button is-info" href="{% url 'accounts:login' %}">
|
<a class="button is-info" href="{% url 'accounts:login' %}">
|
|
@ -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 %}
|
|
|
@ -199,7 +199,7 @@ class TestJoinGroupedOrderView:
|
||||||
name="test",
|
name="test",
|
||||||
orga_user=logged_user,
|
orga_user=logged_user,
|
||||||
)
|
)
|
||||||
join_url = reverse("order:grouped_order_join")
|
join_url = reverse("dashboard")
|
||||||
response = client.post(join_url, {"code": grouped_order.code})
|
response = client.post(join_url, {"code": grouped_order.code})
|
||||||
|
|
||||||
expected_url = reverse(
|
expected_url = reverse(
|
||||||
|
@ -211,7 +211,7 @@ class TestJoinGroupedOrderView:
|
||||||
def test_incorrect_code_errors_out(self, client):
|
def test_incorrect_code_errors_out(self, client):
|
||||||
assert len(models.GroupedOrder.objects.all()) == 0
|
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"})
|
response = client.post(join_url, {"code": "123456"})
|
||||||
|
|
||||||
assert (
|
assert (
|
||||||
|
|
|
@ -6,11 +6,6 @@ from . import views
|
||||||
app_name = "order"
|
app_name = "order"
|
||||||
urlpatterns = [
|
urlpatterns = [
|
||||||
path("", views.IndexView.as_view(), name="index"),
|
path("", views.IndexView.as_view(), name="index"),
|
||||||
path(
|
|
||||||
"rejoindre-une-commande",
|
|
||||||
views.JoinGroupedOrderView.as_view(),
|
|
||||||
name="grouped_order_join",
|
|
||||||
),
|
|
||||||
path(
|
path(
|
||||||
"<str:code>/",
|
"<str:code>/",
|
||||||
views.GroupedOrderDetailView.as_view(),
|
views.GroupedOrderDetailView.as_view(),
|
||||||
|
|
|
@ -54,7 +54,7 @@ class IndexView(LoginRequiredMixin, generic.ListView):
|
||||||
|
|
||||||
class JoinGroupedOrderView(generic.FormView, generic.RedirectView, LoginRequiredMixin):
|
class JoinGroupedOrderView(generic.FormView, generic.RedirectView, LoginRequiredMixin):
|
||||||
form_class = JoinGroupedOrderForm
|
form_class = JoinGroupedOrderForm
|
||||||
template_name = "order/grouped_order_join.html"
|
template_name = "order/dashboard.html"
|
||||||
|
|
||||||
def form_valid(self, form):
|
def form_valid(self, form):
|
||||||
return redirect(
|
return redirect(
|
||||||
|
|
|
@ -48,7 +48,7 @@ ROOT_URLCONF = "la_chariotte.urls"
|
||||||
|
|
||||||
LOGIN_URL = "accounts:login"
|
LOGIN_URL = "accounts:login"
|
||||||
LOGIN_REDIRECT_URL = "order:index"
|
LOGIN_REDIRECT_URL = "order:index"
|
||||||
LOGOUT_REDIRECT_URL = "home"
|
LOGOUT_REDIRECT_URL = "dashboard"
|
||||||
|
|
||||||
TEMPLATES = [
|
TEMPLATES = [
|
||||||
{
|
{
|
||||||
|
|
|
@ -57,7 +57,7 @@
|
||||||
<nav class="side-nav navbar is-fixed-top is-flex-desktop" role="navigation" aria-label="main navigation">
|
<nav class="side-nav navbar is-fixed-top is-flex-desktop" role="navigation" aria-label="main navigation">
|
||||||
<!-- Navbar brand : always visible (all screen sizes)-->
|
<!-- Navbar brand : always visible (all screen sizes)-->
|
||||||
<div class="navbar-brand">
|
<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' %}">
|
<img src="{% static 'img/logos/logo_la_chariotte.png' %}">
|
||||||
</a>
|
</a>
|
||||||
|
|
||||||
|
@ -71,19 +71,17 @@
|
||||||
<!-- Navbar menu : only visible on desktop-->
|
<!-- Navbar menu : only visible on desktop-->
|
||||||
<div id="navbarBasicExample" class="navbar-menu">
|
<div id="navbarBasicExample" class="navbar-menu">
|
||||||
<div class="navbar-start">
|
<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
|
<i class="fa fa-home mr-3" aria-hidden="true"></i>Tableau de bord
|
||||||
</a>
|
</a>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
{% if user.is_authenticated %}
|
{% if user.is_authenticated %}
|
||||||
<a class="navbar-item" href="{% url 'order:index' %}">
|
<a class="navbar-item" href="{% url 'order:index' %}">
|
||||||
<i class="fa fa-shopping-basket mr-3" aria-hidden="true"></i>Mes commandes groupées
|
<i class="fa fa-shopping-basket mr-3" aria-hidden="true"></i>Mes commandes groupées
|
||||||
</a>
|
</a>
|
||||||
{% endif %}
|
{% 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 ?
|
<i class="fa fa-home mr-3" aria-hidden="true"></i>La Chariotte, c'est quoi ?
|
||||||
</a>
|
</a>
|
||||||
|
|
||||||
|
|
|
@ -24,6 +24,8 @@ from django.contrib.auth.views import (
|
||||||
from django.urls import include, path
|
from django.urls import include, path
|
||||||
from django.views.generic.base import TemplateView
|
from django.views.generic.base import TemplateView
|
||||||
|
|
||||||
|
from la_chariotte.order.views import JoinGroupedOrderView
|
||||||
|
|
||||||
urlpatterns = [
|
urlpatterns = [
|
||||||
path("admin/", admin.site.urls),
|
path("admin/", admin.site.urls),
|
||||||
path("commande/", include("la_chariotte.order.urls")),
|
path("commande/", include("la_chariotte.order.urls")),
|
||||||
|
@ -49,7 +51,11 @@ urlpatterns = [
|
||||||
PasswordResetCompleteView.as_view(),
|
PasswordResetCompleteView.as_view(),
|
||||||
name="password_reset_complete",
|
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(
|
path(
|
||||||
"mode-d-emploi",
|
"mode-d-emploi",
|
||||||
TemplateView.as_view(template_name="help/notice.html"),
|
TemplateView.as_view(template_name="help/notice.html"),
|
||||||
|
|
Loading…
Reference in a new issue