Projet

Général

Profil

Development #40728

Permettre la configuration d'une date de publication par événement.

Ajouté par Mikaël Ates (de retour le 29 avril) il y a environ 4 ans. Mis à jour il y a presque 4 ans.

Statut:
Fermé
Priorité:
Normal
Assigné à:
Catégorie:
-
Version cible:
-
Début:
13 mars 2020
Echéance:
% réalisé:

0%

Temps estimé:
Patch proposed:
Oui
Planning:
Non

Description

Pour un même agenda, la gestion d'événements peut se faire par période et l'ouverture à l'inscription peut être souhaitée simultanée pour un ensemble d'événements.

Par exemple pour un agenda "bals", l'agent souhaitera saisir les bals à venir tous les trimestres. Il fera la saisie pour le trimestre à venir pendant le trimestre en cours. Il est souhaité que les bals du trimestre en cours soit ouvert à l'inscription. Cependant, les inscription aux bals du prochain trimestre ne devront être ouvertes qu'à partir du premier jour du prochain trimestre.

La gestion actuelle des délais d'ouverture en jours par agenda ne permet pas de gérer cela aisément. Cela demande de venir, le premier jour du trimestre, paramétrer un nombre de jours couvrant le trimestre. Puis, chaque jour, de venir paramétrer un délai pour que la plage d'ouverture des inscriptions coïncide avec le dernier jour du trimestre.

Il serait souhaité qu'il soit possible de configurer une date de publication par événement. Ainsi, pour les évènements du trimestre prochain, l'agent indiquerait manuellement lors de la saisie de chaque événement la date du jour souhaitée de publication.

Cette date n'entrerait pas en conflit avec le délai configuré sur l'agenda de manière à couvrir la durée d'un trimestre.

(Cette approche est validée côté métier de la prise de rendez-vous pour la gestion des seniors.)

Même si elle demande plus "d'efforts" à l'agent car il doit renseigner sur chaque événement une date (si elle ne l'est pas, le fonctionnement actuel est conservé), cette approche semble plus souple que de configurer des champs de publication au niveau de l'agenda en indiquant "trimestre en cours" par exemple. En effet, ce pourrait être sur des périodes différentes, semestre ou année, ou autre. Cela demanderait de prévoir toutes les périodes permettant de couvrir différents cas d'usage. Cela poserait aussi la question de la gestion lorsque cette période varie, par exemple une bascule de trimestre vers semestre, ou parce que l'été ce serait finalement 4 mois avant qu'il faudrait permettre l'ouverture.


Fichiers

Révisions associées

Révision ff9da976 (diff)
Ajouté par Lauréline Guérin il y a presque 4 ans

agendas: add publication_date on event (#40728)

Révision 0f89c488 (diff)
Ajouté par Lauréline Guérin il y a presque 4 ans

api: check publication_date in datetimes & fillslots api (#40728)

Historique

#4

Mis à jour par Benjamin Dauvergne il y a presque 4 ans

  • Assigné à mis à Lauréline Guérin
#5

Mis à jour par Lauréline Guérin il y a presque 4 ans

branche basée sur #40719 pour enchaîner les migrations proprement.

Comme la méthode in_bookable_period est déjà unit-testée, j'ai utilisé mock pour valider le comportement de l'api fillslots en fonction des ses retours possibles. J'aime assez utiliser mock dans les tests, mais ce n'est pas forcément le cas de tout le monde :)

Effet de bord de l'ajout de check de la bookabilité des events dans l'api fillslots: des changement dans pas mal de tests, qui bookaient des events situés dans le passé.

#6

Mis à jour par Benjamin Dauvergne il y a presque 4 ans

Dans in_bookable_period tu utilises localtime() mais pas dans le filtre, or now() est toujours en timezone UTC.

#8

Mis à jour par Benjamin Dauvergne il y a presque 4 ans

  • Statut changé de Solution proposée à Solution validée

J'en viendrai presque à dire que ce serait plus clair que publication_date soit un datetime (et renommé publication_datetime) tout en conservant une IHM basée sur les dates pour la sélection (jusqu'au jour où on voudra plus). Ça éviterait de jouer avec localtime au moment de l'utilisation, mais ce n'est qu'une suggestion.

#9

Mis à jour par Lauréline Guérin il y a presque 4 ans

Pas sûr que ça simplifie le tout d'avoir un datetime.

J'ai ajouté l'affichage de la date de publication sur quelques écrans, mais je suis pas sûre que ce soit pertinent.

#10

Mis à jour par Benjamin Dauvergne il y a presque 4 ans

J'ai ajouté l'affichage de la date de publication sur quelques écrans, mais je suis pas sûre que ce soit pertinent.

Dans month_view je ne pense pas puisqu'en cliquant sur un évènement ça doit afficher event_detail_fragment.

#12

Mis à jour par Benjamin Dauvergne il y a presque 4 ans

  • Statut changé de Solution proposée à Solution validée
#13

Mis à jour par Frédéric Péters il y a presque 4 ans

(ce commentaire par prudence : c'est pour le prochain cycle)

#14

Mis à jour par Lauréline Guérin il y a presque 4 ans

  • Statut changé de Solution validée à Résolu (à déployer)
commit 0f89c488c8bd08612b90446210426906b9e81b03
Author: Lauréline Guérin <zebuline@entrouvert.com>
Date:   Tue May 12 16:57:11 2020 +0200

    api: check publication_date in datetimes & fillslots api (#40728)

commit ff9da976c9fe1470a5dd76bdcbd040c3a982e83b
Author: Lauréline Guérin <zebuline@entrouvert.com>
Date:   Tue May 12 14:22:52 2020 +0200

    agendas: add publication_date on event (#40728)
#15

Mis à jour par Frédéric Péters il y a presque 4 ans

  • Statut changé de Résolu (à déployer) à Solution déployée

Formats disponibles : Atom PDF