Projet

Général

Profil

Development #20557

api: ajout d'une date de fin dans l'export ICS des demandes

Ajouté par Serghei Mihai (congés, retour 15/05) il y a plus de 6 ans. Mis à jour il y a plus de 5 ans.

Statut:
Fermé
Priorité:
Normal
Assigné à:
-
Version cible:
-
Début:
11 décembre 2017
Echéance:
% réalisé:

0%

Temps estimé:
Patch proposed:
Oui
Planning:

Description

Sinon les calendriers appliquent leur durée par défaut des evenements


Fichiers


Demandes liées

Lié à Chrono - Development #20556: Dans l'API de réservation, pour les rendez-vous, inclure la date/heure de finFermé11 décembre 2017

Actions

Révisions associées

Révision 93704be4 (diff)
Ajouté par Frédéric Péters il y a plus de 6 ans

api: allow specifying the endtime field in ics URL (#20557)

Historique

#2

Mis à jour par Frédéric Péters il y a plus de 6 ans

  • Lié à Development #20556: Dans l'API de réservation, pour les rendez-vous, inclure la date/heure de fin ajouté
#3

Mis à jour par Frédéric Péters il y a plus de 6 ans

Avec #20556 on aura désormais dans la réponse de Chrono l'heure de fin; reste à voir comment l'utiliser, ça pourrait être magique en se basant sur le nom de la variable mais je trouve ça moyen, le plan serait donc que l'AP ics/<varname> accepte un ?end=<varname2>, end of story.

#4

Mis à jour par Serghei Mihai (congés, retour 15/05) il y a plus de 6 ans

Je n'ai pas de meilleure idée.

#5

Mis à jour par Thomas Noël il y a plus de 6 ans

ics/<varname>/<end_varname> ?

#6

Mis à jour par Frédéric Péters il y a plus de 6 ans

Oui mais ça fait un patch un peu plus compliqué à écrire.

#7

Mis à jour par Frédéric Péters il y a plus de 6 ans

#8

Mis à jour par Thomas Noël il y a plus de 6 ans

potentiellement on peut avoir "end_date_field_varname = None" et donc end_date_field_id sera l'id du dernier field qui n'a pas de varname (parce que if getattr(field, 'varname', None) == end_date_field_varname), et boum.

Donc remplacer

                    if getattr(field, 'varname', None) == end_date_field_varname:
                        end_date_field_id = field.id

par

                    if end_date_field_varname and getattr(field, 'varname', None) == end_date_field_varname:
                        end_date_field_id = field.id

Plus bas ligne 1633, if start_date_field_varname and not start_date_field_id: ici le start_date_field_varname ne sera jamais vide, donc pas nécessaire.

[ Ensuite on a #20613 et je me demande si ce schéma d'URL /ics/varname/varname/ est bien rusé, est-ce que ça serait pas plus clair d'avoir « ics?dstart=var1&dend=var2&username=var2%20var3 » même si tout ça devient un peu trop hackish (et je pense en parallèle que l'export ICS c'est dans chrono qu'on sera plus à l'aise, données métier obligent, cf #20280, sans doute pas la peine de s'épuiser plus dans w.c.s.) ]

#9

Mis à jour par Frédéric Péters il y a plus de 6 ans

Corrections appliquées (ligne 1633 c'était pour l'inutile symétrie, je l'ai retirée).

Par rapport à #20613 (à suivre ailleurs).

#10

Mis à jour par Thomas Noël il y a plus de 6 ans

Eventuellement tu pourrais compléter le test en ajoutant un champ sans varname, et en vérifiant que resp.body.count('DEND') == 0 dans le premier export. Mais bon, vérifier un bug qui n'aura jamais existé...

Bref : ack.

#11

Mis à jour par Frédéric Péters il y a plus de 6 ans

  • Statut changé de En cours à Résolu (à déployer)
commit 93704be427360ec4c57c368ea1abbbd6fc352daa
Author: Frédéric Péters <fpeters@entrouvert.com>
Date:   Mon Dec 11 20:19:36 2017 +0100

    api: allow specifying the endtime field in ics URL (#20557)
#12

Mis à jour par Frédéric Péters il y a plus de 5 ans

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

Formats disponibles : Atom PDF