[spip-dev] Probl è me #DATE dans boucle rubrique

Salut,

ça devrait être corrigé dans la dernière version CVS.

Amicalement

Antoine.

Roustoubi wrote:

Salut Antoine,

Non, ça n'est pas corrigé, ou du moins ça ne fonctionne toujours pas comme
il faut. Je n'ai pas les connaissances pour aider à debugger, mais je vais
au moins essayer d'expliquer ce que je fait et le résultat que j'obtiens.
Comme je bidouille en même temps que je travaille sur les squelettes, que je
suis la mise à jour de SPIP par CVS, que je fais, défais et refais des
trucs, j'ai recommencé une base à zéro pour voir le comportement de la
balise sans avoir de problèmes extérieurs.

Voici ma boucle qui détecte la mise à jour globale du site :
<BOUCLE_update_globale (RUBRIQUES) {tout} {par date}{inverse}{0,1}>
#DATE
</BOUCLE_update_globale>
Et pour avoir la mise à jour d'une rubrique en particulier, je remplace
{tout} par {id_rubrique}, correct ?

Pour vérifier ce que me donne #DATE, j'ai un autre squelette "listing" qui
me donne tous les articles, toutes les brèves et tous les sites avec leur
date et leur rubrique (et secteur).

Je pars d'une base vide, donc je créé une Rubrique1, et pour l'activer, j'y
écris Article1. Le listing me donne :
Article1 2002-08-25 12:00:04 () 1 (1)
Et update_globale me donne : Rien, Nada entre <body> et </body> ! (et c'est
idem pour update_rubrique avec id_rubrique=1, ça au moins c'est logique)

Je crée une Rubrique2, sous-rubrique de 1 et j'y écrit Article2. Listing me
donne :
Article2 2002-08-25 13:16:11 () 2 (1)
Article 1 2002-08-25 12:00:04 () 1 (1)
Et update toujours rien.

Passons aux sites
Je référence Site1 dans rubrique1
ARTICLES
Article2 2002-08-25 13:16:11 () 2 (1)
Article1 2002-08-25 12:00:04 () 1 (1)
BREVES
SITES
Site1 2002-08-25 13:19:49 1 (1)

Ah, ça y est, sur update_globale j'ai 2002-08-25 13:19:49, idem pour
id_rubrique=1 et toujours rien pour id_rubrique=2

Essayons une breve
ARTICLES
Article2 2002-08-25 13:16:11 () 2 (1)
Article1 2002-08-25 12:00:04 () 1 (1)
BREVES
Brève1 2002-08-25 13:23:55 1
SITES
Site1 2002-08-25 13:19:49 1 (1)

Ça roule pour update_globale et id_rubrique=1, tjrs rien pour rubrique 2

Maintenant, si je reposte un article3 dans rubrique1 (on ne sait jamais),
ben ça ne change rien !

Si je référence un Site2 dans rubrique2, c'est bien mis à jour pour global,
pour id-rubrique=1 et (enfin...) id_rubrique=2

Si je poste une nouvelle breve2 dans rubrique1, l'update de id_rubrique=1
est bien mis à jour, mais pas celui de id_rubrique=2, ce qui est bien le
comportement normal.

Bref, désolé pour ce long mail mais je voulais essayer d'être le plus clair
possible. En gros, les articles ne sont (toujours) pas pris en compte pour
la mise à jour de la valeur. Je veux bien continuer à jouer le cobaye, vu
que je ne peux être utile à peu près qu'à ça : bon courage en tout cas !

Amicalement

-- Roustoubi

[...] Suite de mes essais

Je référence un site3 dans la rubrique2 (il n'y a que les sites et les
brèves qui fonctionnent en l'état, et je ne veux pas être dans un secteur).
J'ai donc le listing suivant :
ARTICLES
Article3 2002-08-25 13:26:14 () 1 (1)
Article2 2002-08-25 13:16:11 () 2 (1)
Article 1 2002-08-25 12:00:04 () 1 (1)
BREVES
Brève2 2002-08-25 13:33:09 1
Brève1 2002-08-25 13:23:55 1
SITES
Site3 2002-08-25 15:26:28 2 (1)
Site2 2002-08-25 13:28:19 2 (1)
Site1 2002-08-25 13:19:49 1 (1)

Or ma boucle update me répond que la rubrique à jour est Rubrique1 le
2002-08-25 15:26:28. Quésaco me demande-je ? Je regarde donc les balises
#DATES de mes rubriques et j'ai :
Rubrique1 2002-08-25 15:26:28 1 (1)
Rubrique2 2002-08-25 15:26:28 2 (1)

Donc la rubrique 1 a hérité de la date de modif de sa sous-rubrique2 ! Je ne
sais pas si c'est dû au fonctionnement bancal de la fonction ou si ça a été
conçu comme ça, mais ça ne me semble pas judicieux. L'intêret que je vois à
une telle boucle est : la dernière modif dans cette rubrique (et/ou ses
sous-rubriques dixit la doc et ça c'est très bien) a été effectuée tel jour
dans telle rubrique et voici un lien pour accéder directement à cette
rubrique. Or, dans le contexte, le lien est vers rubrique1 alors qu'il
devrait être vers rubrique2.

Any comments ?

-- Roustoubi

Encore moi :wink:

J'ai créé une rubrique3 dans laquelle j'ai référencé un site4.
Ce coup-ci, la rubrique n'est pas mise à jour !

SITES
Site4 2002-08-25 17:51:19 3 (1)
Site3 2002-08-25 15:26:28 2 (1)
Site2 2002-08-25 13:28:19 2 (1)
Site1 2002-08-25 13:19:49 1 (1)
RUBRIQUE
Rubrique1 2002-08-25 15:26:28 1 (1)
Rubrique2 2002-08-25 15:26:28 2 (1)
Rubrique3 3 (1)

Je me suis dit que ça voulait dire que c'était pris en compte pour les
rubriques de premier et deuxième niveau, mais qu'après ça coinçait. Pas du
tout puisque j'ai crée une rubrique5 dans la rubrique1, j'y ai publié un
site et là encore ça ne marche plus. Arggghhh ...

SITES
Site6 2002-08-25 18:05:11 6 (1)
Site4 2002-08-25 18:01:53 3 (1)
Site3 2002-08-25 18:01:21 2 (1)
cd 2002-08-25 17:57:52 5 (1)
Site5 2002-08-25 17:56:46 4 (1)
Site1 2002-08-25 13:19:49 1 (1)
RUBRIQUE
Rubrique1 2002-08-25 18:01:21 1 (1)
Rubrique2 2002-08-25 18:01:21 2 (1)
Rubrique3 3 (1)
Rubrique4 4 (1)
Nouvelle rubrique 5 (1)
Rubrique5 6 (1)

Pour info, j'ai oublié de préciser, mais je ne fait pas une fixation
là-dessus : c'est juste que je travaille sur mes squelettes (avec
$delais=0), et que, pour vérifier le comportement des conditions dans
diverses situations, je les crée.