Configure la localisation (i10n) de Django afin d’afficher un format
plus user-friendly par défaut pour les dates (par exemple, afficher
"21 septembre 2016 à 15:00" plutôt que "21 septembre 2016
15:00"). Ceci permet d’éliminer les utilisations de `date_no_seconds`
pour simplement les remplacer par l’affichage de la date, le format
par défaut étant maintenant satisfaisant.
Attention : le bon fonctionnement de ceci nécessite de changer les
settings afin d’utiliser le module `cof.locale` comme module de
localisation (définir `FORMAT_MODULE_PATH = "cof.locale"`). Le module
`cof.locale` définit le format d’affichage des dates+heures
(`DATETIME_FORMAT`) afin d’incorporer le "à" qui n'est pas présent
dans la localisation française de Django.
La méthode `bda.models.Spectacle.__repr__` est buggée (elle retourne
une chaîne unicode alors que `__repr__` doit *toujours* renvoyer une
chaîne ASCII) et pose des problèmes de crash lors de l’affichage
d’objets `Spectacle` dans le REPL python. La méthode `__repr__`
héritée de `django.db.models.Model` devrait être suffisante.
GestioCOF définit une fonction `render_template` qui permet de calculer
l'interpolation d'un gabarit en une chaîne de caractères, par exemple
pour l'envoi de mails. Ce patch supprime cette fonction et remplace son
utilisation par la fonction `django.template.loader.render_to_string` au
comportement identique.
Les valeurs de champs FROM, REPLY-TO et BCC des mails envoyés par
GestioCOF sont enregistrées dans un dictionnaire `settings.MAIL_DATA`
plutôt que d'être toutes enregistrées comme variables indépendantes
- Ajoute des informations supplémentaires au modèle `Spectacle`.
- Supprime le champ inutilisé `priority`.
- Utilise le champ inutilisé `slots_description`.
- Adapte le template `descriptions.html` et la vue admin à ces changements.
- La fonction de hashage dans `bda/views` ne fonctionnait plus en py3
- L'attribut `tirage` des participants a été supprimé lors du dernier
merge avec master.
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.
Le switch permet d'autoriser/interdire le lancement d'un tirage. Il
s'agit d'une sécurité face aux erreurs d'inattention.
Le champ `token` du modèle `Tirage` devient `tokens` et stocke les
graines des tirages déjà lancés si le tirage est lancé plusieurs fois.
- Les tirages ont un champ `active` pour indiquer si le tirage doit
être affiché ou considéré comme archivé.
- La page d'accueil n'affiche que les tirages actifs.
- Le formulaire d'inscription ne propose plus que les spectacles du
tirage concerné.
- Ajout du modèle `Tirage` avec
- Un titre / intitulé
- Une date de début.
- Une date de fin.
- La graine, qui peut être nulle au moment ou on crée le tirage.
- Formatage du code sur 80 colonnes.
- Suppression des espaces autour des signes `=` dans les arguments
nommés conformément à
[PEP8](https://www.python.org/dev/peps/pep-0008/)