Development #15213
previsualisation d'une annonce
0%
Fichiers
Révisions associées
fix postgresql specific migration and tests (#15213)
Historique
Mis à jour par Serghei Mihai il y a environ 7 ans
- Fichier 0001-add-announce-preview-15213.patch 0001-add-announce-preview-15213.patch ajouté
- Fichier 1.png 1.png ajouté
- Fichier 2.png 2.png ajouté
- Patch proposed changé de Non à Oui
Avec des captures en exemple.
Mis à jour par Serghei Mihai il y a environ 7 ans
C'est une idée en amont de celle du #13358.
On n'a pas de page de visualisation de l'annonce. juste l'édition dans ckeditor. Il est donc utile de pouvoir voir l'integralité de l'annonce sur une page à part.
Mis à jour par Frédéric Péters il y a environ 7 ans
Ok, c'est pas mal d'exposer le fil des idées. Donc dans #13358 je parle d'une page "DetailVew" pour les annonces, en supposant qu'elle existe. Mais elle n'existe pas. Doit-elle exister ? Peut-être que les actions sur une annonce elles auraient leur place dans la liste des annonces. Discussion zappée.
Page de visualisation d'une annonce, donc. N'appelons pas ça "prévisualisation", c'est une page qui reprend les infos de l'annonce, son titre, ses dates de publication ou dépublication, l'info comme quoi elle a déjà été envoyée ou pas, etc.
Et si c'est une annonce destinée à être envoyée par mail, pourquoi pas une prévisualisation du mail envoyé, mais c'est pour moi tout à fait différent. (par exemple il faudrait prendre en compte le template utilisé pour l'envoi, pas juste afficher .text, i.e. le corbo.announce.html avec le content et le unsubscribe_link_placeholder dans le context, de la méthode send()).
Mis à jour par Serghei Mihai il y a environ 7 ans
- Fichier 0001-add-announce-view-15213.patch 0001-add-announce-view-15213.patch ajouté
- Fichier annonce.png annonce.png ajouté
- Statut changé de Nouveau à En cours
Ok.
Donc le clic sur une annonce dans le listing permet de visualiser le corps de l'annonce ainsi que les informations quant à sa publication et diffusion.
Mis à jour par Serghei Mihai il y a environ 7 ans
Et avec l'information sur la date d'expedition.
Mis à jour par Frédéric Péters il y a environ 7 ans
messages.info(self.request, _('Announce successfully updated'))
Communément on n'affiche pas de notif disant que tout s'est passé correctement; de plus comme l'usager revient ici sur une page où il peut voir l'annonce, il peut constater lui-même que c'est le cas.
{% for b in broadcasts %}
Également inclure le nombre de diffusions qu'on a comme info dans l'objet ?
Mis à jour par Serghei Mihai il y a environ 7 ans
- Fichier 0002-remove-obsolete-result-field.patch ajouté
- Fichier 0001-add-announce-view-15213.patch ajouté
Avec le remplacement du champ texte result
par un entier delivers_number
.
Mis à jour par Serghei Mihai il y a environ 7 ans
- Fichier
0001-add-announce-view-15213.patchsupprimé
Mis à jour par Serghei Mihai il y a environ 7 ans
- Fichier
0002-remove-obsolete-result-field.patchsupprimé
Mis à jour par Serghei Mihai il y a environ 7 ans
Mis à jour par Frédéric Péters il y a environ 7 ans
Mêler les deux patchs pour unir les migrations.
delivers_number
→ delivery_count ?
Quand le <div class="panel">
est vide (pas de dates de publication ou d'expiration, pas de diffusion), ça fait un rectangle gris pas terrible (cf capture).
Sur une modification d'une annonce, il faudrait retourner à la vue de celle-ci, là ça reste bloqué sur l'annonce.
Ça annonce "Published on ..." même pour des dates dans le futur, je ne sais pas si c'est heureux; pareil avec le "Expires at ..." qui sonnera bizarre une fois l'expiration passée.
Peut-être reprendre ces métadonnées non pas sur une seule ligne horizontale mais dans une barre latérale ? Ce qui aurait l'avantage également de raccourcir les lignes de l'annonce, qui semblent s'étirer à l'infini.
Mis à jour par Serghei Mihai il y a environ 7 ans
- Fichier 0001-add-announce-view-15213.patch 0001-add-announce-view-15213.patch ajouté
- Fichier corbo_announce_view.png corbo_announce_view.png ajouté
Frédéric Péters a écrit :
delivers_number
→ delivery_count ?
ok
Quand le
<div class="panel">
est vide (pas de dates de publication ou d'expiration, pas de diffusion), ça fait un rectangle gris pas terrible (cf capture).
ok, condition rajoutée.
Ça annonce "Published on ..." même pour des dates dans le futur, je ne sais pas si c'est heureux; pareil avec le "Expires at ..." qui sonnera bizarre une fois l'expiration passée.
Remplacement par "Publication at" et "Expiration at". Ça m'évite d'employer les temps dans les verbes.
Peut-être reprendre ces métadonnées non pas sur une seule ligne horizontale mais dans une barre latérale ? Ce qui aurait l'avantage également de raccourcir les lignes de l'annonce, qui semblent s'étirer à l'infini.
Ok, un petit bloc à droite avec les infos (cf. capture jointe)
Mis à jour par Frédéric Péters il y a environ 7 ans
delivers_number → delivery_count ?
ok
delivers_count dans le code :/
Ok, un petit bloc à droite avec les infos (cf. capture jointe)
Très clairement un peu plus large et les dates pourraient tenir. Ou alors formatter différemment, avoir libellé et valeur sur deux lignes distinctes. Là c'est dommage avec tout l'espace dont on dispose de couper la date/heure.
Delivered at {{ delivered }} to {{ delivers }} destinations
Ça passera sans doute une fois traduit en français mais "Delivered" laisse penser à une assurance comme quoi le message est bien arrivé, je préférerais être frileux et plutôt avoir "Sent".
Mis à jour par Serghei Mihai il y a environ 7 ans
- Fichier 0001-add-announce-view-15213.patch 0001-add-announce-view-15213.patch ajouté
- Fichier announce_view.png announce_view.png ajouté
Ok, la date systèmatiquement sur une ligne séparée.
Mis à jour par Frédéric Péters il y a environ 7 ans
Sur une de mes instances, j'obtiens ça à la migration :
File "/home/fred/src/eo/venv/local/lib/python2.7/site-packages/django/db/backends/base/schema.py", line 440, in remove_field self.execute(sql) File "/home/fred/src/eo/venv/local/lib/python2.7/site-packages/django/db/backends/base/schema.py", line 111, in execute cursor.execute(sql, params) File "/home/fred/src/eo/venv/local/lib/python2.7/site-packages/django/db/backends/utils.py", line 79, in execute return super(CursorDebugWrapper, self).execute(sql, params) File "/home/fred/src/eo/venv/local/lib/python2.7/site-packages/django/db/backends/utils.py", line 64, in execute return self.cursor.execute(sql, params) File "/home/fred/src/eo/venv/local/lib/python2.7/site-packages/django/db/utils.py", line 98, in __exit__ six.reraise(dj_exc_type, dj_exc_value, traceback) File "/home/fred/src/eo/venv/local/lib/python2.7/site-packages/django/db/backends/utils.py", line 64, in execute return self.cursor.execute(sql, params) django.db.utils.OperationalError: ERREUR: ne peut pas exécuter ALTER TABLE « corbo_broadcast » car il reste des événements sur les triggers
C'est expliqué http://stackoverflow.com/a/39541048 , le patch qui arrange les choses :
--- a/corbo/migrations/0010_broadcast_delivery_count.py +++ b/corbo/migrations/0010_broadcast_delivery_count.py @@ -25,6 +25,8 @@ class Migration(migrations.Migration): ] operations = [ + migrations.RunSQL('SET CONSTRAINTS ALL IMMEDIATE', + reverse_sql=migrations.RunSQL.noop), migrations.AddField( model_name='broadcast', name='delivery_count', @@ -35,4 +37,6 @@ class Migration(migrations.Migration): model_name='broadcast', name='result', ), + migrations.RunSQL(migrations.RunSQL.noop, + reverse_sql='SET CONSTRAINTS ALL IMMEDIATE'), ]
Mis à jour par Serghei Mihai il y a environ 7 ans
Merci, j'ai appris une chose aujourd'hui.
Mis à jour par Serghei Mihai il y a environ 7 ans
- Statut changé de En cours à Résolu (à déployer)
commit 06620ee794a4fdada272d3eaad9dd23147103650 Author: Serghei Mihai <smihai@entrouvert.com> Date: Thu Mar 2 17:14:00 2017 +0100 add announce view (#15213)
Mis à jour par Frédéric Péters il y a environ 7 ans
"Évidemment" ça fait foirer la migration avec sqlite :/
Mis à jour par Serghei Mihai il y a environ 7 ans
- Statut changé de Résolu (à déployer) à En cours
Mis à jour par Serghei Mihai il y a environ 7 ans
- Statut changé de En cours à Résolu (à déployer)
Migration adaptée pour executer les "SET CONSTRAINTS ALL ..." que si le backend de db est postgres. Et au passage j'ai corrigé les tests.
commit 2625291a6e1827fb32c66fab2d0627ffda7d727f Author: Serghei Mihai <smihai@entrouvert.com> Date: Fri Apr 7 11:50:36 2017 +0200 fix postgresql specific migration and tests (#15213)
add announce view (#15213)