Yoann NOGUES wrote:
Salut,
je voulais savoir si ca parraissait logique que pour le plugin
#balise_SESSION, on avait a la fois le tableau global auteur_session
mais aussi le $_SESSION ?
ce qui serait illogique, c'est d'avoir deux balises distinctes, ou deux
mécanismes distincts alors qu'on est clairement dans le même besoin et la
même fonctionnalité.
Historique : $auteur_session et le répertoire tmp/sessions/
(antérieurement ecrire/data/), c'est bien de simuler le mécanisme de
session php avec php3 qui ne l'intègre pas. En se limitant à ce dont on
avait besoin. Si vous examinez, un fichier de session spip, c'est un
fichier php avec un tableau associatif dedans, et un cookie qui permet de
récupérer le nom de ce fichier. une session php, c'est un fichier dans
/tmp, avec un tableau associatif sérialisé dedans.
On pourrait d'ailleurs s'amuser (enfin ceux qui veulent hein) à remplacer
intégralement notre mécanisme spipien pas le système de session php,
puisqu'on a aujourd'hui une version minimum php qui est 4.2.0 et je ne
connais pas d'hébergeur qui désactive les sessions php
mais c'est une
autre histoire.
Alors, ensuite, la question est de savoir si on gère une session php pour
tout visiteur, même s'il n'est pas identifié. Ma réponse, c'est que je n'y
vois pas d'inconvénients, seulement, le tableau est bien pratique pour
décider si oui ou non on a un visiteur authentifié. S'il est plein parce
que mergé avec $_SESSION, il faudra tester #SESSION{id_auteur}, bien
l'écrire quelquepart et tout et tout... alors pourquoi pas 
Ce qui manquerait alors, c'est que l'action SPIP puisse être appelée comme
actuellement via un lien (GET pour une valeur) mais qu'on puisse aussi
l'utiliser via un formulaire (POST + gestion de champs multiples)
Enfin, accessoirement, une balise #COOKIE serait peut-être un plus pour
compléter cette fonctionalité.
Fil disait de faire un array_merge dans un message du 03/10( mais dans
le core )
Si tu bosses sur la SVN il y a déjà #SESSION dans le core. Avec une
gestion du cache assez fonctionnelle. L'affectation de $auteur_session
se fait à un moment précis (function verifier_session() dans
ecrire/inc/session.php), c'est sans doute pas difficile de lui faire
ici un array_merge($_SESSION) ?
ca semble correct de l'intégrer au plugin ? ( en replacant bien sur ce
array_merge pour éviter la surcharge )
En SVN et dans ce plugin, l'implémentation ne sera pas la même (on ne gère
pas le cache de la même manière) mais ça serait cool qu'on est le même
niveau de fonctions. On fait d'abord sur le plugin pour SPIP 1.9.2, quand
ça marche et qu'on est d'accord sur l'API, on pourra mettre ça dans le
core, je pense.
--
James