Commit graph

969 commits

Author SHA1 Message Date
Martin Pépin
5d22a4cac4
Rend kfetloaddevdata idempotent
Problème :

Le script assigne des trigrammes 001, 002, 003, etc aux comptes COF des
Gaulois et des Romains en utilisant l'ordre du queryset
CofProfile.objects.all().
L'ordre des comptes dans le queryset n'est pas spécifié et peut varier
d'une exécution à l'autre, ça pose problème dans la suite :

Account.objects.get_or_create(trigramme=trigramme, cofprofile=profile)

Cette command essaie de créer un nouveau trigramme pour certains comptes
quand l'ordre change.

Solution :

Ordonner le queryset.
2020-12-04 12:44:09 +01:00
Martin Pepin
57901c0013 Merge branch 'Aufinal/stat_2' into 'master'
Repassage sur les stats

Closes #246 and #255

See merge request klub-dev-ens/gestioCOF!462
2020-09-22 21:06:46 +02:00
Tom Hubrecht
d0b7000747 Empêche la modification des informations COF lors de la création d'un compte K-Psul 2020-09-19 19:14:44 +02:00
Martin Pepin
84ff0d7182 Merge branch 'Aufinal/history_form' into 'master'
On utilise un vrai formulaire pour l'historique

Closes #242

See merge request klub-dev-ens/gestioCOF!461
2020-09-17 21:04:42 +02:00
Ludovic Stephan
d965050563 Fix tests again 2020-09-16 19:31:10 +02:00
Ludovic Stephan
a14c9d9574 Fix tests 2020-09-16 19:19:29 +02:00
Ludovic Stephan
8f9c94fe10 Plein de nettoyage partout 2020-09-16 17:16:49 +02:00
Ludovic Stephan
46f447ec5d Formulaires pour nettoyage 2020-09-16 17:16:14 +02:00
Ludovic Stephan
aa955a06ef Fin des adaptations 2020-09-15 20:05:54 +02:00
Ludovic Stephan
a9eb32217f Adapte history.js pour serialize() 2020-09-15 20:05:32 +02:00
Ludovic Stephan
c7998f56f0 Datetimepicker tweaks 2020-09-15 20:05:06 +02:00
Ludovic Stephan
a6e58dcd68 On utilise le render par défaut 2020-09-15 20:04:35 +02:00
Ludovic Stephan
49591fa67e Use form to clean data 2020-09-15 20:03:37 +02:00
Ludovic Stephan
9f9724b1d1 Arrow function works now 2020-09-15 19:57:27 +02:00
Ludovic Stephan
205dc93f4b FilterHistoryForm est un formulaire décent 2020-09-15 19:40:45 +02:00
Ludovic Stephan
43a2f8db53 Use arrow functions everywhere for consistency 2020-09-15 16:44:32 +02:00
Ludovic Stephan
ba4cc01ed4 Fix formatting 2020-09-15 16:37:41 +02:00
Ludovic Stephan
11d94ecba8 Fix this shenanigans 2020-09-15 16:34:19 +02:00
Martin Pepin
ba6ddfc516 Merge branch 'Aufinal/kfet-auth' into 'master'
Groupes et perms K-Fêt

