Suite du sujet [agenda] Éviter des notices undefined :
Je reviens sur ce commit qui pète le filtre agenda_moisdecal
. En effet, le filtre accepte des dates comme 2022-04, dans ce cas, il fixe le jour à 1. Sauf qu’avec ce commit, le cas en question est pété, car recup_date
renvoie un jour qui vaut ''
cf https://git.spip.net/spip/spip/blame/branch/master/ecrire/inc/filtres_dates.php#L270
Depuis ton commit, le test sur isset est validé car ''
c’est bien set, et donc le filtre ne fixe plus le jour à 1, ce qui fait que pour une date comme 2022-04, le filtre renvoie dans tous les cas :
2021-12-31 01:01:01.
Mis à part le fait que tu aies envoyé la modification direct dans master sans passer par une PR (je n’en trouve aucune trace), j’aimerais comprendre dans quel cas tu avais une notice. Car, on y fait pour commencer $date_array = recup_date($date);
qui applique forcer_jour
par défaut, ce qui applique le traitement suivant : « pour tout le temps renseigner un jour ou un mois (le 1) s’ils ne sont pas indiqués dans la date ». Il semble donc que le jour et le mois sont toujours renseigné, alors pourquoi les tester avec isset
?
Bref, en attendant, j’ai roolback la modification sur le site où on m’a signalé le bug, mais je pense qu’il faut corriger à la source, en passant par une PR bien sûr (sinon je revert direct dans le master, ça peut accélérer les choses aussi ^^).
ping @RealET