Commit graph

531 commits

Author SHA1 Message Date
Aurélien Delobelle
57a2af285a bda -- Add name to bda url 2019-01-05 15:27:05 +01:00
Ludovic Stephan
66104e1137 Black 2018-12-08 10:41:46 +01:00
Ludovic Stephan
15ab316909 Merge branch 'master' into Aufinal/prettify-revente 2018-12-08 10:40:10 +01:00
Ludovic Stephan
6be42d57ca Prettify revente/shotgun 2018-12-07 17:35:53 +01:00
Ludovic Stephan
5c8164dd3b Prettify revente/tirages 2018-12-07 17:35:40 +01:00
Ludovic Stephan
625825cf3f Améliore TemplateLabelField
- Rajouter une option pour `option_template_name` et `context_object_name` dans la classe, et documente mieux. Répercute ces changements dans `InscriptionReventeForm`.
2018-12-07 17:33:17 +01:00
Basile Clement
2e08951d44 Améliore l'ergonomie de cof_required et buro_required
Ce patch rend les décorateurs `cof_required` et `buro_required` plus
agréables pour les utilisateurs; en particulier, ils ne font plus une
redirection sur la page de connexion si la condition n'est pas remplie.

Dans les deux cas :

 - Si l'utilisateur n'est pas connecté, il est renvoyé sur la page de
   connexion

 - Si l'utilisateur est connecté mais pas membre du COF/du Burô, une
   page d'erreur "403 Forbidden" est affichée.  Dans le cas de
   `cof_required` cette page demande à l'utilisateur de s'inscrire au
   COF; dans le cas `buro_required` elle indique simplement que la page
   est réservée au Burô.

gestioncof/
 * gestioncof/templates/buro-denied.html:  Ajouté.
 * decorators.py:

bda/
 * tests/test_views.py:
       Modifié pour correctement gérer le nouveau fonctionnement des
       décorateurs.
2018-11-25 18:11:23 +01:00
Ludovic Stephan
dbd017f680 Prettify revente/subscribe 2018-11-21 19:47:20 +01:00
Robin Champenois
6524f89ebd Merge branch 'Elarnon/bda_tirage_message_d_erreur_quand_il_y_a_une_erreur' into 'master'
Affiche un message d'erreur lors de l'enregistrement des voeux BDA

See merge request klub-dev-ens/gestioCOF!330
2018-11-12 23:22:38 +01:00
Basile Clement
7f2f25cb71 Isort 2018-11-12 23:04:37 +01:00
Basile Clement
042ce80b78 Run black 2018-11-12 22:52:20 +01:00
Basile Clement
d7f4d32c92 Oh mon dieu! 2018-11-12 22:46:02 +01:00
Basile Clement
b80927efa3 Message d'erreur qui ne parle pas de object Voeu 2018-11-12 22:44:09 +01:00
Basile Clement
511981e762 Simplifie la Logique 2018-11-12 22:22:49 +01:00
Basile Clement
e09fa2b847 Affiche un message d'erreur lors de l'enregistrement des voeux BDA
Voir #203
2018-11-12 22:16:43 +01:00
Basile Clement
7124821f7c Permet la suppression d'un voeu ajouté mais non enregistré
Voir #203.  Cette solution est horrible, tout comme le code dans
lequel elle se trouve.  Déso pas déso.
2018-11-12 21:56:40 +01:00
Aurélien Delobelle
49a74e8e1e Merge branch 'Kerl/syncmails' into 'master'
Utilisation de la command `syncmails` du package custommail

