Virtualenv
Ce patch introduit un virtualenv dans le setup de dev. Cela permet notamment de passer à python 3 sans
avoir à remplacer toutes ses commandes `python manage.py ...` par `python3 manage.py ...`.
Il faut relancer le provisionning de la VM pour appliquer ce patch : `vagrant reload --provision`
See merge request !109
Améliore les mails automatiques du BdA
Les mails du BdA sont maintenant tous chargés depuis des templates gérés par le système de templates de Django, et plus par de l'interpolation de chaîne de caractères. Ceci permet en particulier d'utiliser (et de configurer) la localisation de Django afin d'afficher les dates de façon uniforme (et sans "hack" à la `date_no_seconds`) dans un format comportant un "à" entre le jour et l'heure.
See merge request !113
Supprime Spectacle.__repr__
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.
See merge request !112
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.
Il restait un unique email (envoyé lors de l’achat d’une place au
shotgun) dont le texte est inscrit en dur dans `bda.views`. Pour
éviter d’avoir trop de systèmes d’envoi de mails différents, il
utilise maintenant une template dans `bda/mails` comme le reste des
emails envoyés par l’application bda.
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.
- Suppression de la variable `ALLOWED_HOSTS` de `cof/settings.dev` de
sorte quand django utilise le default (qui est adapté à notre usage)
- Correction d'indentation
- Suppression d'un "-e" dans le fichier `requirements.txt`
[bda-revente] Envoie un mails aux perdants d'un tirage de revente
Note : Le changement dans le `requirements.txt` permet de profiter des mises à jour "patch" de django (qui contiennent notamment des mises à jour de sécurité...), ce qui permet d'éviter un bug corrigé dans la version 1.8.1 avec l'utilisation de `|floatformat` avec `django.template.loader.render_to_string`.
See merge request !106
Utilise une version officielle de django-cas-ng
Le fix de Xapantu pour la double authentification a été intégré à la
version 3.5.5 de django-cas-ng.
See merge request !104
Normalise les logins clipper venant du CAS
Le CAS de l'ENS autorise les logins avec des espaces/une casse variable, par
exemple il considere equivalents les logins ' bCLeMeNt ' et 'bclement'. Ceci
peut etre la cause de creation de doublons sur gestioCOF en cas de faute de
frappe (ou utilisateur malicieux ;-) )
Ce patch normalise les logins a la sortie du CAS (strip + lowercase) pour
eviter des desagrements.
See merge request !105