See merge request klub-dev-ens/gestioCOF!438
2020-09-07 20:09:19 +02:00
Ludovic Stephan
c5d7eb9d30 Move permission handling to loadkfetdevdata 2020-09-07 14:57:41 +02:00
Ludovic Stephan
d3185f25c3 Black 2020-09-07 14:57:41 +02:00
Ludovic Stephan
007b5006d4 Use convenience imports 2020-09-07 14:57:41 +02:00
Ludovic Stephan
2d36c85085 Fix dev data 2020-09-07 14:57:41 +02:00
Ludovic Stephan
d6fa738a25 Fix tests 2020-09-07 14:57:41 +02:00
Ludovic Stephan
c145191e55 Use new models and mixins 2020-09-07 14:57:41 +02:00
Ludovic Stephan
91852bd4a0 Template fixes 2020-09-07 14:57:41 +02:00
Ludovic Stephan
e92d50593c New models 2020-09-07 14:57:41 +02:00
Martin Pépin
3da0a613f7
K-Fêt autocompletion shows the 'new user' link 2020-09-07 11:32:28 +02:00
Martin Pépin
dcd592ed11
Fix 100 tests wrt. 754a0b70e (big url changes) 2020-09-02 20:28:19 +02:00
Ludovic Stephan
da40ed1d8c Migration 2020-09-01 15:27:28 +02:00
Ludovic Stephan
46893a8df5 Min chars for autocompletion 2020-08-28 18:45:07 +02:00
Ludovic Stephan
0875ef1278 Black v20 2020-08-28 18:00:54 +02:00
Martin Pépin
be064262da
Fix kfet autocompletion hightlighting 2020-07-18 16:24:07 +02:00
Martin Pépin
9ac030fd16
Instantiate the Compose classes in their own file 2020-07-18 16:07:12 +02:00
Martin Pépin
e7517195cd
Generic autocompletion view 2020-07-18 16:07:12 +02:00
Martin Pépin
9a90f19502
Separate the autocompletion logic form the views 2020-07-05 11:15:50 +02:00
Martin Pépin
e9f00b4f06
Update the isort config for version 5.* 2020-07-04 13:40:32 +02:00
Martin Pépin
c7ca96bce5
Autocompletion: new de-duplication mechanism 2020-07-04 13:06:24 +02:00
Martin Pépin
c5adc6b7d8
Use the new shared autocomplete framework in kfet/ 2020-06-20 19:28:48 +02:00
Ludovic Stephan
61e4ad9741 Better docstring 2020-05-08 11:14:32 +02:00
Ludovic Stephan
c9dad9465a Fix tests 2020-05-08 11:14:32 +02:00
Ludovic Stephan
f10d6d1a71 Bugfix
Quand un article n'a pas de conso, il a été créé il y a 1s
2020-05-08 11:14:32 +02:00
Ludovic Stephan
97cb9d1f3b Rework stats_manifest
On change la façon dont les vues gèrent l'interface avec `Scale`.
Side effect : on peut avoir l'historique sur tout le temps
2020-05-08 11:14:32 +02:00
Ludovic Stephan
c66fb7eb6f Simplify statistic.js
On supprime des fonctions inutiles, on lint, et on simplifie 2-3 options
inutilisées.
2020-05-08 11:14:32 +02:00
Ludovic Stephan
48ad5cd1c7 Misc cleanup
On utilise SingleObjectMixin partout, et on simplifie 2-3 trucs
2020-05-08 11:14:32 +02:00
Ludovic Stephan
ef35f45ad2 Fusionne deux fonctions chunkify
On rajoute de l'agrégation optionnelle dans la fonction.
2020-05-08 11:14:32 +02:00
Ludovic Stephan
26bcd729bb Supprime le code mort ou redondant 2020-05-08 11:14:32 +02:00
Ludovic Stephan
78ad4402b0 Plus de timezones 2020-05-08 11:14:32 +02:00
Ludovic Stephan
6767ba8e8c Rajoute de la doc partout 2020-05-08 11:14:32 +02:00
Martin Pepin
3b2251a1d6 Merge branch 'Aufinal/editable_accounts' into 'master'
Harmonise les comptes non-lisibles ou éditables

Closes #234

