[SPIP Zone] [Spip-zone-commit] r13652 - /_plugins_/_stable_/balise_session/session.html

Salut James,

Juste pour savoir, est-ce que tu as aussi essayé d'utiliser spip.php
en mettant en en-tête de la noisette incluse l'info que c'est une
noisette de session, histoire d'éviter cet INCLURE(session.php) ?

C'est juste pour info, pour savoir quelles sont éventuellement les
raisons de ta conception.

En tout cas c'est prometteur !

Le 19/07/07, james@rezo.net<james@rezo.net> a écrit :

Author: james@rezo.net
Date: Thu Jul 19 10:41:14 2007
New Revision: 13652

Log:
une page de test qui s'appuie sur le nouveau procede.

Modified:
   _plugins_/_stable_/balise_session/session.html

Modified: _plugins_/_stable_/balise_session/session.html

--- _plugins_/_stable_/balise_session/session.html (original)
+++ _plugins_/_stable_/balise_session/session.html Thu Jul 19 10:41:14 2007
@@ -20,11 +20,6 @@

                       <div class="cartouche">
                               <h1 class="titre">Balise #[(#REM)]SESSION</h1>
- <dl class='spip_document_0 spip_documents spip_documents_right' style='float:right;'>
- <dt><a href="http://files.spip.org/spip-zone/balise_session.zip&quot; type="application/zip" title='Zip - 9.2 ko'><img src='#CHEMIN{vignettes/zip.png}' width='47' height='48' alt='Zip - 9.2 ko' /></a></dt>
- <dt class='spip_doc_titre' style='width:120px;'><strong>plugin balise_session</strong></dt>
- <dd class='spip_doc_descriptif' style='width:120px;'>T&eacute;l&eacute;chargez, d&eacute;zippez &agrave; la racine de votre site et activez le plugin Balise Session</dd>
- </dl>
                               <div class="chapo">La balise #[(#REM)]SESSION fonctionne comme
                               <a href="SPIP 1.9 - SPIP; class="spip_out">
                               #[(#REM)]CONFIG
@@ -48,7 +43,7 @@
                                               </code></p>
                                               <h3 class="titre">Afficher des informations</h3>
                                               <div class="texte">
- <INCLURE(session.php){fond=affiche_donnees}>
+ <INCLURE{fond=affiche_donnees}>
                                               </div>
                                               <br class="nettoyeur" />
                                       </li>
@@ -61,7 +56,7 @@
                                               </code></p>
                                               <h3 class="titre">Conditionner un affichage</h3>
                                               <div class="texte">
- <INCLURE(session.php){fond=affiche_condition}>
+ <INCLURE{fond=affiche_condition}>
                                               </div>
                                               <br class="nettoyeur" />
                                       </li>
@@ -74,73 +69,13 @@
                                               </code></p>
                                               <h3 class="titre">Conditionner un affichage selon le satut</h3>
                                               <div class="texte">
- <INCLURE(session.php){fond=affiche_condition_statut}>
+ <INCLURE{fond=affiche_condition_statut}>
                                               </div>
                                               <br class="nettoyeur" />
                                       </li>

                               </ul>
- </div>

