<font face="Arial">--------------------------<br>
  NPDS 4.8 patch 2<br>
<br>
<b>Ce Patch est livr avec une installation automatique des modifications pour MySql : 4.8-P2.php</b><br><br>
Ce patch contient des corrections mais aussi de nombreuses volutions et optimisations et notamment :<br>
--------------------------<br>
<b><br>
Corrections :</b><br>
0 - les commentaires anonymes dans les sondages<br>
1 - erreurs dans la page stats.php<br>
2 - Correction ergonomique ou codage HTML pour le support de nouveaux thmes<br>
3 - Optimisation des requtes Mysql sur les forums,<br>
4 - Optimisation du code (mainfile notamment) : un grand merci  Gawax<br>
5 - Gnralisation de la fonction removeHack (anti css)<br>
6 - Correction des noms des tables faqAnswer et faqCategory et du code associ<br>
7 - Fusion du fichier categories.php avec index.php<br>
8 - les adresses email du type <b> .info</b> sont maintenant correctement gres.<br>
9 - + pleins de petites corrections<br>
<br>
<br>
<b>Evolutions :</b><br>
1 - Les pages statiques peuvent maintenant tre utilises comme pages d'impression (page &quot;blanche&quot;) avec l'option npds= <b> -1</b><br>
<br>
2 - L'administrateur peut maintenant remettre une news en premire position (voir Admin / Editer un Article option remettre une News en premire position)<br>
<br>
3 - Les modules Admin : LNL, SuperCache et Mode Overload disposent d'une aide en ligne<br>
<br>
4 - Le module Mode Overload - SuperCache dispose d'une nouvelle option permettant de vider le rpertoire cache.<br>
<br>
5 - Les sondages ont t en partie remanis et l'isoloir n'existe plus.<br>
<br>
6 - Les Rubriques disposent de la mme gestion des membres et groupes que le reste de NPDS.<br>
<br>
7 - Vous pouvez maintenant rediriger un Topic d'un forum sur un lien HTTP (uniquement pour le modrateur)<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Cela vous permet de crer un forum ne contenant que des Topics redirigs sur d'autres sites par exemple (centralisation de forum)<br>
<br>
8 - Les forums disposent maintenant d'un nouveau Mode : les formulaires (voir SFORM)<br>
<br>
9 - Administration :<br>
&nbsp;&nbsp; - La maintenance des forums dispose d'une facilit vous permettant de supprimer rapidement beaucoup de Topics.<br>
&nbsp;&nbsp; - Les modules SaveMysql et OptimySql ont volu (merci EBH)<br>
&nbsp;&nbsp; - Le MetaTags Manager vous permet maintenant de grer Les metas de votre site (avec aide en Ligne) : un grand Merci  EBH<br>
<br>
10 - Gestion des blocs&nbsp;:<br>
&nbsp;&nbsp;&nbsp;&nbsp;NPDS dispose d'un syst&egrave;me de block &eacute;tendu capable d'afficher ou d'ex&eacute;cuter beaucoup de choses
:<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; - HTML<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; - Javascript<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; - Code PHP et/ou SSI (Serveur Side Include)<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; - Fonction PHP et/ou de NPDS<BR>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp; La seule possibilit&eacute; d'inclure du <B>code</B> (en dehors du html et du javascript) est de respecter la syntaxe suivante :</FONT>
<blockquote>
<UL>
<LI><FONT face="Arial">Pour du code PHP et/ou SSI :
</FONT></LI></UL>
<DIR>
<DIR>
<B>
<li><P><font face="Arial">include#votre_repertoire/votre_fichier.php </font></B> <FONT face="Arial"> (sans ', sans ").<BR>
Ce fichier doit &ecirc;tre du php et le retour doit obligatoirement se faire dans la variable <B>$content</B>.
</FONT></P>
</li>
</DIR>
</DIR>

<UL>
<LI><FONT face="Arial">Pour des Fonctions PHP et/ou des fonctions de NPDS :
</FONT></LI></UL>
<DIR>
<DIR>
<B>
<li><P><font face="Arial">function#votre_fonction </font></B> <FONT face="Arial"> =&gt; function#Xblock (sans ', sans ", sans () et sans ;).<BR>
<BR>
Si votre fonction dispose de param&egrave;tres :<BR>
<B>function#votre_fonction</B> =&gt; function#XNews (sans ', sans ", sans () et sans ;).<BR>
<B>params#votre_param</B> =&gt; params#5,10,false (sans ', sans " mais s&eacute;par&eacute;s par des virgules).
</FONT></P>