See merge request klub-dev-ens/gestioCOF!412
2020-05-07 18:07:07 +02:00
Ludovic Stephan
6362740a77 Fix: history.html marche (à peu près) correctement 2020-04-23 18:11:23 +02:00
Ludovic Stephan
9eebc7fb22 Fix: les transferts apparaissent dans l'historique perso 2020-04-23 18:11:23 +02:00
Ludovic Stephan
2aa06d2954 Simplify transfer view 2020-04-23 18:11:23 +02:00
Ludovic Stephan
931b2c4e1f Refactor js code
Harmonize history denominations
* opegroups/transfergroups -> groups
* opes/transfers -> entries
* snake/camel case -> snake case
2020-04-23 18:11:23 +02:00
Ludovic Stephan
b450cb09e6 Petit refactor 2020-04-23 18:11:23 +02:00
Ludovic Stephan
8d11044610 Fix: pas d'erreur quand pas de compte K-Fêt 2020-04-23 18:11:23 +02:00
Ludovic Stephan
786c8f132f Fix: tests cassés par commit précédent 2020-04-23 18:11:23 +02:00
Ludovic Stephan
677ba5b92e Fix : le ws K-Psul remarche 2020-04-23 18:11:23 +02:00
Ludovic Stephan
fb4455af39 Fix tests 3 2020-04-23 18:11:23 +02:00
Ludovic Stephan
7438445110 Last tweaks 2020-04-23 18:11:23 +02:00
Ludovic Stephan
f7ce2edd87 Plug new history in templates 2020-04-23 18:11:23 +02:00
Ludovic Stephan
0221221d53 On renvoie les promesses 2020-04-23 18:11:23 +02:00
Ludovic Stephan
49ef8b3c15 Pas besoin de ws pour les suppressions 2020-04-23 18:11:23 +02:00
Ludovic Stephan
550a073d51 Fix tests again 2020-04-23 18:11:23 +02:00
Ludovic Stephan
af0de33d4c Suppression des opérations et des transferts 2020-04-23 18:11:23 +02:00
Ludovic Stephan
c95e1818b2 Fix ws tests 2020-04-23 18:11:23 +02:00
Ludovic Stephan
41ad2a15ac Update websocket data 2020-04-23 18:11:23 +02:00
Ludovic Stephan
36d6a4a1cd Déplace la logique de l'historique dans history.js
On change le lock en `window.lock` pour y avoir accès partout
2020-04-23 18:11:23 +02:00
Ludovic Stephan
9b2c4c1f98 Change l'affichage de la date dans l'historique
Fixes #233
2020-04-23 18:11:23 +02:00
Ludovic Stephan
c3b5de336a Gère l'affichage des transferts dans l'historique 2020-04-23 18:11:23 +02:00
Ludovic Stephan
bf117ec070 Renvoie les transferts dans l'historique 2020-04-23 18:11:23 +02:00
Ludovic Stephan
a3b0ea9b8d Fetch transfers in history_json 2020-04-23 18:11:23 +02:00
Ludovic Stephan
137dd655d1 Harmonise les comptes non-lisibles ou éditables 2020-03-11 22:30:47 +01:00
Ludovic Stephan
7a828760b3 Répercute les changements en prod 2020-02-08 10:47:55 +01:00
Ludovic Stephan
bc90de76b6 Fix l'affichage des UKF 2020-01-18 17:01:07 +01:00
Ludovic Stephan
4d3531c2cb Fix special chars in trigramme 2020-01-16 23:20:18 +01:00
Ludovic Stephan
87e3795c76 Ajout d'un nouveau transfert si formulaire rempli 2020-01-04 15:31:14 +01:00
Martin Pépin
a1a2aac1f3
K-Fêt: new year, no valid promo… 2020-01-03 17:33:27 +01:00
Martin Pépin
1f945d1af3
Avoid using get_by_natural_key 2019-12-24 17:14:45 +01:00
Martin Pépin
64c792b11f
Disambiguation in kfet's permission handling
In some places we used to refer to permissions based on their codename
only (the part after the dot "." in the following examples) which can be
ambiguous. Typically, we might define permissions like "bds.is_team" or
"cof.is_team" in the near future ;)
2019-12-24 17:14:45 +01:00
Ludovic Stephan
2df4e931d4 Remove log 2019-12-18 21:15:40 +01:00
Antonin Reitz
e97c873b4f Merge branch 'Aufinal/backbone' into 'master'
Refactor le JS de K-Psul via Backbone : 1ère étape

See merge request klub-dev-ens/gestioCOF!388
2019-12-11 23:19:44 +01:00
Antonin Reitz
f151ad75c6 For the sake of clarity 2019-12-11 23:05:39 +01:00
Martin Pepin
71e3c210f2 Merge branch 'Aufinal/forgotten_decorators' into 'master'
Rajoute les décorateurs oubliés pour l'auth par mdp

See merge request klub-dev-ens/gestioCOF!389
2019-12-11 19:10:19 +01:00
Ludovic Stephan
a4fdb578bc Add forgotten kfet_password decorators 2019-12-02 20:44:25 +01:00
Martin Pepin
c6c4814519 Merge branch 'Aufinal/fix-stats-escape' into 'master'
Fix la page de stats pour certains comptes avec des caractères spéciaux

See merge request klub-dev-ens/gestioCOF!382
2019-12-01 11:22:36 +01:00
Ludovic Stephan
85aa56d030 Fix tests 2019-11-29 15:33:03 +01:00
Ludovic Stephan
361ad46be4 First steps in Account logic 2019-11-29 14:51:54 +01:00
Ludovic Stephan
091208b66c Make kfet.account.read.json accessible with GET 2019-11-29 14:47:12 +01:00
Ludovic Stephan
7df8a9ef6b Add vendor library and their sources 2019-11-28 18:26:39 +01:00
Martin Pepin
797f0356f6 Merge branch 'Aufinal/no_reduction_category' into 'master'
Permet d'exclure des catégories de la réduction COF

