Commit graph

41 commits

Author SHA1 Message Date
Aurélien Delobelle 05eeb6a25c core -- Install django-allauth-ens
Refer to allauth doc for an accurate features list:
  http://django-allauth.readthedocs.io/en/latest/

Users can now change their password, ask for a password reset, or set
one if they don't have one.

In particular, it allows users whose account has been created via a
clipper authentication to configure a password before losing their
clipper. Even if they have already lost it, they are able to get one
using the "Reset password" functionality.

Allauth multiple emails management is deactivated. Requests to the
related url redirect to the home page.

All the login and logout views are replaced by the allauth' ones. It
also concerns the Django and Wagtail admin sites.

Note that users are no longer logged out of the clipper CAS server when
they authenticated via this server. Instead a message suggests the user
to disconnect.

Clipper connections and `login_clipper`
---------------------------------------

- Non-empty `login_clipper` are now unique among `CofProfile` instances.
- They are created once for users with a non-empty 'login_clipper' (with
the data migration 0014_create_clipper_connections).
- The `login_clipper` of CofProfile instances are sync with their
clipper connections:
    * `CofProfile.sync_clipper_connections` method updates the
connections based on `login_clipper`.
    * Signals receivers `sync_clipper…` update `login_clipper` based on
connections creations/updates/deletions.

Misc
----

- Add NullCharField (model field) which allows to use `unique=True` on
CharField (even with empty strings).
- Parts of kfet mixins for TestCase are now in shared.tests.testcase,
  as they are used elsewhere than in the kfet app.
2018-10-21 17:09:12 +02:00
Aurélien Delobelle fdd2b35289 core -- Apply black + isort to all files 2018-10-06 13:15:33 +02:00
Theo Delemazure 91393dcea7 Update models.py 2018-09-02 20:34:09 +02: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 435e211b3d Add a "PEI" status + "Gratis" subscription fees 2017-10-02 13:58:52 +02:00
Martin Pépin 937a485704 Merge branch 'master' into Production 2017-09-09 22:03:32 +02:00
Martin Pépin 51f4bf3fb5 Clipper logins may be > 8 characters 2017-09-04 13:25:09 +02:00
Martin Pépin dba8a0a857 Remove the num field in CofProfile 2017-05-22 01:00:32 +01:00
Martin Pépin 76dcaf7d51 drop py2 compat 2017-05-21 23:58:44 +01:00
Martin Pépin 6e55905781 Merge branch 'master' into Kerl/use_django_custommail 2017-02-11 03:20:29 +01:00
Martin Pépin 993b8ae87b Merge branch 'master' into Kerl/use_django_custommail 2017-01-13 01:02:01 +01:00
Martin Pépin 540b6f38b8 Merge branch 'master' into Kerl/ldap 2017-01-09 15:47:12 +01:00
Michele Orrù 542d02ca6d Cosmetics: post_save-ing a CofProfile now with decorators. 2017-01-05 11:35:34 +01:00
Michele Orrù 8016078e4f Deleting a CofProfile ⇒ Deleting a User.
There's no reason for keeping a User if its respective cofprofile was deleted.
No?

Unittests attached.
2017-01-05 11:35:21 +01:00
Martin Pépin 3c7558c853 The end of Clipper
GestioCOF fetches the clipper accounts from an LDAP database and doesn't
need to store clippers in a table anymore.
2016-12-25 11:57:50 +01:00
Martin Pépin fe8f18ff78 Utilise django_custommail
- On installe le package depuis le dépôt COF-Geek
- On supprime tous les fichiers texte des mails
- On charge dans la bdd les mails nécessaires au fonctionnement de
  GestioCOF
- On supprime le modèle CustomMail obsolète de gestioncof
2016-12-22 03:45:03 +01:00
Martin Pépin 799f2317f7 Champ commentaires
le champ `comments` du modèle `CofProfile` est maintenant visible par
l'urilisateur via la vue “profil”.
2016-09-04 13:21:23 +02:00
Martin Pépin c07cf654fb Premier jet des clubs
On peut inscrire les utilisateurs aux différents clubs du COF. Le
formulaire d'inscription est inclus dans la page
“inscription d'un nouveau membre”.

