[spip-dev] bug dans age relatif

Bonjour,

Je suis en train de faire une gestion de calendrier sur SPIP, et j'ai découvert

un bug sur l'age_relatif.

En effet j'ai un boucle qui selectionne un article daté au 1er janvier de
l'année et qui me permet d'avoir une date relative au debut de l'année.

Maintenant si je veux afficher les breves de l'année en cours il pensait mettre

le filtre suivant

BOUCLE_breve(BREVES){id_rubrique=1}{par
date}{age_relatif<1}{age_relatif>-366}>
   #TITRE |#DATE
</BOUCLE_breve>

Hors pour avoir une brève datée du 31 decembre il faut mettre
{age_relatif>-372}
(372 à la place de 366)

De plus les breves datées du 25 au 31 décembre de l'année N - 1 apparraisent
dans l'année N.

Visiblement il ya un problème entre le calcul du nombre de jour dans l'année et

(365) et 372 qui doit correspondre à 12 mois de 31 jours ?

Version 1.4C5

pour voir le calendrier http://www.lmptt.org/spip lien Le calendrier

Attention de site est en construction

N'ayant pas eu de réponse a mon problème j'ai regardé le code de SPIP.
Le problème vient de inc-calcul-squel.php3 ligne 399 (version du 10/06/02)

(LEAST((TO_DAYS('$date_prec')-TO_DAYS($col_date)),(DAYOFMONTH('$date_prec')-
DAYOFMONTH($col_date))+31*(MONTH('$date_prec')-MONTH($col_date))+365*(YEAR
('$date_prec')-YEAR($col_date))))

je ne vois pas pourquoi vous faite un calcul aussi compliqué.
Pourquoi (TO_DAYS('($date)')-TO_DAYS(date_heure) n'est pas suffisant, car dans
mon cas cela marche tres bien.

En fait mon bug vient de ... +31*(MONTH('$date_prec')-MONTH($col_date))+...

Est-ce que le devellopeur de ce bout de code peut m'expliquer

En réponse à jean.marc.baubet@free.fr:

Bonjour,

Je suis en train de faire une gestion de calendrier sur SPIP, et j'ai
découvert

un bug sur l'age_relatif.

En effet j'ai un boucle qui selectionne un article daté au 1er janvier
de
l'année et qui me permet d'avoir une date relative au debut de
l'année.

Maintenant si je veux afficher les breves de l'année en cours il pensait
mettre

le filtre suivant

BOUCLE_breve(BREVES){id_rubrique=1}{par
date}{age_relatif<1}{age_relatif>-366}>
   #TITRE |#DATE
</BOUCLE_breve>

Hors pour avoir une brève datée du 31 decembre il faut mettre
{age_relatif>-372}
(372 à la place de 366)

De plus les breves datées du 25 au 31 décembre de l'année N - 1
apparraisent
dans l'année N.

Visiblement il ya un problème entre le calcul du nombre de jour dans
l'année et

(365) et 372 qui doit correspondre à 12 mois de 31 jours ?

Version 1.4C5

pour voir le calendrier http://www.lmptt.org/spip lien Le calendrier

Attention de site est en construction

_______________________________________________
spip-dev@rezo.net - http://listes.rezo.net/mailman/listinfo/spip-dev

From antoine@rezo.net Mon Jun 10 15:43:34 2002

Return-Path: <antoine@rezo.net>
Received: from rezo.net (localhost [127.0.0.1])
  by miel.brainstorm.fr (Postfix) with SMTP id DAAEC1C04A
  for <spip-dev@rezo.net>; Mon, 10 Jun 2002 15:43:34 +0200 (CEST)
Received: from 80.67.170.17 (proxying for 193.49.124.65)
        (SquirrelMail authenticated user antoine)
        by rezo.net with HTTP;
        Mon, 10 Jun 2002 15:43:34 +0200 (CEST)
Message-ID: <55392.80.67.170.17.1023716614.squirrel@rezo.net>