See merge request klub-dev-ens/gestioCOF!386
2019-11-28 14:30:54 +01:00
Ludovic Stephan
1115960107 Add unit test 2019-11-27 16:57:48 +01:00
Martin Pépin
61efded673
Remove unused references to multiple-select.* 2019-11-27 15:46:50 +01:00
Ludovic Stephan
38aecdd741 Typo 2019-11-27 14:41:20 +01:00
Martin Pépin
e0ffee295d
Fix static urls for multiple-select 2019-11-27 14:30:24 +01:00
Ludovic Stephan
e62756ed29 Fix tests 2019-11-27 14:20:24 +01:00
Ludovic Stephan
ac3bfbe368 Display in kfet js 2019-11-27 14:14:42 +01:00
Ludovic Stephan
affdf43e0b Add logic in views and templates 2019-11-27 14:14:33 +01:00
Ludovic Stephan
20ceec0e64 Add has_reduction property 2019-11-27 14:11:53 +01:00
Antonin Reitz
b90e749a7f Fix typo and hence cash transaction cancel 2019-11-27 10:50:27 +01:00
Ludovic Stephan
d04b79bcb5 Disable autoescape in js code 2019-11-25 10:48:43 +01:00
Martin Pépin
481cb5e478
Move production deps out of requirements.txt 2019-11-22 22:18:04 +08:00
Martin Pépin
a3ca2e66bf
Fix some dependency issue with wagtail 2019-11-22 22:18:04 +08:00
Ludovic Stephan
ea45eb1f55 Fix tests 2019-11-21 01:21:26 +01:00
Ludovic Stephan
a60df91b04 Add decorator to needed views 2019-11-21 01:21:26 +01:00
Ludovic Stephan
c1a99453d5 Add password auth decorator 2019-11-21 01:21:26 +01:00
Ludovic Stephan
be5218f7e1 Remove pesky middleware 2019-11-21 01:21:26 +01:00
Martin Pepin
f9cde30e08 Merge branch 'Aufinal/fix_missing_names' into 'master'
Fix le problème des prénoms manquants