See merge request cof-geek/gestioCOF!323
2018-10-21 14:22:59 +02:00
Martin Pépin
9da9649a45 Use the syncmail command as defined in custommail 2018-10-07 00:55:54 +02:00
Martin Pépin
1f350d60dd Merge branch 'master' into Aufinal/annul_reventes 2018-10-07 00:34:36 +02:00
Aurélien Delobelle
aac9b41442 bda.tests -- Silence syncmails in setup 2018-10-06 17:39:52 +02:00
Aurélien Delobelle
402b544393 core -- Fix flake8 errors 2018-10-06 13:15:33 +02:00
Aurélien Delobelle
fdd2b35289 core -- Apply black + isort to all files 2018-10-06 13:15:33 +02:00
Aurélien Delobelle
6858df02be bda.tests -- Use urllib urlencode 2018-09-30 13:22:22 +02:00
Aurélien Delobelle
3eb939928f Merge branch 'master' into Kerl/tests 2018-09-30 13:08:58 +02:00
Ludovic Stephan
12ae10f2c4 Fix le transfert des reventes
Il y avait une typo qui causait une erreur quand on voulait transférer
une revente.
2018-05-30 10:13:37 +02:00
Martin Pépin
2a9125ffaa resolve migration conflict 2018-05-24 21:23:46 +02:00
Martin Pépin
483f192af3 Merge branch 'Production' 2018-05-24 21:23:01 +02:00
Martin Pépin
ea737dab29 Merge branch 'Kerl/drop_py2_compat' of git.eleves.ens.fr:cof-geek/gestioCOF into Kerl/drop_py2_compat 2018-04-16 14:18:21 +02:00
Martin Pépin
a73736bf41 Merge branch 'master' into Kerl/drop_py2_compat 2018-04-16 14:12:36 +02:00
Ludovic Stephan
fc37c5a8a0 Annulation des reventes
- On peut annuler des reventes à tout point du processus
- Le formulaire d'annulation donne plus d'informations
2018-04-13 10:54:45 +02:00
Martin Pépin
6168045c3a bda: swap double/autoquit descriptions 2018-04-09 22:43:25 +02:00
Martin Pépin
87a6722143 Merge branch 'master' into Aufinal/bda_fixes 2018-04-07 14:46:07 +02:00
Martin Pépin
623047dca2 Fix old-style reversal of calendar urls 2018-04-06 11:11:02 +02:00
Martin Pepin
307c48ca76 Merge branch 'elarnon/fix-182' into 'master'
Properly propagate the default number of places in tirage

Closes #182