- <div class="texte">
- <h3 class="spip">Installation</h3>
- <ul class="spip">
- <li class="spip"> T&eacute;l&eacute;chargez l&#8217;archive ci-avant,</li>
- <li class="spip"> d&eacute;compressez l&agrave; &agrave; la racine de votre site,</li>
- <li class="spip"> dans la page de gestion des plugin de votre site, activez le plugin Balise Session</li>
- </ul>
- <p class="spip">Vous pourrez acc&eacute;der &agrave; cette même documentation sur <a class="spip_in" href="#URL_PAGE{session}">votre propre site</a></p>
- <h3 class="spip">Principe</h3>
- <p class="spip">Pour reconnaître le visiteur authentifi&eacute;,
- on s'appuie sur le m&eacute;canisme de session de SPIP.
- Toutefois, comme cette valeur est affich&eacute;e
- dans un squelette, on doit aussi tenir compte du cache et
- empêcher que les donn&eacute;es d'un visiteur
- soient utilis&eacute;e par les suivants, le temps de la dur&eacute;e de vie de
- la page.
- </p>
- <p class="spip">Deux moyens peuvent être employ&eacute;s&nbsp;:</p>
- <ul class="spip">
- <li class="spip"> D&eacute;finir &agrave; 0 la dur&eacute;e de vie du cache de
- chaque page o&ugrave; on affichera ou testera le contenu de la
- balise #[(#REM)]SESSION. C&#8217;est une mauvaise id&eacute;e en mati&egrave;re de
- performance globale pour le site</li>
- <li class="spip"> Cr&eacute;er une page de cache de chaque page
- pour chaque visiteur authentifi&eacute;. Ainsi, les visiteur
- acc&egrave;dent &agrave; des pages distinctes calcul&eacute;es moins souvent.
- C&#8217;est le principe retenu dans cette page.</li>
- </ul>
- <p class="spip">On introduit donc, en plus de la balise, un
- script <code class='spip_code' dir='ltr'>session.php</code>,
- appelable par la balise standard <code class='spip_code' dir='ltr'>&lt;INCLURE()&gt;</code>.
- Ce script est un clone du script standard de spip
- (<code class='spip_code' dir='ltr'>spip.php</code>) &agrave; ceci-pr&egrave;s
- qu'il d&eacute;fini un <a href="http://doc.spip.org/@marqueur-de-squelette&quot; class="spip_out">marqueur de squelette</a>
- bas&eacute; sur l'identifiant du visiteur, s'il est d&eacute;fini. </p>
- <h3 class="spip">Appel sp&eacute;cifique des noisettes</h3>
- <p class="spip">On fera appel &agrave; la balise #[(#REM)]SESSION dans
- des squelettes inclus (qu'on appelle aussi noisettes...)</p>
- <p class="spip">
- <code class='spip_code' dir='ltr'>&lt;INCLURE(session.php){fond=page_speciale}&gt;</code>
- </p>
- <p class="spip">o&ugrave; <code class='spip_code' dir='ltr'>page_speciale.html</code> contiendra l'un au l'autre
- des exemples ci-dessus, ou de leurs combinaisons, ou d'autres
- &eacute;l&eacute;ments issus de cette page de d&eacute;monstration, ou bien encore,
- de votre propre cru !
- <code class='spip_code' dir='ltr'>:D</code></p>
- <h3 class="spip">Gestion de valeurs suppl&eacute;mentaires</h3>
- <p class="spip">Il est possible de g&eacute;rer des valeurs suppl&eacute;mentaires à celles contenues dans le tableau <tt>$auteur_session</tt>.
- Pour cela, il faut ajouter le paramètre <code class='spip_code' dir='ltr'>{session}</code> à l'appel de squelettes inclus.
- Dès lors, la balise #[(#REM)]SESSION s'appuiera aussi sur le tableau associatif <tt>$_SESSION</tt> php standard.</p>
- <p class="spip">Exemple : <code class='spip_code' dir='ltr'>&lt;INCLURE(session.php){session}{fond=boite_session}&gt;</code></p>
- <p class="spip">Ce plugin introduit pour ces valeurs, une action permettant de cr&eacute;er/affecter une valeur en lui pr&eacute;cisant un nom,
- ou de vider cette valeur. Pour faire appel à cette action, on utlisera soit un formulaire ad hoc, soit, dans ce type pr&eacute;cis de noisettes, la balise #[(#REM)]URL_ACTION_AUTEUR de la manière suivante:</p>
- <p class="spip"><code class='spip_code' dir='ltr'>&lt;a href="[(#[(#REM)]URL_ACTION_AUTEUR{session,[(#[(#REM)]ENV{session})]-affecter-nom-valeur,url})]"&gt;<br />texte du lien<br />&lt;/a&gt;</code><br />
- ou nom sera le code employé pour restituer la valeur via la notation #[(#REM)]SESSION{nom},<br />
- valeur pourra être une balise spip ou une constante,<br />
- url, l'adresse de destination du lien, #[(#REM)]SELF ou tout autre adresse imaginable.</p>
- <p class="spip">ou bien</p>
- <p class="spip"><code class='spip_code' dir='ltr'>&lt;a href="[(#[(#REM)]URL_ACTION_AUTEUR{session,[(#[(#REM)]ENV{session})]-vider-nom,url})]"&gt;<br />texte du lien<br />&lt;/a&gt;</code></p>
                       </div>

               </div><!-- fin contenu -->
@@ -148,23 +83,10 @@
               [(#REM) Menu de navigation laterale ]
               <div id="navigation">
                       <div class="divers">
- <INCLURE(session.php){fond=boite_connexion}>
+ <INCLURE{fond=boite_connexion}>
                       </div>

- <INCLURE(session.php){fond=boite_session}{session}>
-
- <INCLURE(session.php){fond=boite_donnees}{session}>
-
- <div class="breves">
- <h2 class="menu-titre">Pour plus d'informations</h2>
- <ul>
- <li>Auteur&nbsp;: James (c) 2006-2007</li>
- <li>Licence&nbsp;: GNU/GPL (code &amp; doc)</li>
- <li>Sugg&eacute;rer des am&eacute;liorations&nbsp;: <a href="http://listes.rezo.net/mailman/listinfo/spip-zone&quot;&gt;spip\-zone&lt;/a&gt;&lt;/li&gt;
- <li>Conseils d'utilisation&nbsp;: <a href="http://listes.rezo.net/mailman/listinfo/spip&quot;&gt;liste utilisateurs</a></li>
- <li>Int&eacute;gration dans un squelette sans passer par l'installation du plugin <a href="About the Sarka-Spip CMS Plugin;
- </ul>
- </div>
+ <INCLURE{fond=boite_donnees}>
               </div>

       </div><!-- fin conteneur -->

_______________________________________________
Spip-zone-commit@rezo.net - http://listes.rezo.net/mailman/listinfo/spip-zone-commit

--
Nicolas "Brush" HOIZEY
Clever Age : http://www.clever-age.com/
Gastero Prod : http://www.gasteroprod.com/
Photos : http://www.flickr.com/gp/38608514@N00/M1c002

Nicolas Hoizey a écrit :

Salut James,

Juste pour savoir, est-ce que tu as aussi essayé d'utiliser spip.php
en mettant en en-tête de la noisette incluse l'info que c'est une
noisette de session, histoire d'éviter cet INCLURE(session.php) ?

c'est une des idées, oui.

le truc, c'est que session.php utilisait tout simplement les marqueurs de cache et qu'il faut maintenant les remplacer par une autre idée.
--
James

> Juste pour savoir, est-ce que tu as aussi essayé d'utiliser spip.php
> en mettant en en-tête de la noisette incluse l'info que c'est une
> noisette de session, histoire d'éviter cet INCLURE(session.php) ?

c'est une des idées, oui.
le truc, c'est que session.php utilisait tout simplement les marqueurs
de cache et qu'il faut maintenant les remplacer par une autre idée.

Il serait donc peut-être possible de regarder comment #CACHE est géré
pour y ajouter un paramètre, #CACHE{3600;session} par exemple, non ?

--
Nicolas "Brush" HOIZEY
Clever Age : http://www.clever-age.com/
Gastero Prod : http://www.gasteroprod.com/
Photos : http://www.flickr.com/gp/38608514@N00/M1c002