À réfléchir comment ajouter des infos supplémentaires : chèque des caution,
commentaires, etc.
2016-08-23 18:57:15 +02:00
Martin Pépin 2632c9dff8 Merge branch 'master' into Kerl/calendar 2016-07-29 20:17:04 +02:00
Martin Pépin 4c20b17b4e Nettoyage
Simplement une suppression des `from foo import *`
2016-07-16 18:48:43 +02:00
Martin Pépin 3d0e9d32c3 Merge branch 'master' into Kerl/calendar 2016-07-16 18:28:20 +02:00
Martin Pépin 0887cf824d Ajoute l'inscription à ses résultats du tirage 2016-07-16 02:25:30 +02:00
Martin Pépin 7b32edbd38 Rend le calendrier plus dynamique
Plus besoin de s'authentifier pour accéder au calendrier : il suffit
d'entrer la bonne url qui contient un token aléatoire propre à chaque
utilisateur.
Ce token ne change pas lorsqu'on modifie son inscription
2016-07-15 23:31:26 +02:00
Martin Pépin ea6e7a1472 Ajoute des fonctions __str__ là où ça manque 2016-07-15 20:01:45 +02:00
Martin Pépin b5704c7f6d Corrections
- Typos dans les modèles
- Choix d'un `OneToOneField` dans `CalendarSubscription`
- Suppressions d'un `except` catch-all
- Amélioration de la vue calendar
2016-07-15 02:49:56 +02:00
Martin Pépin 8af49a1020 Ajout d'un calendrier dynamique
Ce patch propose aux adhérents du COF de télécharger un calendrier
dynamique (`.ics`).

Il est configurable :
    - On peut s'abonner ou non aux événements du COF.
    - On peut choisir les spectacles auxquels on veut s'abonner.
2016-07-15 01:06:33 +02:00
Basile Clement 210c6d7712 Update Py3 compat 2016-07-15 00:20:08 +02:00
Martin Pépin aa6e5e5479 Oublis 2016-07-14 23:43:53 +02:00
Basile Clement 21b8b6042f Compatibilité python 3
Rend GestioCOF compatible avec python 3. En particulier, il s'agit de :

  - Utiliser la version "fonction" de `print` dans `sync_clipper` et
    `tirage_bda`, avec le `from __future__ import print_function` pour
    garder la compatibilité avec python 2

  - Utiliser de l'unicode par défaut, même en python 2, avec
    `from __future__ import unicode_literals` et le décorateur de
    compatibilité `python_2_unicode_compatible` de Django pour les
    modèles, comme décrit à
    https://docs.djangoproject.com/en/1.9/topics/python3/#str-and-unicode-methods

  - Utiliser `six.text_type` à la place de `unicode`

Fixes #2.
2016-07-14 23:40:31 +02:00
Martin Pépin 66214f7ff2 Typos 2016-07-13 01:07:57 +02:00
Martin Pépin 4ad9b28785 coquille 2016-07-10 14:24:58 +02:00
Théophile Bastian 58cade22d3 Ajout d'images aux événements 2016-07-09 23:51:39 +01:00
Théophile Bastian 88bccc0e60 PEP8: Enforced other rules, including 80 cols 2016-07-09 21:39:11 +01:00
Théophile Bastian c7a3656ded PEP8: fixed ' = ' → '=' on parameters
'unexpected spaces around keyword / parameter equals'
2016-07-09 20:19:37 +01:00
Basile Clement 01891bfd6c Enlève eav-django qui n'est plus utilisé
Fixes #5.
2016-06-03 01:17:44 +02:00
root 182ba7f614 . 2015-01-06 11:01:15 +01:00
root 64b8ee4133 Grod commit dégueux avec une tonne de trucs. Berk. 2014-08-19 12:54:22 +02:00
root 62797491cb Pourquoi c'est pas commité avant ? 2013-10-01 15:27:19 +02:00
root 9c989d886b Update while working on Django 1.5 upgrade 2013-09-05 22:20:52 +02:00
root 2479b0a24d Major update 2012-07-11 17:39:20 +02:00
Guillaume Seguin 8e1bf7b705 Initial import 2012-06-27 23:28:35 +02:00