See merge request cof-geek/gestioCOF!295
2018-02-20 14:40:20 +01:00
Basile Clement
6ecc9a54b3 Properly propagate the default number of places in tirage
Fixes #182.
2018-02-11 19:24:01 +01:00
Basile Clement
3314670cab Various fixes for Django 1.11
- The {% cycle %} command was used non-quoted arguments separated by
   commas, while it is supposed to use quoted arguments separated by
   spaces (I'm actually not sure how that ever worked :)

 - django-bootstrap-form was at version 3.2.1 which is not compatible
   with Django 1.11 (but also required by GestioCOF). I upgraded it to
   version 3.3.
2018-02-11 19:09:07 +01:00
Martin Pépin
d57c75d2a0 Minor simplificatons after code review 2018-02-05 22:36:08 +01:00
Aurélien Delobelle
42e762bc4a Py3 allows to shorten super() 2018-01-16 16:50:27 +01:00
Martin Pépin
79fccc136a Merge branch 'master' into Kerl/tests 2018-01-10 20:21:38 +01:00
Ludovic Stephan
52fd49616d Fix model test 2018-01-10 20:14:27 +01:00
Martin Pépin
5a5b60ec4d Merge branch 'master' into Kerl/drop_py2_compat 2018-01-10 20:12:59 +01:00
Ludovic Stephan
501d592d2f Merge branch 'master' into Aufinal/bda_fixes 2018-01-10 20:00:34 +01:00
Martin Pepin
771b642a98 Merge branch 'aureplop/revente-reply_to' into 'master'
bda -- Set winner's email as Reply-to of the email…

Closes #179

See merge request !276
2018-01-07 16:03:20 +01:00
Martin Pépin
5086128f16 Fix ill-formed url in tests 2018-01-07 14:45:04 +01:00
Martin Pépin
c80e63415b Load custommails before bda tests 2018-01-07 14:30:33 +01:00
Martin Pépin
e9b901337e A few tests for BdA views 2018-01-07 13:35:23 +01:00
Martin Pépin
57411ab46f Remove __future__ imports 2018-01-06 16:10:13 +01:00
Martin Pépin
475f1adec5 Remove "coding: utf8" line 2018-01-06 16:10:13 +01:00
Ludovic Stephan
9a8773978c Use new method in admin 2017-12-19 12:50:20 +01:00
Ludovic Stephan
1783196a9c Management view only deals with Revente objects
Except for Revente creation, every form is now handled with revente
objects, to use the display option in the previous commit.
2017-12-19 12:41:50 +01:00
Ludovic Stephan
f1bbade002 Better labels for revente objects
The label for the ReventeModelMultipleChoiceField now depends on a
`own` parameter, which determines if we display the seller or the
buyer's name.
2017-12-19 12:40:50 +01:00
Ludovic Stephan
dfa8c1a1a1 Merge branch 'Aufinal/bda_fixes' of git.eleves.ens.fr:cof-geek/gestioCOF into Aufinal/bda_fixes 2017-12-19 11:54:07 +01:00
Ludovic Stephan
212528011a Add some tests 2017-12-19 11:40:02 +01:00
Aurélien Delobelle
241c77e3b4 bda -- Set winner's email as Reply-to of the email…
…sent to the seller when a resale has been assigned.

Fixes #179.
2017-11-24 06:58:33 +01:00
Aurélien Delobelle
b0b0542407 Upgrade to Django 1.11
- Deprecation warnings using Django 1.8 are resolved.
- Deprecation warnings using Django 1.11 are resolved.

- Admin: grappelli is no longer used.
- Upgrade to django-autocomplete-light v3 (v2 is not 1.11 compatible).
  * autocomplete.modelform_factory being dropped, code uses dal Select2
    views and widgets.
2017-11-19 18:41:39 +01:00
Martin Pépin
91bdf11852 Coding style: python's scope sucks 2017-11-01 17:29:38 +01:00
Martin Pépin
f18959c0a1 BdA-Revente: meaningful names, some help tests 2017-11-01 17:26:40 +01:00
Martin Pépin
e1794a654f Merge branch 'master' into Aufinal/bda_fixes 2017-11-01 11:25:52 +01:00
Martin Pépin
273e6374ef Pluralization in bda -> participant list 2017-11-01 11:09:35 +01:00
Ludovic Stephan
785555c05c Misc fixes 2017-10-26 12:40:11 +02:00
Aurélien Delobelle
8cdb4c62fc Merge branch 'master' into test/views 2017-10-24 16:45:26 +02:00
Ludovic Stephan
6a6549e0d7 Add notif time
In case of a gestioCOF bug, we keep the notification time in memory to
still do the drawing 1-3 days after.
2017-10-23 20:55:01 +02:00
Ludovic Stephan
684603709e Class attributes and properties + more verbose log
SpectacleRevente gets brand new properties and attributes to simplify
code ; also, manage_reventes command output is more verbose
2017-10-23 20:30:34 +02:00
Ludovic Stephan
919bcd197d Small code QoL improvements 2017-10-23 18:59:30 +02:00
Ludovic Stephan
e74dbb11f1 Organize revente files and function names 2017-10-23 18:39:45 +02:00
Ludovic Stephan
732e47707e Add unsubscribe option + list of current draws 2017-10-23 17:25:58 +02:00
Aurélien Delobelle
46187659ed Fix tirage pk conflicts with postgres 2017-10-17 14:42:39 +02:00
Martin Pépin
b73faa3b84 Merge branch 'master' into Production 2017-09-25 18:40:00 +02:00
Aurélien Delobelle
d18fb86a98 Fix attribution inlines of participant in admin 2017-09-25 18:26:54 +02:00
Martin Pépin
db512a97f6 In /admin: displays "given" when it's relevant 2017-09-25 14:22:46 +02:00
Martin Pépin
d89ba1efe5 Fix catalogue behaviour if id=0 2017-09-20 18:21:59 +02:00
Martin Pépin
80f6a808dc Simplify the mails-rappel view 2017-06-18 17:03:50 +01:00
Martin Pépin
69aee6b8ac Move bda.get_generic_user + optimize send_rappels 2017-06-18 16:52:53 +01:00
Martin Pépin
5c11893059 Add a link to the "bda-rappel" mail edition page 2017-06-02 19:33:23 +01:00
Martin Pépin
4fce1e8afc typo 2017-06-02 19:14:10 +01:00
Martin Pépin
ffb777a4cd Test the "participants" views 2017-06-02 19:14:10 +01:00
Martin Pépin
76c75d5ccd Move bda-participant template -> bda/ folder 2017-06-02 19:14:10 +01:00
Martin Pépin
fbdfdeef46 Add a link to the reminder emails sending page 2017-06-02 19:14:09 +01:00
Martin Pépin
31c034a96a send_rappel: use django messages + css tweaks 2017-06-02 19:14:06 +01:00
Martin Pépin
2a3614540f minor PEP8 changes 2017-06-02 17:32:23 +01:00
Martin Pépin
0e03fc85ee The BdA receives the reminder emails 2017-06-02 17:25:04 +01:00
Aurélien Delobelle
6cdb791989 fix class name conflicts 2017-05-10 12:39:56 +02:00
Aurélien Delobelle
0d8a613f28 improve bda inscription form/view code 2017-04-21 18:22:53 +02:00
Aurélien Delobelle
ce70269e7b Fewer requests on create/update spectaclerevente in bda admin.
- O(#participant) -> O(1) requests
2017-04-08 17:50:36 +02:00
Aurélien Delobelle
0750551d7c Fewer requests on participant admin create and updateviews.
- Fewer requests on choicesreventes and tabular inlines (of
  attributions)
- User and tirage cannot be updated if updating a participant instance.
- Tabular inlines are fixed:
  - the one which is used for spectacles with listing only propose
    choices in spectacle with listing
  - same with the other (spectacles without listing)
- Still does too much request (because of tabularinlines)
2017-04-08 17:16:33 +02:00
Aurélien Delobelle
6451f971bd AttributionForm in bda admin
- New attribution form issue less queries
- Spectacle and Participant are readonly if updating an attribution.

ReadOnlyMixin allows to set readonly fields only while updating an
object.
2017-04-08 16:11:42 +02:00
Aurélien Delobelle
bbe6f41962 Fewer requests on descriptions and catalogue views 2017-04-08 13:44:21 +02:00
Aurélien Delobelle
98f355ed20 Fewer requests on unpaid view 2017-04-08 13:08:53 +02:00
Aurélien Delobelle
15d2faf8e1 Fewer requests on spectacles and participants list views 2017-04-08 13:01:05 +02:00
Aurélien Delobelle
93a3a9af2c Fewer requests with shotgunable reventes
bda.views.revente_shotgun:
- 2 requests instead of ~#spectacles requests
2017-04-08 12:53:37 +02:00
Aurélien Delobelle
fdc1128bd5 delete useless save 2017-04-08 12:12:56 +02:00
Aurélien Delobelle
3556e3b1b0 Fewer requests on bda.views.revente 2017-04-08 12:10:23 +02:00
Aurélien Delobelle
d31101aff3 Empty SpectacleRevente and ChoixRevente before do_tirage.
- Usefull if a tirage is launched more than once.
- Ensure full reset of reventes for this tirage in this case.
2017-04-07 17:04:06 +02:00
Aurélien Delobelle
9f307c1bd0 Fewer db requests on bda tirage.
bda.algorithm
- use iterator to find max_groups, instead of a db request

bda.views.do_tirage
- select_related() are now focused on some relationships (they were
  taking useless relationships)
- bda-revente filling takes 1 request (each save and add was issuing
  1 request)
2017-04-07 16:22:10 +02:00
Aurélien Delobelle
3e0bd2e758 Fewer db requests on bda views.
bda.views.etat_places
- Use select_related on spectacles_set,  avoid query issue for each spectacle.
- `slots__sum` is computed in view, instead of a query.
- Cleaner code (and avoid useless computations).

bda.views.places
- Add select_related on places, avoid query issue for each spectacle.

bda.views.inscription
- 1 query for spectacle field choices, instead of (#forms in formset *
  #spectacles)
- Delete BaseBdaFormSet. The validation was redundant with
  `unique_together` of ChoixSpectacle model.
2017-04-07 13:25:50 +02:00
Martin Pépin
981759f5ce Adds tests covering the bda-catalogue JSON API 2017-04-05 21:02:00 +01:00
Martin Pépin
9ec151e040 A query optimization in bda.views.catalogue
We only need to fetch shows identifiers here:

    FOO.filter(BAR__in=shows)

which can be done using the `values_list` method
2017-04-05 20:48:18 +01:00
Martin Pépin
ff9cee5ffc line too long in bda.models 2017-04-05 20:42:50 +01:00
Martin Pépin
853a239e6e Rewrite bda.views.catalogue
- No string concatenations
- Use `get_object_or_404` instead of performing a `.get` and catching
  the eventual exception.
- More accurate error messages when a bad request is detected.
- More accurate error handling
2017-04-05 19:53:04 +01:00
Martin Pépin
a262983170 PEP8 compliance in bda.views 2017-04-04 23:51:22 +01:00