Changements entre 2.1.23 et 2.1.24

Fichiers du core

29 fichiers impactés :
-  ecrire/action/instituer_auteur.php
-  ecrire/action/logout.php
-  ecrire/action/redirect.php
-  ecrire/action/supprimer.php
-  ecrire/balise/formulaire_inscription.php
-  ecrire/balise/url_.php
-  ecrire/exec/controle_forum.php
-  ecrire/exec/sites.php
-  ecrire/inc/actions.php
-  ecrire/inc/agenda.php
-  ecrire/inc/auth.php
-  ecrire/inc/config.php
-  ecrire/inc/filtres.php
-  ecrire/inc/filtres_images_lib_mini.php
-  ecrire/inc/flock.php
-  ecrire/inc/lien.php
-  ecrire/inc/presentation.php
-  ecrire/inc/regler_moderation.php
-  ecrire/inc/rubriques.php
-  ecrire/inc/session.php
-  ecrire/inc/signatures.php
-  ecrire/inc/utils.php
-  ecrire/public/assembler.php
-  ecrire/public/compiler.php
-  ecrire/public/composer.php
-  ecrire/public/criteres.php
-  ecrire/public/decompiler.php
-  ecrire/public/phraser_html.php
-  ecrire/typographie/fr.php
-  ecrire/req/pg.php
-  prive/formulaires/editer_auteur.php
-  squelettes-dist/formulaires/inscription.php

révisions 20943, 20936
ecrire/inc/flock.php

compat PHP 5.5 invalider le cache opcache dans ecrire_fichier.

révision 20926
ecrire/public/assembler.php
ecrire/public/composer.php

ne pas se laisser embrouiller par un header HTTP/1.1 301 Moved Permanently.

révision 20907
ecrire/inc/config.php

Activer l’ajout de documents pour les articles par défaut à l’installation, ce n’était plus le cas depuis spip 2.0.

révision 20904
ecrire/inc/signatures.php
ecrire/inc/presentation.php

Une scorie XML et du code mort.

révision 20883
ecrire/inc/agenda.php

Dans le cas RDV de l’agenda, on donnait le nom au lieu de donner le mail. Comme de plus cette jointure n’est utile que si le mode d’affichage retient cet événement, on déporte le calcul du mail à partir de l’ID dans la fonction d’affichage du champ ATTENDEE, où elle est alors vraiment utile.

révision 20882
ecrire/exec/sites.php

Code mort depuis le passage en squelette.

révision 20880
prive/formulaires/editer_auteur.php
ecrire/lang/ecrire_fr.php

ne pas permettre n’importe quoi en url de site.

révision 20875
ecrire/inc/auth.php

Sur les (très) gros messages de forum, la variable $retour n’existe pas.

révision 20874
ecrire/action/logout.php

Logout en 2 étapes pour eviter les CSRF en évitant l’ajout de ask_php_auth déclarée obsolète car incompatible avec Ldap.

révisions 20868, 20869, 20870
ecrire/inc/filtres_images_lib_mini.php

imagepalettetotruecolor, double définition en php 5.5.

révisions 20864, 20863, 20862
ecrire/inc/agenda.php

Ajout d’un ID de forme D$annee-$mois-$jour dans les balises TD du calendrier, pour profiter de la version 1.5.2 de Rainette.

révision 20855
ecrire/inc/regler_moderation.php

Lorsque les forums sont autorisés sur un article et qu’au moins un message a été posté, sa page privée comporte un lien vers la gestion de ces messages, page offrant un lien vers le flux RSS correspondant. Mais l’abonnement à ce flux est sohaitable avant même que le premier message soit posté, aussi on ajoute ce 2e lien dans la page privée, uniquement pour ce cas ce précis afin de ne pas alourdir la présentation.

révision 20852
ecrire/typographie/fr.php
ecrire/inc/utils.php
ecrire/inc/lien.php
ecrire/inc/filtres.php

Introduction de la constante _PROTOCOLES_STD, prédéfinissable dans "mes_options.php", afin d’indiquer quels extraits de chaînes de langue comportant un " :" doivent être identifiés comme étant des protocoles.

