Fix counter if no date of birth

This commit is contained in:
Skia 2016-09-01 16:55:43 +02:00
parent d27f62dca9
commit 3239a2e481
4 changed files with 75 additions and 63 deletions

View File

@ -39,6 +39,9 @@
{% if request.session['not_allowed'] %} {% if request.session['not_allowed'] %}
<p><strong>{% trans %}Not allowed for that product{% endtrans %}</strong></p> <p><strong>{% trans %}Not allowed for that product{% endtrans %}</strong></p>
{% endif %} {% endif %}
{% if request.session['no_age'] %}
<p><strong>{% trans %}No date of birth provided{% endtrans %}</strong></p>
{% endif %}
{% if request.session['not_enough'] %} {% if request.session['not_enough'] %}
<p><strong>{% trans %}Not enough money{% endtrans %}</strong></p> <p><strong>{% trans %}Not enough money{% endtrans %}</strong></p>
{% endif %} {% endif %}

View File

@ -121,9 +121,10 @@ class CounterClick(DetailView):
if 'basket' not in request.session.keys(): # Init the basket session entry if 'basket' not in request.session.keys(): # Init the basket session entry
request.session['basket'] = {} request.session['basket'] = {}
request.session['basket_total'] = 0 request.session['basket_total'] = 0
request.session['not_enough'] = False request.session['not_enough'] = False # Reset every variable
request.session['too_young'] = False request.session['too_young'] = False
request.session['not_allowed'] = False request.session['not_allowed'] = False
request.session['no_age'] = False
self.refill_form = None self.refill_form = None
ret = super(CounterClick, self).get(request, *args, **kwargs) ret = super(CounterClick, self).get(request, *args, **kwargs)
if ((self.object.type != "BAR" and not request.user.is_authenticated()) or if ((self.object.type != "BAR" and not request.user.is_authenticated()) or
@ -144,9 +145,10 @@ class CounterClick(DetailView):
if 'basket' not in request.session.keys(): if 'basket' not in request.session.keys():
request.session['basket'] = {} request.session['basket'] = {}
request.session['basket_total'] = 0 request.session['basket_total'] = 0
request.session['not_enough'] = False request.session['not_enough'] = False # Reset every variable
request.session['too_young'] = False request.session['too_young'] = False
request.session['not_allowed'] = False request.session['not_allowed'] = False
request.session['no_age'] = False
if self.object.type != "BAR": if self.object.type != "BAR":
self.operator = request.user self.operator = request.user
elif self.is_barman_price(): elif self.is_barman_price():
@ -228,7 +230,10 @@ class CounterClick(DetailView):
if self.customer.amount < (total + q*float(price)): # Check for enough money if self.customer.amount < (total + q*float(price)): # Check for enough money
request.session['not_enough'] = True request.session['not_enough'] = True
return False return False
if self.customer.user.get_age() < product.limit_age: # Check if affordable if product.limit_age >= 18 and not self.customer.user.date_of_birth:
request.session['no_age'] = True
return False
if self.customer.user.date_of_birth and self.customer.user.get_age() < product.limit_age: # Check if affordable
request.session['too_young'] = True request.session['too_young'] = True
return False return False
if pid in request.session['basket']: # Add if already in basket if pid in request.session['basket']: # Add if already in basket

Binary file not shown.

View File

@ -6,7 +6,7 @@
msgid "" msgid ""
msgstr "" msgstr ""
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2016-09-01 11:17+0200\n" "POT-Creation-Date: 2016-09-01 16:54+0200\n"
"PO-Revision-Date: 2016-07-18\n" "PO-Revision-Date: 2016-07-18\n"
"Last-Translator: Skia <skia@libskia.so>\n" "Last-Translator: Skia <skia@libskia.so>\n"
"Language-Team: AE info <ae.info@utbm.fr>\n" "Language-Team: AE info <ae.info@utbm.fr>\n"
@ -123,7 +123,7 @@ msgstr "numéro"
msgid "journal" msgid "journal"
msgstr "classeur" msgstr "classeur"
#: accounting/models.py:179 core/models.py:458 core/models.py:734 #: accounting/models.py:179 core/models.py:458 core/models.py:736
#: counter/models.py:203 counter/models.py:246 counter/models.py:296 #: counter/models.py:203 counter/models.py:246 counter/models.py:296
#: eboutic/models.py:15 eboutic/models.py:48 #: eboutic/models.py:15 eboutic/models.py:48
msgid "date" msgid "date"
@ -172,7 +172,7 @@ msgstr "Utilisateur"
msgid "Club" msgid "Club"
msgstr "Club" msgstr "Club"
#: accounting/models.py:190 core/templates/core/user_base.jinja:49 #: accounting/models.py:190 core/templates/core/user_base.jinja:51
msgid "Account" msgid "Account"
msgstr "Compte" msgstr "Compte"
@ -325,7 +325,7 @@ msgstr "Nouveau compte club"
#: accounting/templates/accounting/club_account_details.jinja:53 #: accounting/templates/accounting/club_account_details.jinja:53
#: accounting/templates/accounting/journal_details.jinja:66 #: accounting/templates/accounting/journal_details.jinja:66
#: club/templates/club/club_detail.jinja:8 core/templates/core/file.jinja:38 #: club/templates/club/club_detail.jinja:8 core/templates/core/file.jinja:38
#: core/templates/core/page.jinja:31 core/templates/core/user_base.jinja:31 #: core/templates/core/page.jinja:31 core/templates/core/user_base.jinja:33
#: core/templates/core/user_tools.jinja:33 #: core/templates/core/user_tools.jinja:33
#: counter/templates/counter/counter_list.jinja:20 #: counter/templates/counter/counter_list.jinja:20
#: launderette/templates/launderette/launderette_list.jinja:14 #: launderette/templates/launderette/launderette_list.jinja:14
@ -469,7 +469,7 @@ msgid "Done"
msgstr "Effectué" msgstr "Effectué"
#: accounting/templates/accounting/journal_details.jinja:34 #: accounting/templates/accounting/journal_details.jinja:34
#: counter/views.py:561 #: counter/views.py:566
msgid "Comment" msgid "Comment"
msgstr "Commentaire" msgstr "Commentaire"
@ -934,7 +934,7 @@ msgstr "Montrez vos statistiques de compte aux autres"
msgid "file name" msgid "file name"
msgstr "nom du fichier" msgstr "nom du fichier"
#: core/models.py:450 core/models.py:583 #: core/models.py:450 core/models.py:585
msgid "parent" msgid "parent"
msgstr "parent" msgstr "parent"
@ -946,11 +946,11 @@ msgstr "fichier"
msgid "owner" msgid "owner"
msgstr "propriétaire" msgstr "propriétaire"
#: core/models.py:453 core/models.py:589 #: core/models.py:453 core/models.py:591
msgid "edit group" msgid "edit group"
msgstr "groupe d'édition" msgstr "groupe d'édition"
#: core/models.py:454 core/models.py:590 #: core/models.py:454 core/models.py:592
msgid "view group" msgid "view group"
msgstr "groupe de vue" msgstr "groupe de vue"
@ -966,61 +966,61 @@ msgstr "type mime"
msgid "size" msgid "size"
msgstr "taille" msgstr "taille"
#: core/models.py:487 #: core/models.py:489
msgid "Character '/' not authorized in name" msgid "Character '/' not authorized in name"
msgstr "Le caractère '/' n'est pas autorisé dans les noms de fichier" msgstr "Le caractère '/' n'est pas autorisé dans les noms de fichier"
#: core/models.py:490 core/models.py:495 #: core/models.py:492 core/models.py:497
msgid "Loop in folder tree" msgid "Loop in folder tree"
msgstr "Boucle dans l'arborescence des dossiers" msgstr "Boucle dans l'arborescence des dossiers"
#: core/models.py:499 #: core/models.py:501
msgid "You can not make a file be a children of a non folder file" msgid "You can not make a file be a children of a non folder file"
msgstr "" msgstr ""
"Vous ne pouvez pas mettre un fichier enfant de quelque chose qui n'est pas " "Vous ne pouvez pas mettre un fichier enfant de quelque chose qui n'est pas "
"un dossier" "un dossier"
#: core/models.py:503 #: core/models.py:505
msgid "Duplicate file" msgid "Duplicate file"
msgstr "Un fichier de ce nom existe déjà" msgstr "Un fichier de ce nom existe déjà"
#: core/models.py:513 #: core/models.py:515
msgid "You must provide a file" msgid "You must provide a file"
msgstr "Vous devez fournir un fichier" msgstr "Vous devez fournir un fichier"
#: core/models.py:538 #: core/models.py:540
msgid "Folder: " msgid "Folder: "
msgstr "Dossier : " msgstr "Dossier : "
#: core/models.py:540 #: core/models.py:542
msgid "File: " msgid "File: "
msgstr "Fichier : " msgstr "Fichier : "
#: core/models.py:582 core/models.py:586 #: core/models.py:584 core/models.py:588
msgid "page name" msgid "page name"
msgstr "nom de la page" msgstr "nom de la page"
#: core/models.py:587 #: core/models.py:589
msgid "owner group" msgid "owner group"
msgstr "groupe propriétaire" msgstr "groupe propriétaire"
#: core/models.py:618 #: core/models.py:620
msgid "Duplicate page" msgid "Duplicate page"
msgstr "Une page de ce nom existe déjà" msgstr "Une page de ce nom existe déjà"
#: core/models.py:624 #: core/models.py:626
msgid "Loop in page tree" msgid "Loop in page tree"
msgstr "Boucle dans l'arborescence des pages" msgstr "Boucle dans l'arborescence des pages"
#: core/models.py:731 #: core/models.py:733
msgid "revision" msgid "revision"
msgstr "révision" msgstr "révision"
#: core/models.py:732 #: core/models.py:734
msgid "page title" msgid "page title"
msgstr "titre de la page" msgstr "titre de la page"
#: core/models.py:733 #: core/models.py:735
msgid "page content" msgid "page content"
msgstr "contenu de la page" msgstr "contenu de la page"
@ -1049,7 +1049,7 @@ msgstr "Connexion"
msgid "Register" msgid "Register"
msgstr "S'enregister" msgstr "S'enregister"
#: core/templates/core/base.jinja:25 core/templates/core/user_base.jinja:18 #: core/templates/core/base.jinja:25 core/templates/core/user_base.jinja:19
msgid "Tools" msgid "Tools"
msgstr "Outils" msgstr "Outils"
@ -1127,7 +1127,7 @@ msgstr "Confirmation"
#: core/templates/core/delete_confirm.jinja:14 #: core/templates/core/delete_confirm.jinja:14
#: core/templates/core/file_delete_confirm.jinja:14 #: core/templates/core/file_delete_confirm.jinja:14
#: counter/templates/counter/counter_click.jinja:73 #: counter/templates/counter/counter_click.jinja:76
msgid "Cancel" msgid "Cancel"
msgstr "Annuler" msgstr "Annuler"
@ -1504,11 +1504,11 @@ msgstr "Articles"
msgid "User has no account" msgid "User has no account"
msgstr "L'utilisateur n'a pas de compte" msgstr "L'utilisateur n'a pas de compte"
#: core/templates/core/user_base.jinja:24 #: core/templates/core/user_base.jinja:26
msgid "Stats" msgid "Stats"
msgstr "Stats" msgstr "Stats"
#: core/templates/core/user_base.jinja:39 #: core/templates/core/user_base.jinja:41
#: core/templates/core/user_tools.jinja:14 #: core/templates/core/user_tools.jinja:14
msgid "Groups" msgid "Groups"
msgstr "Groupes" msgstr "Groupes"
@ -1621,7 +1621,7 @@ msgstr "Gestion de Sith"
msgid "Subscriptions" msgid "Subscriptions"
msgstr "Cotisations" msgstr "Cotisations"
#: core/templates/core/user_tools.jinja:22 counter/views.py:476 #: core/templates/core/user_tools.jinja:22 counter/views.py:481
msgid "Counters" msgid "Counters"
msgstr "Comptoirs" msgstr "Comptoirs"
@ -1658,7 +1658,7 @@ msgstr "Ajouter un nouveau dossier"
msgid "Error creating folder %(folder_name)s: %(msg)s" msgid "Error creating folder %(folder_name)s: %(msg)s"
msgstr "Erreur de création du dossier %(folder_name)s : %(msg)s" msgstr "Erreur de création du dossier %(folder_name)s : %(msg)s"
#: core/views/files.py:61 core/views/forms.py:170 core/views/forms.py:174 #: core/views/files.py:61 core/views/forms.py:171 core/views/forms.py:175
#, python-format #, python-format
msgid "Error uploading file %(file_name)s: %(msg)s" msgid "Error uploading file %(file_name)s: %(msg)s"
msgstr "Erreur d'envoie du fichier %(file_name)s : %(msg)s" msgstr "Erreur d'envoie du fichier %(file_name)s : %(msg)s"
@ -1671,11 +1671,11 @@ msgstr "Choisir un fichier"
msgid "Choose user" msgid "Choose user"
msgstr "Choisir un utilisateur" msgstr "Choisir un utilisateur"
#: core/views/forms.py:87 #: core/views/forms.py:88
msgid "Username, email, or account number" msgid "Username, email, or account number"
msgstr "Nom d'utilisateur, email, ou numéro de compte AE" msgstr "Nom d'utilisateur, email, ou numéro de compte AE"
#: core/views/forms.py:129 #: core/views/forms.py:130
msgid "" msgid ""
"Profile: you need to be visible on the picture, in order to be recognized (e." "Profile: you need to be visible on the picture, in order to be recognized (e."
"g. by the barmen)" "g. by the barmen)"
@ -1683,15 +1683,15 @@ msgstr ""
"Photo de profil: vous devez être visible sur la photo afin d'être reconnu " "Photo de profil: vous devez être visible sur la photo afin d'être reconnu "
"(par exemple par les barmen)" "(par exemple par les barmen)"
#: core/views/forms.py:130 #: core/views/forms.py:131
msgid "Avatar: used on the forum" msgid "Avatar: used on the forum"
msgstr "Avatar : utilisé sur le forum" msgstr "Avatar : utilisé sur le forum"
#: core/views/forms.py:131 #: core/views/forms.py:132
msgid "Scrub: let other know how your scrub looks like!" msgid "Scrub: let other know how your scrub looks like!"
msgstr "Blouse : montrez aux autres à quoi ressemble votre blouse !" msgstr "Blouse : montrez aux autres à quoi ressemble votre blouse !"
#: core/views/forms.py:175 #: core/views/forms.py:176
msgid "Bad image format, only jpeg, png, and gif are accepted" msgid "Bad image format, only jpeg, png, and gif are accepted"
msgstr "Mauvais format d'image, seuls les jpeg, png, et gif sont acceptés" msgstr "Mauvais format d'image, seuls les jpeg, png, et gif sont acceptés"
@ -1711,7 +1711,7 @@ msgstr "client"
msgid "customers" msgid "customers"
msgstr "clients" msgstr "clients"
#: counter/models.py:44 counter/templates/counter/counter_click.jinja:43 #: counter/models.py:44 counter/templates/counter/counter_click.jinja:46
msgid "Not enough money" msgid "Not enough money"
msgstr "Solde insuffisant" msgstr "Solde insuffisant"
@ -1877,30 +1877,34 @@ msgstr "Trop jeune pour ce produit"
msgid "Not allowed for that product" msgid "Not allowed for that product"
msgstr "Non autorisé pour ce produit" msgstr "Non autorisé pour ce produit"
#: counter/templates/counter/counter_click.jinja:49 #: counter/templates/counter/counter_click.jinja:43
#: counter/templates/counter/counter_click.jinja:83 msgid "No date of birth provided"
msgstr "Pas de date de naissance renseigné"
#: counter/templates/counter/counter_click.jinja:52
#: counter/templates/counter/counter_click.jinja:86
#: launderette/templates/launderette/launderette_admin.jinja:35 #: launderette/templates/launderette/launderette_admin.jinja:35
#: launderette/templates/launderette/launderette_click.jinja:14 #: launderette/templates/launderette/launderette_click.jinja:14
msgid "Go" msgid "Go"
msgstr "Valider" msgstr "Valider"
#: counter/templates/counter/counter_click.jinja:51 #: counter/templates/counter/counter_click.jinja:54
#: eboutic/templates/eboutic/eboutic_main.jinja:27 #: eboutic/templates/eboutic/eboutic_main.jinja:27
#: eboutic/templates/eboutic/eboutic_makecommand.jinja:11 #: eboutic/templates/eboutic/eboutic_makecommand.jinja:11
msgid "Basket: " msgid "Basket: "
msgstr "Panier : " msgstr "Panier : "
#: counter/templates/counter/counter_click.jinja:64 #: counter/templates/counter/counter_click.jinja:67
#: counter/templates/counter/counter_main.jinja:28 #: counter/templates/counter/counter_main.jinja:28
#: eboutic/templates/eboutic/eboutic_main.jinja:34 #: eboutic/templates/eboutic/eboutic_main.jinja:34
msgid "Total: " msgid "Total: "
msgstr "Total : " msgstr "Total : "
#: counter/templates/counter/counter_click.jinja:68 #: counter/templates/counter/counter_click.jinja:71
msgid "Finish" msgid "Finish"
msgstr "Terminer" msgstr "Terminer"
#: counter/templates/counter/counter_click.jinja:77 #: counter/templates/counter/counter_click.jinja:80
msgid "Refilling" msgid "Refilling"
msgstr "Rechargement" msgstr "Rechargement"
@ -2002,77 +2006,77 @@ msgstr "Mauvais identifiants"
msgid "User is not subscriber" msgid "User is not subscriber"
msgstr "L'utilisateur n'est pas cotisant." msgstr "L'utilisateur n'est pas cotisant."
#: counter/views.py:260 #: counter/views.py:265
msgid "END" msgid "END"
msgstr "FIN" msgstr "FIN"
#: counter/views.py:262 #: counter/views.py:267
msgid "CAN" msgid "CAN"
msgstr "ANN" msgstr "ANN"
#: counter/views.py:292 #: counter/views.py:297
msgid "You have not enough money to buy all the basket" msgid "You have not enough money to buy all the basket"
msgstr "Vous n'avez pas assez d'argent pour acheter le panier" msgstr "Vous n'avez pas assez d'argent pour acheter le panier"
#: counter/views.py:473 #: counter/views.py:478
msgid "Parent product" msgid "Parent product"
msgstr "Produit parent" msgstr "Produit parent"
#: counter/views.py:474 #: counter/views.py:479
msgid "Buying groups" msgid "Buying groups"
msgstr "Groupes d'achat" msgstr "Groupes d'achat"
#: counter/views.py:541 #: counter/views.py:546
msgid "10 cents" msgid "10 cents"
msgstr "10 centimes" msgstr "10 centimes"
#: counter/views.py:542 #: counter/views.py:547
msgid "20 cents" msgid "20 cents"
msgstr "20 centimes" msgstr "20 centimes"
#: counter/views.py:543 #: counter/views.py:548
msgid "50 cents" msgid "50 cents"
msgstr "50 centimes" msgstr "50 centimes"
#: counter/views.py:544 #: counter/views.py:549
msgid "1 euro" msgid "1 euro"
msgstr "1 €" msgstr "1 €"
#: counter/views.py:545 #: counter/views.py:550
msgid "2 euros" msgid "2 euros"
msgstr "2 €" msgstr "2 €"
#: counter/views.py:546 #: counter/views.py:551
msgid "5 euros" msgid "5 euros"
msgstr "5 €" msgstr "5 €"
#: counter/views.py:547 #: counter/views.py:552
msgid "10 euros" msgid "10 euros"
msgstr "10 €" msgstr "10 €"
#: counter/views.py:548 #: counter/views.py:553
msgid "20 euros" msgid "20 euros"
msgstr "20 €" msgstr "20 €"
#: counter/views.py:549 #: counter/views.py:554
msgid "50 euros" msgid "50 euros"
msgstr "50 €" msgstr "50 €"
#: counter/views.py:550 #: counter/views.py:555
msgid "100 euros" msgid "100 euros"
msgstr "100 €" msgstr "100 €"
#: counter/views.py:551 counter/views.py:553 counter/views.py:555 #: counter/views.py:556 counter/views.py:558 counter/views.py:560
#: counter/views.py:557 counter/views.py:559 #: counter/views.py:562 counter/views.py:564
msgid "Check amount" msgid "Check amount"
msgstr "Montant du chèque" msgstr "Montant du chèque"
#: counter/views.py:552 counter/views.py:554 counter/views.py:556 #: counter/views.py:557 counter/views.py:559 counter/views.py:561
#: counter/views.py:558 counter/views.py:560 #: counter/views.py:563 counter/views.py:565
msgid "Check quantity" msgid "Check quantity"
msgstr "Nombre de chèque" msgstr "Nombre de chèque"
#: counter/views.py:562 #: counter/views.py:567
msgid "Emptied" msgid "Emptied"
msgstr "Coffre vidé" msgstr "Coffre vidé"