See merge request klub-dev-ens/gestioCOF!378
2019-11-04 15:39:35 +01:00
Ludovic Stephan
b376114bee Fix tests 2019-11-03 00:36:57 +01:00
Ludovic Stephan
57088cda03 Fix le problème des prénoms manquants
Depuis !360, quand on modifie son propre compte K-Fêt, cela supprime les
noms associés sur gestioCOF... Le problème est réglé, normalement.
2019-11-03 00:02:34 +01:00
Ludovic Stephan
b22a77e603 Fix account history 2019-10-19 10:33:15 +02:00
Ludovic Stephan
337453c6c6 Add source for bootstrap-datetimepicker 2019-10-16 20:50:59 +02:00
Ludovic Stephan
8ea0cb84d1 Move source files (not minified) to src/ directory 2019-10-16 20:27:57 +02:00
Ludovic Stephan
f8e954ff79 Range les fichiers statiques K-Fêt
Les fichiers JS et CSS externes sont dans `static/kfet/vendor`, minifiés ; on bump la version de `reconnecting-websocket`.
2019-10-16 20:27:57 +02:00
Ludovic Stephan
435bb392ea Déplace une fonction js 2019-10-16 20:27:57 +02:00
Ludovic Stephan
de10392a7f Supprime des dossiers inutiles
Pas besoin de 12 sous-dossiers pour `autocomplete-light`.
2019-10-16 20:27:57 +02:00
Ludovic Stephan
abb3823a8b Interaction Moment.js + Chart.js
On avait pas besoin de servir `Chart.bundle.js` puisqu'on avait déjà `moment.js` servi à part. Aussi, on déplace tout et on sert les fichiers minifiés.
2019-10-16 20:27:57 +02:00
Ludovic Stephan
b343c6c6e0 Déplace (et modifie) jquery-ui
On déplace les deux versions de `jquery-ui` dans `shared/static/vendor/`, et on en récupère une version avec seulement les fonctionnalités requises.
2019-10-16 20:27:57 +02:00
Ludovic Stephan
22cfaf9b44 Idem pour jquery
On met `jquery` dans `shared/static/vendor/`, et on bump un chouïa la version.
2019-10-16 20:27:57 +02:00
Ludovic Stephan
a9dce881bd Supprime le CDN Bootstrap
On sert les fichiers nécessaires à `bootstrap` en local, dans `shared/static/vendor`.
2019-10-16 20:27:57 +02:00
Martin Pépin
2964d3a4aa
K-FêT: new year = new promo = new migration 2019-10-16 19:43:20 +02:00
Ludovic Stephan
4da5add25a
Move choices_length to shared folder 2019-10-15 21:51:23 +02:00
Martin Pépin
d37c41e99f kfet/test_views: more eloquent test names 2019-10-05 13:48:29 +02:00
Martin Pépin
e0285607a0
Fix tests according to issue #224 2019-10-05 02:25:05 +02:00
Martin Pépin
96adadce5e
Replace some 403 by 404 to avoid trigramme leaking
Fixes #224
2019-10-05 01:25:36 +02:00
Ludovic Stephan
96430d852c Do not repeat default argument 2019-06-17 22:02:12 +02:00
Ludovic Stephan
fc8c8fdf29 Montre les infos à tout le monde 2019-06-17 22:02:11 +02:00
Ludovic Stephan
8d30c5c7e5 Fix tests 2019-06-17 22:02:11 +02:00
Ludovic Stephan
fb56293273 Supprime un formulaire inutilisé 2019-06-17 22:02:11 +02:00
Ludovic Stephan
baa3826a42 Change le formulaire de account_update
On fait un formulaire d'info non-éditable pour pas que les gens mettent des noms troll
2019-06-17 22:02:11 +02:00
Ludovic Stephan
56bc281b30 Utilise >= gnagnagna 2019-06-03 23:00:10 +02:00
Ludovic Stephan
c4948be1f7 Use http_methods_allowed attribute 2019-06-03 22:59:43 +02:00
Ludovic Stephan
f3dbb72f69 Consistency for on_delete attributes 2019-06-03 22:43:47 +02:00
Ludovic Stephan
d4be8b426e Tests pour la suppression d'articles 2019-05-29 18:29:15 +02:00
Ludovic Stephan
65dd7e5fa3 Suppression d'article
On fait pareil que précédemment pour les articles, en rajoutant une vie
de délétion + de quoi afficher qu'un article a été supprimé.
N.B. : le formatage automatique de VSCode fait plein de changements,
donc pourquoi pas les garder.
2019-05-29 18:29:15 +02:00
Ludovic Stephan
123e2b84df Rename view to fit conventions 2019-05-29 18:29:15 +02:00
Ludovic Stephan
f12370a6cd Tests (!!) 2019-05-29 18:29:15 +02:00
Ludovic Stephan
52521e89a6 Add some restrictions on deletion 2019-05-29 18:29:15 +02:00
Ludovic Stephan
08ac0ac890 Vues de suppression
On rajoute un bouton de suppression d'un compte utilisable avec la perm
`kfet.delete_account`, avec message de vérif. On en profite pour
cleanup un peu le css de `jconfirm`.
2019-05-29 18:29:15 +02:00
Ludovic Stephan
63fff6ca7c Setup deleted account
Pour pouvoir supprimer un compte, on crée un compte dummy qui a pour but
de recevoir les objets non supprimables (caisses, transferts/opérations
pour statistiques, etc.). Lors de la délétion d'un compte, tout est
transféré sur le dummy, qui est créé via migration.
2019-05-29 18:29:15 +02:00
Ludovic Stephan
85b1e974ff Change deletion behaviour
Tous les `on_delete` étaient mis à PROTECT, ce qui faisait qu'on ne
pouvait rien supprimer... On les met à CASCADE pour tous les modèles
secondaires (`AccountNegative`, `CheckoutStatement`, `InventoryArticle`,
`SupplierArticle`, `Order` et `OrderArticle`) et pour les inventaires
créés à partir d'une commande.

Pour les modèles qui demandent une validation, et pour les `Operation`s,
on met à NULL le compte ou l'article associé (cela ne change pas le
total d'une opération, qui est la partie importante à garder).
2019-05-29 18:29:15 +02:00
Ludovic Stephan
3a5eceba83 Delete unused models
Certains modèles n'étaient pas utilisés dans le code, on en profite pour
les virer.
2019-05-29 18:29:15 +02:00
Ludovic Stephan
198658f5f9 Misc fixes
- on vire un commentaire obsolète, et on en remet un à jour
- un peu de doc sur les converters
2019-05-21 15:30:51 +02:00
Ludovic Stephan
03c74a7940 Misc fixes 2019-04-17 20:50:49 +02:00
Ludovic Stephan
271732f40d K-Fêt urlconf file + converter 2019-04-12 17:06:53 +02:00
Ludovic Stephan
f32e4a9b0d Fix error 2019-04-12 17:03:42 +02:00
Ludovic Stephan
5fd4cb5c78 Change django.core.urlresolvers imports
-- compatible with 1.11 --
2019-03-19 10:18:56 +01:00
Robin Champenois
0eccfcf886 Merge branch 'Aufinal/webfonts' into 'master'
Sert les polices en local

See merge request klub-dev-ens/gestioCOF!354
2019-02-18 22:40:10 +01:00
Evarin
1043e5725a Fix content-type fixtures K-Fêt 2019-02-18 21:54:26 +01:00
Ludovic Stephan
85642d00d8 Sert les polices en local 2019-02-13 16:54:42 +01:00