révision 20851
ecrire/action/supprimer.php
ecrire/inc/rubrique.php

Depuis toujours, SPIP oubliait de retirer de la table spip_mots_rubriques les entrées concernant une rubrique qu’on supprime. Correction et ajout d’un nettoyage de cette table dans la fonction de mise au carré des rubriques.

révision 20834
ecrire/inc/agenda.php

Ajout de deux constantes DEFAUT_DECALE et DEFAUT_TAILLE_HEURE
pour paramétrer plus facilement le placement et la taille des événements dans le code HTML des calendriers.

révision 20803
ecrire/public/assembler.php

La fonction surchargeable public_previsualisation pouvant retourner du PDF, la fonction f_admin du pipeline affichage_final ne doit insérer les boutons d’admin que si le texte final est du HTML.

révision 20786
ecrire/inc/actions.php

Certains retours d’action débouchaient sur une mauvaise adresse.

révision 20782
ecrire/action/instituer_auteur.php

L’action instituer auteur ne transmettait pas correctement son tableau de paramètres.

révision 20778
ecrire/inc/utils.php

Éviter des Notices quand on définit des éléments qui peuvent avoir été déjà définis dans mes_options.php.

révision 20775
ecrire/public/compiler.php
ecrire/public/decompiler.php
ecrire/public/phraser_html.php

Il est possible d’écrire dans un squelette des chaînes de langues dont le nom du module et/ou de l’item est calculé, grâce aux syntaxes suivantes :

<:{=#ENV{module_item}}:>
<:{=#ENV{module}item}:>

Cela remplace avantageusement l’utilsation de la fonction _T sous forme de filtre, que LangOnet ne sait pas repérer.

révisions 20769, 20827, 20830
ecrire/balise/url_.php

URL_ACTION_AUTEUR gérait mal un premier argument vide.

révision 20762
ecrire/action/redirect.php

SPIP compile parfois des squelettes où la globale profondeur_url est incorrecte (Lorsqu’on place dans ecrire/.htaccess une redirection comme "ErrorDocument 403 / ?page=403"). On corrige en transitant par une première redirection au niveau de la racine. C’est ce que fait déjà le script action/redirect.php, sauf qu’il est restreint aux URL propres, ce qui n’est pas forcément le cas ici. On élargit donc ce script pour qu’il accepte aussi un paramètre "page", traité comme l’autre (en particulier pour la sécu). Il suffit alors de mettre dans le .htacces non plus :

ErrorDocument 401 /?page=401

mais

ErrorDocument 401 /?action=redirect&page=401&status=401

révision 20697
ecrire/exec/controle_forum.php

Micro-modif dans la page de contrôle des forums : mettre un ancre vers le message de forum même dans le cas interne ; prendre en compte les noms de site de longueur 3 ; decouper en 2 la fonction principale afin de permettre facilement une surcharge, notamment l’argument "type".

révision 20678
ecrire/req/pg.php

Mauvaise production PostGres (IN vide).

révision 20672
ecrire/public/criteres.php

SPIP permettait de comparer erronément les doublons collectés dans une table SQL avec les clés primaires d’une autre table. On peut à présent préciser quelle est cette table comme deuxième argument du critère doublon, ce qui évite l’erreur et permet d’écrire en particulier le squelette suivant, qui repère le dernier message posté dans une collection d’articles donnés (ici par une branche) :

<BOUCLE_Q(ARTICLES){branche}{doublons A} />
<BOUCLE_F(FORUMS){!doublons A,articles}{!par date}{0,1}>
Dernier message: #DATE_HEURE
</BOUCLE_F>

révision 20664
squelettes-dist/formulaires/inscription.php

Éviter des warnings (en php 5.4) lors d’une inscription si les mails ne peuvent pas partir.

révision 20662
ecrire/inc/session.php

Éviter des notice PHP sur la lecture de clés de sessions inexistantes.

révision 20611
ecrire/balise/formulaire_inscription.php
ecrire/inc/filtres.php

tester_config() avait changé de rôle en 2.1.23, on revient au comportement habituel.

Auteur Committo, Ergo Sum., denisb Publié le : Mis à jour : 25/04/23