Bug #5469
Affichage de l'age en année et mois dans tous les services sauf au CAMSP seulement en mois.
100%
Description
Dépend de la demande #5457.
Ainsi on aurait le mode par défaut qui affiche jours, ou mois (si supérieurs à un mois), ou année et mois (si supérieur à un an).
Pour le CAMSP, mode months_only qui affiche toujours l'age en jours si inférieur à un mois ou mois sinon.
Files
Associated revisions
settings: disable south test migrations
Refs #5469
History
Updated by Frédéric Péters over 8 years ago
- File 0002-dossiers-make-the-age-format-configurable-via-servic.patch 0002-dossiers-make-the-age-format-configurable-via-servic.patch added
- Patch proposed changed from No to Yes
Patch qui fait ça, en utilisant la fonction get_service_setting définie dans #5457.
Updated by Frédéric Péters over 8 years ago
Pour tester, j'ai mis dans mon local_settings.py :
SERVICE_SETTINGS = { 'cmpp': { 'age_format': 'months_only', } }
Updated by Mikaël Ates over 8 years ago
- File age.patch added
Lorsque l'on affiche l'année, on affiche également le nombre de mois.
J'ai ajouté au passe l'affichage du nombre de jours si l'age est inférieur à 3 mois.
Pour les settings, c'est bien cela mais l'option s'appliquera au camsp :
SERVICE_SETTINGS = { 'camsp': { 'age_format': 'months_only', } }
Je joins le patch avec les modifs du fichier models seulement.
Updated by Frédéric Péters over 8 years ago
Oui, pour les settings c'était un exemple en local, où je n'ai qu'un service cmpp.
Avec l'affichage du jour, tu dois faire gaffe au pluriel, mois c'est pratique, "4 ans et 1 mois" c'est correct, mais "4 ans et 1 jours", ça ne l'est pas.
Updated by Mikaël Ates over 8 years ago
Peut-être pas le plus élégant.
Corrige également pour un age de "1 jour".
Updated by Frédéric Péters over 8 years ago
Houla houlala, j'éviterais ces constructions où on se base sur une conversion implicite d'un booléen vers un 1. Sans aller dans les ngettext et cie, vu que nos chaines sont de toute façon en français, je construirais plutôt quelque chose sur ce format :
components = ["%s mois" % months] if months < 3: # under three months, we also display the number of days if age.days == 1: components.append("%s jour" % age.days) elif age.days > 1: components.append('%s jours' % age.days) return ' et '.join(components)
Updated by Frédéric Péters over 8 years ago
Je fais un patch avec ça et envoie le tout demain matin.
Updated by Frédéric Péters over 8 years ago
- File 0001-dossiers-make-the-age-format-configurable-via-servic.patch 0001-dossiers-make-the-age-format-configurable-via-servic.patch added
Revoilà le patch, avec en bonus un jeu de tests. (et je me suis rendu compte qu'il faudrait SOUTH_TESTS_MIGRATE = False par défaut).
Updated by Frédéric Péters over 8 years ago
- Status changed from Nouveau to Résolu (à déployer)
- % Done changed from 0 to 100
Appliqué par commit calebasse|commit:1af9e727bc584ad6f2b59414243cdd663fe8d0c1.
Updated by Mikaël Ates over 8 years ago
- Assignee set to Jérôme Schneider
La mremarque de Fred : "SOUTH_TESTS_MIGRATE = False" a t-elle été prise en compte ? Peut-on fermer la demande ?
Updated by Jérôme Schneider over 8 years ago
- Status changed from Résolu (à déployer) to Fermé
Je viens de le désactiver. Je ferme le ticket.
dossiers: make the age format configurable via service settings
Closes #5469