Commit graph

1805 commits

Author SHA1 Message Date
Basile Clement
f9ddee60ed Ajoute une option "Master" pour les petits cours
À la demande du COF, car il y a des parents qui demandent et illes se
retrouvent à changer les demande "Autres" en "Licence 3" via l'admin
Django.  En pratique, il y aura sans doute très peu de profs qui
proposent des cours de Master (aussi appelé "le problème des gens qui
remplissent leurs compétences une seule fois en conscritude");  il
faudra donc tout de même laisser la possibilité au COF de changer
manuellement pour matcher avec "Licence 3", mais faisons une chose à la
fois.  On pourrait aussi harceler les gens pour qu'illes mettent à jour
leurs compétences en début d'année (c'est-à-dire mettre un bandeau
temporaire pour leur rappeler que si illes mettent à jour leurs
compétences ça augmente leur chance d'obtenir des cours).
2018-12-10 20:54:39 +01:00
Ludovic Stephan
dee2f4badc Merge branch 'Elarnon/petitscours_proposals_cleanup' into 'master'
[petitscours] Extrait la proposition de profs dans une méthode

See merge request klub-dev-ens/gestioCOF!332
2018-12-03 21:15:17 +01:00
Martin Pepin
633cd49094 Merge branch 'Elarnon/cofburo_required' into 'master'
Améliore l'ergonomie de `cof_required` et `buro_required`

See merge request klub-dev-ens/gestioCOF!333
2018-11-27 10:13:32 +01:00
Martin Pepin
d58d08a4d4 Merge branch 'Elarnon/petitscours_app' into 'master'
Extrait les petits cours dans une application séparée

See merge request klub-dev-ens/gestioCOF!331
2018-11-26 23:00:56 +01:00
Basile Clement
5f9695ef8e isort 2018-11-25 18:32:04 +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
Basile Clement
2b8f81c94b [petitscours] Extrait la proposition de profs dans une méthode
Ce patch simplifie le code (dupliqué) de calcul des proposition de profs
pour une demande dans une méthode du modèle`Demande`, et l'utilise.  Il
s'agit d'un préparatif pour #208; ce code devra être réutilisé dans le
nouveau système.

J'en ai également profité pour nettoyer deux vues de `petitscours`,
`retraitement` et `demande_raw`, qui dupliquaient les vues `traitement`
et `demande`, en utilisant des arguments nommés.

petitscours/
 * models.py:
    Définition de `get_proposals` pour calculer les propositions de
    profs pour une demande.
 * views.py:
    Utilise `get_proposals` à la place du code copié-collé.  La fonction
    `_finalize_traitement` est maintenant responsable du calcul des
    `proposed_for` et `attribdata` à fournir aux templates.
 * urls.py:
    Passe directement les arguments aux vues plutôt que de faire deux
    fonctions séparées.
2018-11-25 17:05:55 +01:00
Basile Clement
c960d97b67 Extrait les petits cours dans une application séparée
L'application `petitscours` reste assez fortement couplée à
`gestioncof`, et n'est pas (encore ?) faite pour être utilisée
séparément.

De façon similaire, et afin de minimiser de potentiels problèmes dûs à
des migrations, les modèles de l'application `petitscours` utilisent
`app_label = "gestioncof"` pour que Django les considère comme faisant
partie de l'application `"gestioncof"`.  Ils pourront être migrés dans
un second temps si cela s'avère nécessaire.

Les changements sont nombreux, mais assez simples: il s'agit
principalement de déplacer des fichiers et changer des imports.  J'ai
également profité de l'occasion pour réorganiser les templates afin de
les placer dans l'espace de nom "petitscours/".

cof/
 * settings/common.py: Add `petitscours` app
 * urls.py: Use `petitscours.urls`

petitscours/
 * __init__.py: Added.
 * tests/__init__.py: Added.
 * tests/utils.py: Added.
 * urls.py: Added.

gestioncof/
 * admin.py:
 * management/commands/loaddevdata.py:
 * models.py:
 * signals.py: Typo.
 * urls.py:
       Moved petitscours_patterns to petitscours.urls
 * petits_cours_forms.py:
       Moved to petitscours/forms.py
 * petits_cours_models.py:
       Moved to petitscours/models.py
 * petits_cours_views.py:
       Moved to petitscours/views.py
 * tests/utils.py:
 * tests/test_petitscours_views.py:
       Moved to petitscours/tests/test_petitscours_views.py
 * templates/base_title_petitscours.html:
       Moved to petitscours/templates/petitscours/base_title.html
 * templates/demande-petit-cours.html:
       Moved topetitscours/templates/petitscours/demande.html
 * templates/gestioncof/details_demande_petit_cours.html:
       Moved to petitscours/templates/petitscours/demande_detail.html
 * templates/petits_cours_demandes_list.html:
       Moved to petitscours/templates/petitscours/demande_list.html
 * templates/demande-petit-cours-raw.html:
       Moved to petitscours/templates/petitscours/demande_raw.html
 * templates/details_demande_petit_cours_infos.html:
       Moved to petitscours/templates/petitscours/details_demande_infos.html
 * templates/inscription-petit-cours.html:
       Moved to petitscours/templates/petitscours/inscription.html
 * templates/inscription-petit-cours-formset.html:
       Moved to petitscours/templates/petitscours/inscription_formset.html
 * templates/gestioncof/traitement_demande_petit_cours.html:
       Moved to petitscours/templates/petitscours/traitement_demande.html
 * templates/gestioncof/traitement_demande_petit_cours_autre_niveau.html:
       Moved to petitscours/templates/petitscours/traitement_demande_autre_niveau.html
 * templates/gestioncof/traitement_demande_petit_cours_success.html:
       Moved to petitscours/templates/petitscours/traitement_demande_success.html
2018-11-25 13:25:16 +01:00
Ludovic Stephan
d82c9baf20 Bump django-redis-cache version to 1.8.1
The `django-redis` package does not work with redis 3.0, and previous
versions of this package did not hardcode the version number.
2018-11-25 00:48:57 +01:00
Ludovic Stephan
4ae0b3c5f0 Merge branch 'aureplop/cof-tests_petitcours' into 'master'
petitcours.tests -- Add tests for some views

See merge request klub-dev-ens/gestioCOF!325
2018-11-25 00:41:51 +01:00
Basile Clement
4e34583e3f black 2018-11-25 00:23:43 +01:00
Basile Clement
a2116bf290 Merge branch 'master' into aureplop/cof-tests_petitcours 2018-11-25 00:22:16 +01:00
Basile Clement
d48cb3aaed petitcours.tests -- Deplace les tests dans leur propre fichier 2018-11-25 00:22:12 +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
Robin Champenois
39d82a573f Merge branch 'Elarnon/autoriser_la_suppression_dun_voeud_bda_qui_nexiste_pas' into 'master'
Permet la suppression d'un voeu ajouté mais non enregistré

See merge request klub-dev-ens/gestioCOF!329
2018-11-12 22:03:07 +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
Ludovic Stephan
ba21de683b Merge branch 'Elarnon/cas_v3_v2' into 'master'
Fix CAS support in python-cas 1.3+

See merge request klub-dev-ens/gestioCOF!328
2018-11-12 21:09:14 +01:00
Basile Clement
00a1e79af6 Fix CAS support in python-cas 1.3+
cas.eleves.ens.fr has /serviceValidate, not /p3/serviceValidate, and is
thus *probably* a V2 CAS server.  python-cas was broken and using
/serviceValidate for V3 while it should have been /p3/serviceValidate,
see
c3ac4b6c76
2018-11-12 00:54:44 +01:00
Ludovic Stephan
95ba7798d7 Ignore VSCode files 2018-11-04 23:07:57 +01:00
Aurélien Delobelle
0fe63d3eae petitcours.tests -- Add tests for demande (raw) views 2018-10-27 22:29:55 +02:00
Aurélien Delobelle
3d27dc9a41 petitcours.tests -- Add tests for inscription and (re)traitement views 2018-10-27 19:18:58 +02:00
Aurélien Delobelle
1a5bbf32a4 petitcours.tests -- Add tests for demandes list and details views 2018-10-27 19:18:58 +02:00
Aurélien Delobelle
25dfe2f496 petitcours.tests -- Add PCAbility, PCDemande and PCSubject factories 2018-10-27 19:18:58 +02:00
Aurélien Delobelle
8be913cbf9 style -- black 2018-10-27 13:37:39 +02: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
Aurélien Delobelle
0ba7100110 Merge branch 'aureplop/ci-move-services' into 'master'
core.ci -- Fix CI (postgres version) + speed up job "linters"

See merge request cof-geek/gestioCOF!324
2018-10-21 12:49:25 +02:00
Aurélien Delobelle
b795a06b9c core.ci -- Use postgres version of production server 2018-10-21 12:33:58 +02:00
Aurélien Delobelle
e478beee5c core.ci -- Narrow services to jobs that need them 2018-10-21 12:33:54 +02:00
Martin Pepin
7f5a442bae Merge branch 'Aufinal/annul_reventes' into 'master'
Annulation des reventes

Closes #191

See merge request cof-geek/gestioCOF!297
2018-10-07 12:16:07 +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
26b19685b8 Merge branch 'Kerl/fix-pre-commit' into 'master'
Autre idée pour réparer le hook de pre-commit

See merge request cof-geek/gestioCOF!322
2018-10-07 00:09:13 +02:00
Martin Pépin
2c0ab1e55e use xargs to prevent globbing in pre-commit.sh 2018-10-07 00:06:51 +02:00
Martin Pepin
b86f3113ea Merge branch 'aureplop/bda-test_silence' into 'master'
bda.tests -- Silence syncmails in setup

See merge request cof-geek/gestioCOF!320
2018-10-06 17:47:54 +02:00
Aurélien Delobelle
aac9b41442 bda.tests -- Silence syncmails in setup 2018-10-06 17:39:52 +02:00
Martin Pepin
ec287c8a3b Merge branch 'aureplop/linters' into 'master'
core -- Add and apply black, flake8, isort to CI and pre-commit

Closes #200

See merge request cof-geek/gestioCOF!317
2018-10-06 16:10:33 +02:00
Aurélien Delobelle
fc4b852bde Merge branch 'Kerl/linters' into 'aureplop/linters'
Script de pre-commit plus robuste

See merge request cof-geek/gestioCOF!319
2018-10-06 16:04:36 +02:00
Martin Pépin
9bc3355a21 pre-commit hook: fix shellcheck's SC2086 & SC2181 2018-10-06 15:50:49 +02:00
Martin Pépin
61fbf0bc80 typo 2018-10-06 15:45:32 +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
104e71dcf6 core -- Add black,isort,flake8 to CI and pre-commit hook
On CI:
- black and isort in check mode must pass.
- flake8 only prints errors
  WIP: make it also failed.

On pre-commit:
- black and isort will format staged files, if installed on path.
- flake8 prints its output if necessary.
2018-10-06 12:53:50 +02:00
Aurélien Delobelle
b23810917d core -- Remove not working cache of py installed packages...
... and use env var for pip install location.
2018-10-06 11:54:18 +02:00
Martin Pepin
b39b6d6bb3 Merge branch 'aureplop/cof-tests_registration' into 'master'
cof -- Add tests for registration views

See merge request cof-geek/gestioCOF!287
2018-10-06 11:25:44 +02:00