</li>
<li>

<P><FONT face="Arial">Par exemples&nbsp;:
</FONT> </P></li>
</DIR>
<blockquote>

<P><FONT face="Arial">function#category<BR>
<BR>
function#oldNews<BR>
params#$storynum<BR>
<BR>
function#RecentForumPosts<BR>
params#Forums Infos,15,0,false,10,false,-: <BR>
</FONT>
</P>
</blockquote>
</DIR>


<UL>
<LI><FONT face="Arial">Ces lignes doivent &ecirc;tre les seules de votre block et cette syntaxe est la seule support&eacute;e !
</FONT> </LI></UL>


</blockquote>
<P><FONT face="Arial">
&nbsp;&nbsp;&nbsp;&nbsp; L'exemple le plus marquant est certainement l'impact sur le header.php et le footer.php de votre thme ou se<br>
&nbsp;&nbsp;&nbsp;&nbsp; trouvent les fonctions qui sont charges d'afficher les blocs.
</FONT></P>
<P><font face="Arial">
&nbsp;&nbsp;&nbsp;&nbsp; Prenons un exemple avec le header.php ou l'on trouve les fonctions suivantes :<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; instant_members_message();<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; makeChatBox();<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; RecentForumPosts(&quot;ForumsInfos&quot;,10,0,false,10,false,&quot;-: &quot;);<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; topdownload();<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; adminblock();<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; leftblocks();<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ephemblock();<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Site_Activ();<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; headlines();<br>
&nbsp;&nbsp;&nbsp;&nbsp; Normalement pour modifier l'ordre des blocs ou pour ne plus afficher un bloc il fallait soit modifier l'ordre<br>
&nbsp;&nbsp;&nbsp;&nbsp; d'appel de ces fonctions soit mettre en commentaire une de ces fonctions (// devant)</font></P>
<font face="Arial">
&nbsp;&nbsp;&nbsp;&nbsp; Maintenant imaginez la situation suivante o dans le gestionnaire de blocs de gauche je cre les blocs suivants :<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; bloc index 0 contenant function#instant_members_message<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; bloc index 1 contenant function#makeChatBox<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; bloc index 2 contenant function#>RecentForumPosts<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; params#ForumsInfos,10,0,false,10,false,-:<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; bloc index 3 contenant function#topdownload<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; bloc index 4 contenant function#adminblock<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; bloc index 5 contenant function#ephemblock<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; bloc index 6 contenant function#Site_Activ<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; bloc index 7 contenant function#headlines<br>
<br>
&nbsp;&nbsp;&nbsp;&nbsp; Imaginez encore que je supprime les appels  ces fonctions dans le fichier header.php en ne laissant que les lignes suivantes :<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; global $powerpack;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (!isset($powerpack)) {include (&quot;powerpack.php&quot;);}<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; leftblocks();<br>
<br>
&nbsp;&nbsp;&nbsp;&nbsp;<b>Le rsultat</b> : l'interface de votre site n'a pas chang mais maintenant vous pouvez ordonner les blocs  votre guise<br>
&nbsp;&nbsp;&nbsp;&nbsp;(en changeant l'index), ne les faire apparatre que pour les membres ou que pour certains groupes de membres et les faire<br>
&nbsp;&nbsp;&nbsp;&nbsp;disparatre (en mettant par exemple un numro de groupe ou il n'y a personne ...).<br><br>
&nbsp;&nbsp;&nbsp;&nbsp;Un autre avantage, changer de thme sans changer l'ordre de prsentation de votre site.<br>
<br>
</font><FONT face="Arial"><B><br>
</B>11 - Gestion de la langue dorigine :</FONT></p>
<P><FONT face="Arial">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; De part son origine, NPDS h&eacute;rite comme langue dorigine de langlais.
</FONT></P>

<P><FONT face="Arial">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; La &quot;&nbsp;client&egrave;le&nbsp;&quot; de NPDS &eacute;tant pour la grande majorit&eacute; Francophone, la d&eacute;cision a &eacute;t&eacute; prise de mettre le code<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; de NPDS en ad&eacute;quation avec cet &eacute;tat de fait&nbsp;:
</FONT></P>
<UL>
<LI><FONT face="Arial">Dans le Patch 2, la totalit&eacute; des modules dadministration du noyau (sous /admin) utilisent le principe suivant&nbsp;:
</FONT></LI>
<UL>
<LI><FONT face="Arial">Il existe un fichier de langue pour la zone dadministration et un pour le reste du Noyau (respectivement lang-adm-french.php et
  lang-french.php)
</FONT></LI>
<LI><FONT face="Arial">Les messages sont nativement en fran&ccedil;ais et le fichier de langue fran&ccedil;ais est donc maintenant quasiment vide (au contraire du fichier anglais)
</FONT></LI></UL>
</UL>
<UL>
<LI><FONT face="Arial">Cela permet une r&eacute;duction importante de la taille du fichier de langue ainsi que des gains significatifs en terme de vitesse (quasi une version
  hardcoded).
</FONT></LI></UL>
<UL>
<LI><FONT face="Arial">Par voie de cons&eacute;quence, le fichier de langue principale&nbsp;: lang-french.php a &eacute;t&eacute; compl&egrave;tement refait et optimis&eacute;.
</FONT></LI></UL>
<UL>
<LI><FONT face="Arial" color="#FF0000">Malheureusement, les modifications que vous auriez
  p faire dans ce fichier devront &ecirc;tre
  refaites !</FONT></LI></UL>
<UL>

<UL>
<LI><FONT face="Arial">Afin de pr&eacute;parer la 4.9, je vous conseille de faire vos modifications dans lang-french.php et de les saisir aussi dans lang-mods- french.php (un exemple est livr&eacute; dans le P2) car ce fichier sera pris en charge directement dans la 4.9.
</FONT></LI></UL>
</UL>


<P><FONT face="Arial">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Pour les concepteurs de Modules, Addons, et autres Mods, vos d&eacute;veloppements devront &ecirc;tre l&eacute;g&egrave;rement<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; modifi&eacute;s avant larriv&eacute;e de la 4.9 pour prendre en charge cette nouvelle organisation de la langue.
</FONT></P>

<hr width=20% align=left>
<font face="Arial">
<br>
<b>Nouvelles fonctions dans mainfile.php :</b><br>
 . removeHack qui permet de supprimer certaines chanes de caractres dangereuses
(CSS).<br>
. getmicrotime qui permet d'obtenir la valeur de retour de microtime
(pour un calcul de perf / voir le module page-time par exemple)<br>
. fab_block et block_fonction qui fabrique et assure la gestion des fonctions
des blocs<br>
. valid_group qui permet de connatre la liste des groupes d'un membre<br>
<B>
<hr width=20% align=left>
<font face="Arial">
<br>
</font>
<FONT face="Arial">Nouveaux Modules :</FONT> </B><P><FONT face="Arial">
&nbsp;&nbsp;&nbsp; Le module links (qui reprend et complte l'annuaire des
liens web qui se trouvent actuellement dans NPDS voir install.txt)</FONT>

</P>

<P><FONT face="Arial">
&nbsp;&nbsp;&nbsp; Le module contact (qui permet la gestion simple d'un
formulaire de contact avec SFORM voir install.txt)</FONT>

</P>

<B>
<hr width=20% align=left>
<font face="Arial">
<br>
</font>
 </B><FONT face="Arial"><b>SFORM et les formulaires dans NPDS :<br>
</b><br>
SFORM n'est pas vraiment un module car c'est en fait <b>LE</b> gestionnaire de
Formulaire de NPDS.<br>
<br>
Ceci met  la disposition :<br>
&nbsp;&nbsp;&nbsp; des utilisateurs, </FONT>un puissant outil de
personnalisation car tous les formulaires sont modifiables sans<br>
&nbsp;&nbsp;&nbsp; difficults (voir la doc et/ou les exemples) et sans aucune
modification du code ou des tables.
<p><FONT face="Arial">&nbsp;&nbsp;&nbsp; des dveloppeurs de modules un moteur
de gestion simple et performant de formulaires de tous genres<br>
&nbsp;&nbsp;&nbsp; (voir la doc de dveloppement)</FONT></p>
<font face="Arial">SFORM ouvre un nouveau potentiel au dveloppement avec la
possibilit de raliser simplement des modules de (exemples) :<br>
&nbsp;&nbsp;&nbsp;</font> - sondages<br>
&nbsp;&nbsp;&nbsp; - enqutes<br>
&nbsp;&nbsp;&nbsp; - souscription de contrat<br>
&nbsp;&nbsp;&nbsp; - demande d'infos<br>
&nbsp;&nbsp;&nbsp; - ...
<br>
<br>
<b>Ce Patch est livr avec une installation automatique des modifications pour MySql : 4.8-P2.php</b><br><br>
------------------------------------------------------------------<br>
NPDS Gnrateur de Portail - licence GNU/GPL<br>
http://www.npds.org<br>
------------------------------------------------------------------<br></font>