seenthis / seenthis_squelettes

plugin "squelettes" de seenthis
11 stars 6 forks source link

Ne plus surcharger le code PHP du formulaire login #277

Closed brunob closed 2 years ago

brunob commented 2 years ago

Si on regarde l'historique du fichier en question https://github.com/seenthis/seenthis_squelettes/commits/master/formulaires/login.php on voit que la seule différence fonctionnelle avec le core est https://github.com/seenthis/seenthis_squelettes/commit/c68482607386ab4c50a1d1874c00f9a4cad17dc0 et que beaucoup de commits sont là uniquement pour mettre à jour notre surcharge afin "de suivre le core".

Il doit être possible de se débarrasser de ce fichier, et d'ajouter la requête sql_update('spip_auteurs', array('en_ligne' => 'NOW()'), 'id_auteur='.$auteur['id_auteur']); en passant par le pipeline trig_auth_trace de SPIP qui semble bien adapté pour ça cf https://git-mirror.spip.net/spip/spip/-/blob/3.2/ecrire/inc/auth.php#L336

brunob commented 2 years ago

Bon, je découvre que auth_trace() et son pipeline ne sont appelés que lors du login vers l'espace privé (en plus du logout bien sûr), donc ça n'est pas le bon candidat pour ça. Autre piste, passer par le pipeline preparer_visiteur_session ?

brunob commented 2 years ago

Une autre piste serait de corriger le bug à la source/changer le comportement de SPIP afin que auth_trace soit appelée même lors d'un login dans le public en remontant son appel juste avant https://git.spip.net/spip/spip/src/commit/9b90f1b8a15bcd9e1e25fe9a37e5bad516b248b2/ecrire/inc/auth.php#L259 => mais non cf https://git.spip.net/spip/spip/issues/3480 ^^

On retombe donc sur la proposition d'utiliser le plugin date_connexion pour tout ça cf https://github.com/seenthis/seenthis_squelettes/issues/164#issuecomment-781542891