<?xml version="1.0" encoding="utf-8"?><?xml-stylesheet title="XSL formatting" type="text/xsl" href="http://www.llaumgui.com/feed/rss2/xslt" ?><rss version="2.0"
  xmlns:dc="http://purl.org/dc/elements/1.1/"
  xmlns:wfw="http://wellformedweb.org/CommentAPI/"
  xmlns:content="http://purl.org/rss/1.0/modules/content/">
<channel>
  <title>Le blog de llaumgui - IPB</title>
  <link>http://www.llaumgui.com/</link>
  <description>Linux en général, Fedora en particulier...</description>
  <language>fr</language>
  <pubDate>Fri, 04 Jul 2008 15:07:50 +0200</pubDate>
  <copyright>http://creativecommons.org/licenses/by-nc-nd/2.5/</copyright>
  <docs>http://blogs.law.harvard.edu/tech/rss</docs>
  <generator>Dotclear</generator>
  
    
  <item>
    <title>Montée en charge et compression Gzip des pages servies</title>
    <link>http://www.llaumgui.com/post/Montee-en-charge-et-compression-Gzip-des-pages-servies</link>
    <guid isPermaLink="false">urn:md5:d536a1f9592b10be6c9d8a8b2cf238f0</guid>
    <pubDate>Fri, 07 Dec 2007 19:57:00 +0100</pubDate>
    <dc:creator>llaumgui</dc:creator>
        <category>Développement web</category>
        <category>CentOS</category><category>Dedibox</category><category>IPB</category><category>IPB 2.1</category><category>serveur</category><category>spb-box</category>    
    <description>    &lt;p&gt;Depuis quelque temps, je trouve que &lt;a hreflang=&quot;fr&quot; href=&quot;http://www.scenario-paintball.com/&quot; title=&quot;Scénario-PaintBall - Accueil (Le repaire des fougères)&quot;&gt;Scenario-Paintball&lt;/a&gt; et llaumgui.com (tous deux hébergés sur la &lt;a href=&quot;http://www.llaumgui.com/tag/spb-box&quot;&gt;spb-box&lt;/a&gt;) mettent du temps à servir les pages.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://www.llaumgui.com/post/La-spb-box-sous-CentOS-51&quot; hreflang=&quot;fr&quot; title=&quot;La spb-box sous CentOS 5.1&quot;&gt;J'ai mis à jour le système de CentOS 5.0 vers la 5.1&lt;/a&gt; avec le dernier kernel pensant que ça pourrait améliorer les perfs (qui a dit naïf ?) de mon kernel datant du temps où &lt;a href=&quot;http://www.centos.org/&quot; hreflang=&quot;en&quot; title=&quot;The Community ENTerprise Operating System&quot;&gt;CentOS&lt;/a&gt; 5.0 était encore en phase de bêta testes chez &lt;a href=&quot;http://www.dedibox.fr/&quot; hreflang=&quot;fr&quot; title=&quot;otre serveur dédié pour 29,99 Euros / mois trafic illimité&quot;&gt;Dedibox&lt;/a&gt; (mais CentOS était bel est bien en version finale).&lt;/p&gt;
&lt;p&gt;Rien à faire, j'observais encore des montées en charge et des montées de CPU. J'ai donc entrepris de m'orienter du côté d'&lt;a hreflang=&quot;en&quot; href=&quot;http://www.invisionpower.com/community/board/index.html&quot; title=&quot;IP.Board is an outstanding bulletin board system&quot;&gt;Invision Power Board&lt;/a&gt; et de mieux régler la bête pour ne plus servir de pages compressées en &lt;a hreflang=&quot;fr&quot; href=&quot;http://fr.wikipedia.org/wiki/Gzip&quot;&gt;gzip&lt;/a&gt; (&lt;em&gt;Disable GZIP encoding?&lt;/em&gt;). Depuis, beaucoup moins de problème de montée en charge et même lorsque le serveur charge il arrive encore à servir les pages en un temps tout à fait respectable.&lt;br /&gt;J'ai profité de cette occasion pour affiner les réglages d'&lt;acronym title=&quot;Invision Power Board&quot;&gt;IPB&lt;/acronym&gt; et configurer une charge limite (&lt;em&gt;Server Load Limit ?&lt;/em&gt;) de 15 à laquelle Scénario-PaintBall affiche un message d'erreur invitant à patienter...&lt;/p&gt;
&lt;p&gt;Bref, la version 2.1 n'étant pas connu pour sa légèreté, je pense que la migration vers la version 2.3 d'IPB se fait de plus ne plus pressante...&lt;/p&gt;</description>
    
    
    
          <comments>http://www.llaumgui.com/post/Montee-en-charge-et-compression-Gzip-des-pages-servies#comment-form</comments>
      <wfw:comment>http://www.llaumgui.com/post/Montee-en-charge-et-compression-Gzip-des-pages-servies#comment-form</wfw:comment>
      <wfw:commentRss>http://www.llaumgui.com/feed/rss2/comments/380</wfw:commentRss>
      </item>
    
  <item>
    <title>Un labo pour tester ezipb, le connecteur IPB pour eZ publish</title>
    <link>http://www.llaumgui.com/post/Un-labo-pour-tester-ezipb-le-connecteur-IPB-pour-eZ-publish</link>
    <guid isPermaLink="false">urn:md5:57e2a710ce2d1e502bd6a9ae181b9f82</guid>
    <pubDate>Wed, 26 Sep 2007 00:03:00 +0200</pubDate>
    <dc:creator>llaumgui</dc:creator>
        <category>Développement web</category>
        <category>eZ Publish</category><category>ezipb</category><category>IPB</category><category>script</category><category>serveur</category>    
    <description>    &lt;p&gt;Comme je viens tout juste de finir un petit script permettant de configurer automatiquement un site web sur un serveur (création de la base de données &lt;a hreflang=&quot;fr&quot; href=&quot;http://www-fr.mysql.com/&quot; title=&quot;La Base de Données Open Source la plus Populaire au Monde&quot;&gt;MySQL&lt;/a&gt;, des répertoires, configuration des stats &lt;a href=&quot;http://awstats.sourceforge.net/&quot; hreflang=&quot;en&quot; title=&quot;Free real-time logfile analyzer to get advanced statistics (GNU GPL).&quot;&gt;Awstats&lt;/a&gt;, du vhost, etc...), j'en ai profité pour mettre en place un petit &lt;a href=&quot;http://labo.llaumgui.com/&quot; hreflang=&quot;fr&quot; rel=&quot;nofolow&quot;&gt;labo&lt;/a&gt; afin de pouvoir vous monter &lt;a href=&quot;http://trac.llaumgui.com/wiki/ezipb&quot; hreflang=&quot;fr&quot; title=&quot;ezipb|Connecteur IPB pour eZ publish&quot;&gt;ezipb&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Pour le moment, ça fait pas grand chose mais ça peut vous donner une idée de ce que sera mon intégration d'&lt;a hreflang=&quot;en&quot; href=&quot;http://www.invisionboard.com&quot;&gt;Invision Power Board&lt;/a&gt; (IPB pour les intimes) avec &lt;a hreflang=&quot;en&quot; href=&quot;http://ez.no&quot; title=&quot;eZ Publish Open Source Enterprise Content Management System&quot;&gt;eZ publish&lt;/a&gt; (eZ pour les intimes).&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;URL :&lt;/strong&gt; &lt;a href=&quot;http://labo.llaumgui.com/&quot; hreflang=&quot;fr&quot; rel=&quot;nofolow&quot;&gt;labo&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Login :&lt;/strong&gt; ezipb&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Mot de passe :&lt;/strong&gt; ezipb&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;&lt;ins&gt;Remarque&lt;/ins&gt; :&lt;/strong&gt; Pour ce qui est de mon script, il fera l'objet d'un prochain billet lors que j'aurais un peu mieux testé le truc.&lt;/em&gt;&lt;/p&gt;</description>
    
    
    
          <comments>http://www.llaumgui.com/post/Un-labo-pour-tester-ezipb-le-connecteur-IPB-pour-eZ-publish#comment-form</comments>
      <wfw:comment>http://www.llaumgui.com/post/Un-labo-pour-tester-ezipb-le-connecteur-IPB-pour-eZ-publish#comment-form</wfw:comment>
      <wfw:commentRss>http://www.llaumgui.com/feed/rss2/comments/359</wfw:commentRss>
      </item>
    
  <item>
    <title>ezipb-shoutbox, une shoutbox pour ezipb</title>
    <link>http://www.llaumgui.com/post/ezipb-shoutbox-une-shoutbox-pour-ezipb</link>
    <guid isPermaLink="false">urn:md5:f2d19067b16a09bfe440c269102ec656</guid>
    <pubDate>Sun, 09 Sep 2007 23:26:00 +0200</pubDate>
    <dc:creator>llaumgui</dc:creator>
        <category>Développement web</category>
        <category>eZ Publish</category><category>ezipb</category><category>ezipb-shoutbox</category><category>IPB</category><category>Subversion</category>    
    <description>    &lt;p&gt;Je viens d'importer, sur &lt;a hreflang=&quot;fr&quot; href=&quot;http://svn.llaumgui.com/&quot;&gt;mon serveur Subversion&lt;/a&gt;, la première version d'&lt;a hreflang=&quot;fr&quot; href=&quot;http://trac.llaumgui.com/wiki/ezipb-shoutbox%20%3A%20Installer%20ezibp-shoutbox&quot;&gt;ezipb-shoutbox&lt;/a&gt;
: la shoutbox &lt;a hreflang=&quot;fr&quot; href=&quot;http://fr.wikipedia.org/wiki/Asynchronous_JavaScript_And_XML&quot;&gt;AJAX&lt;/a&gt; pour l'extension &lt;a href=&quot;http://www.llaumgui.com/tag/ezipb&quot;&gt;ezipb&lt;/a&gt; permettant de coupler &lt;a hreflang=&quot;en&quot; href=&quot;http://ez.no&quot;&gt;eZ publish&lt;/a&gt;
et &lt;a hreflang=&quot;en&quot; href=&quot;http://www.invisionpower.com/community/board/index.html&quot;&gt;IPB&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;J'en ai aussi profité pour mettre à jour la &lt;a hreflang=&quot;fr&quot; href=&quot;http://trac.llaumgui.com/wiki/ezipb-shoutbox%20%3A%20Installer%20ezibp-shoutbox&quot;&gt;documentation sur mon wiki&lt;/a&gt;, ainsi que &lt;a hreflang=&quot;fr&quot; href=&quot;http://trac.llaumgui.com/milestone/ezipb-shoutbox%20finale&quot;&gt;le roadmap&lt;/a&gt;.&lt;/p&gt;</description>
    
    
    
          <comments>http://www.llaumgui.com/post/ezipb-shoutbox-une-shoutbox-pour-ezipb#comment-form</comments>
      <wfw:comment>http://www.llaumgui.com/post/ezipb-shoutbox-une-shoutbox-pour-ezipb#comment-form</wfw:comment>
      <wfw:commentRss>http://www.llaumgui.com/feed/rss2/comments/350</wfw:commentRss>
      </item>
    
  <item>
    <title>eZ publish et eZ find 1.0 bêta 1</title>
    <link>http://www.llaumgui.com/post/eZ-publish-et-eZ-find-10-beta-1</link>
    <guid isPermaLink="false">urn:md5:a85b4539253efc3098af2a45d11ad670</guid>
    <pubDate>Sun, 09 Sep 2007 14:36:00 +0200</pubDate>
    <dc:creator>llaumgui</dc:creator>
        <category>Développement web</category>
        <category>eZ find</category><category>eZ Publish</category><category>ezipb</category><category>Google</category><category>IPB</category><category>php5</category>    
    <description>&lt;p&gt;Les moteurs de recherche, quel cruel dilemme ! Soit on a un moteur basique et léger soit un moteur super pertinent mais consommant un max de ressources. Certains même en arrivent à utiliser &lt;a hreflang=&quot;fr&quot; href=&quot;http://www.google.com&quot;&gt;Google&lt;/a&gt; en guise de moteur de recherche sur leur site (je propose d'ailleurs cette solution alternative en plus des moteurs de recherche de &lt;a href=&quot;http://www.fedora-fr.org/&quot; hreflang=&quot;fr&quot;&gt;fedora-fr&lt;/a&gt;).&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://ez.no&quot; hreflang=&quot;en&quot;&gt;eZ publish&lt;/a&gt; n'échappe pas à la règle et de base son moteur de recherche est pour le moins... pas terrible. Heureusement qu'eZ est bien fait et permet le remplacement du moteur de recherche par d'autres via le système d'extensions. Avec la &lt;a href=&quot;http://ez.no/community/news/community_newsletter_11_7th_september_2007&quot; hreflang=&quot;en&quot;&gt;Community Newsletter #11&lt;/a&gt; et l'annonce de la version 1.0 beta 1 d'&lt;a href=&quot;http://ez.no/community/contribs/applications/ez_find&quot; hreflang=&quot;en&quot;&gt;ezfind&lt;/a&gt;, j'ai donc entrepris de tester la bête.&lt;/p&gt;    &lt;p&gt;&lt;a href=&quot;http://www.llaumgui.com/public/images/web/moteur-de-recherche_ez-publish.png&quot;&gt;&lt;img style=&quot;margin: 0 auto; display: block;&quot; alt=&quot;&quot; src=&quot;http://www.llaumgui.com/public/images/web/.moteur-de-recherche_ez-publish_m.jpg&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;
Quelques petits problèmes à l'installation&lt;/h2&gt;
&lt;p&gt;Comme je l'ai déjà dis plusieurs fois, j'utilise la version &lt;a href=&quot;http://pubsvn.ez.no/nextgen_php5/&quot; hreflang=&quot;fr&quot;&gt;3.9 communautaire compatible php5&lt;/a&gt; d'eZ publish. eZ find semble cependant tourner parfaitement en php5.
Par contre, dès le début, je me suis heurté à une fatal error :&lt;/p&gt;
&lt;pre&gt;Fatal error: Class 'ezsolr' not found in /mnt/divers1/public_html/scenario-paintball/kernel/classes/ezsearch.php on line 104&lt;br /&gt;Fatal error: eZ publish did not finish its request&lt;br /&gt;&lt;br /&gt;The execution of eZ publish was abruptly ended, the debug output is present below.&lt;/pre&gt;
&lt;p&gt;Comme ma version d'eZ n'est ni conventionnel ni la dernière, j'ai pas cherché plus loin et j'ai fait un petit lien relatif (pas le temps de passer plus de temps à faire plus propre sur une bêta 1 de test).&lt;/p&gt;
&lt;code class=&quot;bash&quot;&gt;llaumgui@enterprise /mnt/divers1/public_html/scenario-paintball/kernel/search/plugins&amp;gt; &lt;span style=&quot;color: #c20cb9; font-weight: bold;&quot;&gt;ln&lt;/span&gt; -s ../../../extension/ezfind/search/plugins/ezsolr/ ./&lt;/code&gt;
&lt;p&gt;Ensuite, ma version semble ne pas posséder d'&lt;em&gt;updatesearchindex.php&lt;/em&gt;, je l'ai donc pris sur &lt;a href=&quot;http://pubsvn.ez.no/&quot; hreflang=&quot;en&quot;&gt;le serveur SVN&lt;/a&gt;.&lt;/p&gt;
&lt;h2&gt;Spécificités d'eZ find&lt;/h2&gt;
&lt;p&gt;eZ find requière le JRE (&lt;a hreflang=&quot;en&quot; href=&quot;http://java.sun.com/&quot; title=&quot;Java Technology&quot;&gt;Java&lt;/a&gt; Runtime Environment) 5.0 ou supérieur. Les améliorations apportées par rapport à la recherche standard sont notamment :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;&lt;strong&gt;Classement par pertinence&lt;/strong&gt; !&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;Support natif des droits dans eZ publish.&lt;/li&gt;
&lt;li&gt;Soulignement des mots clef.&lt;/li&gt;
&lt;li&gt;Recherche par langue, basée sur la configuration du &lt;a hreflang=&quot;en&quot; href=&quot;http://ez.no/community/articles/an_introduction_to_ez_publish_concepts/siteaccesses&quot;&gt;siteaccesses&lt;/a&gt; courant.&lt;/li&gt;
&lt;li&gt;Possibilité de rechercher sur de multiples  siteaccesses.&lt;/li&gt;
&lt;li&gt;Intégration dans l'administration d'eZ publish ainsi que dans ezwebin.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Premières impressions&lt;/h2&gt;
&lt;p&gt;Une fois le tout configuré, l'exécutable Java lancé et le cache de recherche mis à jour, voici ce que ça donne.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://www.llaumgui.com/public/images/web/moteur-de-recherche_ez-find.png&quot;&gt;&lt;img src=&quot;http://www.llaumgui.com/public/images/web/.moteur-de-recherche_ez-find_m.jpg&quot; alt=&quot;Moteur de recherche ezfind&quot; style=&quot;margin: 0 auto; display: block;&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;J'aimerais bien utiliser ce moteur de recherche sur &lt;a hreflang=&quot;fr&quot; href=&quot;http://www.scenario-paintball.com/&quot; title=&quot;Le repaire des fougères&quot;&gt;scenario-paintball&lt;/a&gt; voir court-circuiter le moteur de recherche d'&lt;a hreflang=&quot;fr&quot; href=&quot;http://www.invisionpower.com/community/board/index.html&quot; title=&quot;Forums Invision Power Bord&quot;&gt;IPB&lt;/a&gt; pour centraliser toutes les recherches à partir d'eZ find, c'est une piste que je dois explorer pour &lt;a href=&quot;http://www.llaumgui.com/tag/ezipb&quot;&gt;ezipb&lt;/a&gt;. En effet, le moteur d'IPB n'est pas réputé pour sa faible consommation en ressources.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://www.llaumgui.com/public/images/web/moteur-de-recherche_ez-find-cote-admin.png&quot;&gt;&lt;img src=&quot;http://www.llaumgui.com/public/images/web/.moteur-de-recherche_ez-find-cote-admin_m.jpg&quot; alt=&quot;eZ find dans l'admin&quot; style=&quot;margin: 0 auto; display: block;&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt; Par contre, pour une utilisation sur un serveur possédant plusieurs instances d'eZ (comme c'est le cas à &lt;a hreflang=&quot;fr&quot; href=&quot;http://www.kaliop.com&quot;&gt;mon boulot&lt;/a&gt;), une seule instance de l'exécutable suffit &lt;del&gt;je suis septique sur un point : doit-on lancer 1 instance de l'exécutable Java par site ou une seul par serveur&lt;/del&gt;...&lt;br /&gt;J'aimerais aussi benchmarker la consommation de ce moteur de recherche par rapport à celui livré en standard dans eZ publish ainsi que la montée en charge de l'appli Java lors de l'indexation (qui a fait monter mon CPU à 100% quand même !). Une chose est sûre l'appli Java à besoin de tourner en permanence et ne sert pas uniquement lors de l'indexation.&lt;/p&gt;
&lt;p&gt;&lt;del&gt;Par contre j'avoue avoir été déçu par le fait qu'eZ find ne semble pas indexer les pdf, enfin selon mes tests&lt;/del&gt;.&lt;/p&gt;</description>
    
    
    
          <comments>http://www.llaumgui.com/post/eZ-publish-et-eZ-find-10-beta-1#comment-form</comments>
      <wfw:comment>http://www.llaumgui.com/post/eZ-publish-et-eZ-find-10-beta-1#comment-form</wfw:comment>
      <wfw:commentRss>http://www.llaumgui.com/feed/rss2/comments/349</wfw:commentRss>
      </item>
    
  <item>
    <title>ezipb : eZ publish et IPB réunis</title>
    <link>http://www.llaumgui.com/post/ezipb-%3A-eZ-publish-et-IPB-reunis</link>
    <guid isPermaLink="false">urn:md5:c7fd938191b91a9624f9191b44cf94d7</guid>
    <pubDate>Sun, 02 Sep 2007 17:01:00 +0200</pubDate>
    <dc:creator>llaumgui</dc:creator>
        <category>Développement web</category>
        <category>eZ Publish</category><category>ezipb</category><category>IPB</category><category>php</category><category>php5</category><category>Subversion</category><category>Trac</category>    
    <description>    &lt;p&gt;eLors d'&lt;a href=&quot;http://www.llaumgui.com/post/Scenario-PaintBall-version-3-en-preparation&quot; hreflang=&quot;fr&quot; title=&quot;Scénario-PaintBall version 3 en préparation&quot;&gt;un précédent billet&lt;/a&gt;, j'avais parlé de la refonte de &lt;a href=&quot;http://www.scenario-paintball.com/&quot; hreflang=&quot;fr&quot;&gt;SPB&lt;/a&gt; et de mon projet d'extension &lt;a href=&quot;http://www.llaumgui.com/tag/ezipb&quot;&gt;ezipb&lt;/a&gt; pour permettre à &lt;a href=&quot;http://ez.no&quot; hreflang=&quot;en&quot;&gt;eZ Publish&lt;/a&gt; et &lt;a href=&quot;http://www.invisionboard.fr/&quot; hreflang=&quot;fr&quot;&gt;IPB&lt;/a&gt; de communiquer. J'ai bien avancé, voila ce que fait mon extension pour le moment :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Initialise les classes d'IPB strictement nécessaires (j'ai pompé et allégé l'index.php d'IPB).&lt;/li&gt;
&lt;li&gt;Initialise des drivers MySQL modifiés à la place des drivers d'IPB.&lt;br /&gt;Ces derniers utilisent la connections ouverte par eZ. Comme eZ est orienté php4, mon extension force MySQL à la place de MySQLi qui est normalement automatiquement déclenché par la présence de php5. Cette fonctionnalité est désactivable si vous n'avez pas vos données eZ et IPB sur la même base.&lt;/li&gt;
&lt;li&gt;Divers opérateurs eZ publish afin de récupérer les informations sur les membres.&lt;/li&gt;
&lt;li&gt;Divers templates (1 pour le moment) afin d'avoir les éléments principaux d'IPB dans eZ publish.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;a href=&quot;http://www.llaumgui.com/public/images/web/ezipb.png&quot;&gt;&lt;img src=&quot;http://www.llaumgui.com/public/images/web/.ezipb_m.jpg&quot; alt=&quot;Première version d'ezipb&quot; style=&quot;margin: 0 auto; display: block;&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;
Bref actuellement, le &lt;em&gt;cout&lt;/em&gt; de mon extension est de 3 requêtes et j'ai pas encore entamé la chasse aux requêtes inutiles !&lt;/p&gt;
&lt;p&gt;Comme je veux proposer cette extension ainsi que le portage vers IPB 2.3.x de la plupart de &lt;a hreflang=&quot;fr&quot; href=&quot;http://www.llaumgui.com/post/liste-de-mes-mods-ipb&quot;&gt;mes mods et task IPB&lt;/a&gt;, j'ai monté un &lt;a hreflang=&quot;en&quot; href=&quot;http://trac.edgewall.org/&quot;&gt;Trac&lt;/a&gt; et un &lt;a hreflang=&quot;fr&quot; href=&quot;http://subversion.tigris.org/&quot;&gt;SVN&lt;/a&gt; afin d'assurer le support et de proposer un téléchargement via Subversion... IPB, je suis de retours !&lt;/p&gt;
&lt;p&gt;&lt;a hreflang=&quot;fr&quot; href=&quot;http://trac.llaumgui.com/&quot;&gt;Plus d'infos, documentation et téléchargment sur le Trac&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;Remarque :&lt;/strong&gt; J'utilise la version &lt;/em&gt;&lt;a style=&quot;font-style: italic;&quot; href=&quot;http://pubsvn.ez.no/nextgen_php5/&quot; hreflang=&quot;fr&quot;&gt;3.9 communautaire compatible php5&lt;/a&gt;&lt;em&gt; d'eZ publish. Mon extension est donc en php5. Elle est donc incompatible avec la plupart des versions d'eZ publish... C'est ballot :-).&lt;/em&gt;&lt;/p&gt;</description>
    
    
    
          <comments>http://www.llaumgui.com/post/ezipb-%3A-eZ-publish-et-IPB-reunis#comment-form</comments>
      <wfw:comment>http://www.llaumgui.com/post/ezipb-%3A-eZ-publish-et-IPB-reunis#comment-form</wfw:comment>
      <wfw:commentRss>http://www.llaumgui.com/feed/rss2/comments/347</wfw:commentRss>
      </item>
    
  <item>
    <title>Scénario-PaintBall version 3 en préparation</title>
    <link>http://www.llaumgui.com/post/Scenario-PaintBall-version-3-en-preparation</link>
    <guid isPermaLink="false">urn:md5:4ce7aba034b261efa398bb691d8ba593</guid>
    <pubDate>Thu, 30 Aug 2007 23:05:00 +0200</pubDate>
    <dc:creator>llaumgui</dc:creator>
        <category>Développement web</category>
        <category>Eclipse</category><category>eZ Publish</category><category>ezipb</category><category>IPB</category><category>IPBSDK</category><category>pdt</category><category>php</category><category>php5</category><category>Scénario-PaintBall</category>    
    <description>&lt;p&gt;Après plusieurs années de bons et loyaux services, il est grand temps que la version 2 de &lt;a href=&quot;http://www.scenario-paintball.com/&quot; title=&quot;Scénario-PaintBall|Le repaire des fougères&quot;&gt;Scénario-PaintBall&lt;/a&gt; tire sa révérence, pour donner naissance à une v3 ;-).
&lt;br /&gt;
Pourquoi ?&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Le forums :&lt;/strong&gt; L'une des raisons principales et la version d'&lt;a href=&quot;http://www.invisionboard.fr/&quot; title=&quot;Communauté francophone Invision Power Board&quot;&gt;IPB&lt;/a&gt;, la  2.1.x. Cette dernière n'est plus ou ne sera bientôt plus supportée. Il est donc grand temps de passer à la branche 2.3.x.&lt;br /&gt;
Les autre points découlent de cette mise à jour.
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Le portail :&lt;/strong&gt; Il utilise l'&lt;a href=&quot;http://ipbsdk.sourceforge.net/&quot; hreflang=&quot;en&quot; title=&quot;IPB SDK is a powerful development tool, which will allow you to develop advanced applications with ease&quot;&gt;ipbSDK&lt;/a&gt; qui n'est plus développé depuis la version 2.1 d'IPB (déjà que la 1.6 beta 5 pour IPB 2.1 était « limite »). Si je veux récupérer mon portail il faut donc que je rende compatible la dernier version du sdk avec la version actuel du forum... Or, j'ai la flemme de récupérer du vieux code !&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Le design :&lt;/strong&gt; le passage vers IPB 2.3 oblige à refaire la feuille de style (si on veut pas faire le porc). A remonter une page, autant en remonter une nouvelle.&lt;/li&gt;
&lt;/ol&gt;    &lt;h2&gt;Des pistes pour l'évolution&lt;/h2&gt;
&lt;p&gt;Pour la partie graphique, &lt;a href=&quot;http://forums.scenario-paintball.com/index.php?showuser=2&quot; hreflang=&quot;fr&quot;&gt;Radinus&lt;/a&gt; est en train de voir avec un designer.&lt;br /&gt;
Pour la techno, je pense utiliser &lt;a href=&quot;http://ez.no/&quot; hreflang=&quot;en&quot; title=&quot;eZ Publish Open Source Enterprise Content Management System&quot;&gt;eZ Publish&lt;/a&gt; 4.0 qui ne devrait plus tarder à sortir en version alpha voir peut être même bêta... Je rappel que la version du sdk utilisée actuellement est une bêta 2 &lt;a href=&quot;http://www.llaumgui.com/tag/IPBSDK&quot; hreflang=&quot;fr&quot;&gt;ultra modifiée&lt;/a&gt; par moi même, donc on est plus à une bêta près.&lt;br /&gt;
En attendant la v4 d'eZ, je commence les tests sur la version &lt;a href=&quot;http://pubsvn.ez.no/nextgen_php5/&quot; hreflang=&quot;fr&quot;&gt;3.9 communautaire compatible php5&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;
Du coup, en utilisant IPB + eZ publish, je n'ai plus qu'une seule chose à développer : une extension eZ pour communiquer avec IPB (connections membres + requêtes de récupération d'informations diverses).&lt;/p&gt;
&lt;h2&gt;Des non pistes&lt;/h2&gt;
&lt;h3&gt;Pourquoi pas le module forums pour eZ ?&lt;/h3&gt;
&lt;p&gt;La licence IPB est payée à vie et c'est un excellent forums ultra (trop?) complet.&lt;/p&gt;
&lt;h3&gt;Pourquoi pas un CMS autour d'IPB ?&lt;/h3&gt;
&lt;p&gt;Je pense qu'un forum est un forum et qu'un &lt;a href=&quot;http://fr.wikipedia.org/wiki/Syst%C3%A8me_de_gestion_de_contenu&quot; hreflang=&quot;fr&quot;&gt;&lt;acronym title=&quot;Content Management Systems&quot;&gt;CMS&lt;/acronym&gt;&lt;/a&gt; est un CMS ! Vouloir absolument développer un CMS autour d'un forum est, selon moi, une erreur. Erreur que j'ai d'ailleurs commise lors de la v2 de spb ;-).&lt;br /&gt;
La solution est donc de coupler différents scripts via des bridges (ma future extension ou les bridges à la &lt;a hreflang=&quot;en&quot; href=&quot;http://coppermine-gallery.net/&quot;&gt;Coppermine&lt;/a&gt;) ou grâce à des systèmes du type &lt;a href=&quot;http://fr.wikipedia.org/wiki/SSO&quot; hreflang=&quot;fr&quot;&gt;&lt;acronym title=&quot;Single Sign-On&quot;&gt;SSO&lt;/acronym&gt;&lt;/a&gt; (pour SPB on en est pas encore là).&lt;/p&gt;
&lt;h2&gt;TODO&lt;/h2&gt;
&lt;ol&gt;
&lt;li&gt;&lt;del&gt;Installer &lt;a href=&quot;http://www.eclipse.org/&quot; hreflang=&quot;en&quot; title=&quot; an open development platform&quot;&gt;Eclipse&lt;/a&gt; Europa (3.3) avec les extensions qui vont bien (&lt;a href=&quot;http://www.eclipse.org/pdt/&quot; hreflang=&quot;en&quot;&gt;&lt;acronym title=&quot;PHP Development Tools&quot;&gt;pdt&lt;/acronym&gt;&lt;/a&gt;, &lt;a href=&quot;http://smile-ez-plugin.sourceforge.net/&quot; hreflang=&quot;fr&quot;&gt;Smile eZ plugin&lt;/a&gt;). Je commence de loin, mais installer &amp;amp; configurer Eclipse c'est presque aussi long qu'installer un système complet&lt;/del&gt;.&lt;/li&gt;
&lt;li&gt;&lt;del&gt;Configurer mon serveur apache local&lt;/del&gt;.&lt;/li&gt;
&lt;li&gt;&lt;del&gt;Installer eZ 3.9 php5&lt;/del&gt;.&lt;/li&gt;
&lt;li&gt;&lt;del&gt;Convertir la base IPB 2.1.x vers 2.3.1&lt;/del&gt;.&lt;/li&gt;
&lt;li&gt;Développer le plugins eZipb pour faire communiquer IPB et eZ publish (voir les différentes pistes offertes et voir aussi du côté de &lt;a href=&quot;http://forums.invisionpower.com/index.php?showtopic=235584&quot; hreflang=&quot;fr&quot;&gt;Converge&lt;/a&gt;).&lt;/li&gt;
&lt;li&gt;Découper le design (que j'attends toujours).&lt;/li&gt;
&lt;li&gt;Développer,  dans la version eZ, les différentes fonctionnalités actuellement disponibles sur spb.&lt;/li&gt;
&lt;li&gt;Migrer le forums en UTF-8.&lt;/li&gt;
&lt;li&gt;etc...&lt;/li&gt;
&lt;/ol&gt;</description>
    
    
    
          <comments>http://www.llaumgui.com/post/Scenario-PaintBall-version-3-en-preparation#comment-form</comments>
      <wfw:comment>http://www.llaumgui.com/post/Scenario-PaintBall-version-3-en-preparation#comment-form</wfw:comment>
      <wfw:commentRss>http://www.llaumgui.com/feed/rss2/comments/344</wfw:commentRss>
      </item>
    
  <item>
    <title>IPB 2.1 et le captcha avancé</title>
    <link>http://www.llaumgui.com/post/IPB-21-et-le-captcha-avance</link>
    <guid isPermaLink="false">urn:md5:242f7364ca528e2de1375cf2a637fe55</guid>
    <pubDate>Tue, 06 Feb 2007 20:51:00 +0100</pubDate>
    <dc:creator>llaumgui</dc:creator>
        <category>Développement web</category>
        <category>IPB</category><category>IPB 2.1</category><category>IPB 2.2</category><category>spam</category>    
    <description>    &lt;p&gt;La lutte anti-&lt;a href=&quot;http://fr.wikipedia.org/wiki/Spam&quot; hreflang=&quot;fr&quot;&gt;spam&lt;/a&gt; avance, mais malheureusement les &lt;a href=&quot;http://fr.wikipedia.org/wiki/Bots&quot; hreflang=&quot;fr&quot;&gt;bots&lt;/a&gt; aussi.&lt;br /&gt;Désormais les robots spameurs arrivent à passer les &lt;a hreflang=&quot;fr&quot; href=&quot;http://fr.wikipedia.org/wiki/Captcha&quot;&gt;captchas&lt;/a&gt; les plus basiques, et même à valider l'inscription par mail.&lt;/p&gt;
&lt;p&gt;&lt;a hreflang=&quot;fr&quot; href=&quot;http://www.scenario-paintball.com/&quot;&gt;Scenario-PaintBall&lt;/a&gt;, l'un des 2 derniers sites que je gère et qui utilise IPB, a subit la semaine dernière une vague massive de spams.&lt;br /&gt;Passer sous IPB 2.2 serait la solution, mais je devrais me lancer dans une séance de recoding complet de mon portail et je n'en ai malheureusement pas le temps actuellement.&lt;/p&gt;
&lt;p&gt;J'ai donc utilisé &lt;a hreflang=&quot;fr&quot; href=&quot;http://forums.invisionboard.fr/index.php?autocom=Downloads&amp;amp;showfile=247&quot;&gt;ce mod&lt;/a&gt; qui permet d'appliquer le captcha avancé d'IPB 2.2 dans l'opus 2.1. L'accessibilité en souffre mais pour le moment les bots ne passent plus... Pour le moment...&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot;&gt;&lt;img alt=&quot;&quot; src=&quot;http://www.llaumgui.com/public/images/web/captcha_simple.png&quot; /&gt;&lt;br /&gt;Captcha simple d'IPB 2.1&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot;&gt;&lt;img alt=&quot;&quot; src=&quot;http://www.llaumgui.com/public/images/web/captcha_avance.gif&quot; /&gt;&lt;br /&gt;Captcha avancé d'IPB 2.2&lt;/p&gt;
&lt;p&gt;Bref, SPB est tranquil jusqu'à la prochaine vague...&lt;/p&gt;</description>
    
    
    
          <comments>http://www.llaumgui.com/post/IPB-21-et-le-captcha-avance#comment-form</comments>
      <wfw:comment>http://www.llaumgui.com/post/IPB-21-et-le-captcha-avance#comment-form</wfw:comment>
      <wfw:commentRss>http://www.llaumgui.com/feed/rss2/comments/142</wfw:commentRss>
      </item>
    
  <item>
    <title>IPS ou le manque de reconnaissance</title>
    <link>http://www.llaumgui.com/post/IPS-ou-le-manque-de-reconnaissance</link>
    <guid isPermaLink="false">urn:md5:78de4cb6493bb08741ad7a8744176ddb</guid>
    <pubDate>Tue, 06 Feb 2007 20:07:00 +0100</pubDate>
    <dc:creator>llaumgui</dc:creator>
        <category>Humeur</category>
        <category>Coup de gueule</category><category>IPB</category><category>IPS</category>    
    <description>    &lt;p&gt;Bien que la nouvelle ne soit pas encore annoncée sur le &lt;a hreflang=&quot;en&quot; href=&quot;http://www.invisionpower.com/&quot;&gt;site officiel&lt;/a&gt;, &lt;a hreflang=&quot;fr&quot; href=&quot;http://forums.invisionpower.fr/index.php?showtopic=7143&quot;&gt;la sentence est tombée&lt;/a&gt; : &lt;a hreflang=&quot;fr&quot; href=&quot;http://www.invisionpower.fr&quot;&gt;InvisionPower.fr&lt;/a&gt; est devenu site officiel de support des produits &lt;a hreflang=&quot;fr&quot; href=&quot;http://www.invisionpower.com/&quot;&gt;IPS&lt;/a&gt; en lieu et place d'&lt;a hreflang=&quot;fr&quot; href=&quot;http://www.invisionboard.fr&quot;&gt;InvisionBoard.fr&lt;/a&gt; (IBF pour les intimes)...&lt;/p&gt;
&lt;p&gt;Je tenais à dit merci à IPS :&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;Merci du mépris dont ils font preuve envers la première communauté Invision de France : &lt;a hreflang=&quot;fr&quot; href=&quot;http://www.invisionboard.fr&quot;&gt;InvisionBoard.fr&lt;/a&gt;.&lt;br /&gt;Site présent depuis la première heure (Juillet 2002), dans les bons comme dans les mauvais moments (Le fameux bug du setlocal par exemple, longtemps avant qu'InvisionPower.fr n'existe).&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;a hreflang=&quot;fr&quot; href=&quot;http://www.invisionboard.fr&quot;&gt;InvisionBoard.fr&lt;/a&gt; :&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;Nos membres ont écrit un total de &lt;strong&gt;178 749&lt;/strong&gt; messages&lt;br /&gt;Nous avons &lt;strong&gt;9 190&lt;/strong&gt; membres inscrits&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;a hreflang=&quot;fr&quot; href=&quot;http://www.invisionpower.fr&quot;&gt;InvisionPower.fr&lt;/a&gt; :&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;Nos membres ont écrit un total de &lt;strong&gt;57,907&lt;/strong&gt; messages&lt;br /&gt;Nous avons &lt;strong&gt;6,445&lt;/strong&gt; membres inscrits&lt;/p&gt;
&lt;/blockquote&gt;
&lt;ul&gt;&lt;li&gt;Merci du mépris envers les utilisateurs francophones jetés en pleine guerre des supports, où le support officiel n'est pas forcement le meilleur...&lt;/li&gt;
&lt;li&gt;Merci à IPS de faire passer les profits avant la satisfaction client en permettant à ses client de payer plus pour avoir moins.&lt;/li&gt;
&lt;li&gt;Merci à IPS de ne pas récompensé ceux qui respectent la licence à la lettre et ne traduisent pas le &lt;a hreflang=&quot;fr&quot; href=&quot;http://wiki.invisionboard.fr/index.php?title=PCA&quot;&gt;PCA&lt;/a&gt; sans accord pour le distribuer.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Pour moi &lt;a hreflang=&quot;fr&quot; href=&quot;http://www.invisionpower.fr/&quot;&gt;InvisionPower.fr&lt;/a&gt; n'existe pas et le vrai &lt;a hreflang=&quot;fr&quot; href=&quot;http://forums.invisionboard.fr/&quot;&gt;forum officiel de support&lt;/a&gt;, &lt;a hreflang=&quot;fr&quot; href=&quot;http://wiki.invisionboard.fr&quot;&gt;la vrai base de connaissances IPB&lt;/a&gt;, &lt;a hreflang=&quot;fr&quot; href=&quot;http://wiki.invisionboard.fr/index.php?title=Invision_Power_Board#IPB_en_fran.C3.A7ais&quot;&gt;la vrai traduction francophone&lt;/a&gt;, bref tout ça se trouve chez &lt;a hreflang=&quot;fr&quot; href=&quot;http://www.invisionboard.fr/&quot;&gt;InvisionBoard.fr&lt;/a&gt; et nul part ailleurs !&lt;/p&gt;
Merci &lt;a hreflang=&quot;fr&quot; href=&quot;http://forums.invisionboard.fr/index.php?showuser=1352&quot;&gt;Erwin&lt;/a&gt;, &lt;a hreflang=&quot;fr&quot; href=&quot;http://forums.invisionboard.fr/index.php?showuser=2102&quot;&gt;Fabien&lt;/a&gt;, &lt;a hreflang=&quot;fr&quot; href=&quot;http://forums.invisionboard.fr/index.php?showuser=1&quot;&gt;Gilles&lt;/a&gt;, &lt;a hreflang=&quot;fr&quot; href=&quot;http://forums.invisionboard.fr/index.php?showuser=2102&quot;&gt;Melky&lt;/a&gt;, &lt;a hreflang=&quot;fr&quot; href=&quot;http://forums.invisionboard.fr/index.php?showuser=151&quot;&gt;Youp&lt;/a&gt;, les &lt;a hreflang=&quot;fr&quot; href=&quot;http://wiki.invisionboard.fr/index.php?title=Fadas&quot;&gt;fadas&lt;/a&gt; (lut les copains) et j'en passe (désolé).&lt;br /&gt;&lt;br /&gt;IBF4Ever.&lt;br /&gt;</description>
    
    
    
          <comments>http://www.llaumgui.com/post/IPS-ou-le-manque-de-reconnaissance#comment-form</comments>
      <wfw:comment>http://www.llaumgui.com/post/IPS-ou-le-manque-de-reconnaissance#comment-form</wfw:comment>
      <wfw:commentRss>http://www.llaumgui.com/feed/rss2/comments/141</wfw:commentRss>
      </item>
    
  <item>
    <title>Liste de mes mods IPB</title>
    <link>http://www.llaumgui.com/post/liste-de-mes-mods-ipb</link>
    <guid isPermaLink="false">urn:md5:2a29accaab2a8feb86d409f465b74901</guid>
    <pubDate>Wed, 28 Sep 2005 18:43:00 +0000</pubDate>
    <dc:creator>llaumgui</dc:creator>
        <category>Développement web</category>
        <category>IPB</category><category>IPB 1.3</category><category>IPB 2.0</category><category>IPB 2.1</category><category>IPBSDK</category><category>javascript</category><category>mods</category><category>php</category><category>task</category>    
    <description>&lt;p&gt;Je commence à me faire une petite collection de mods persos pour IPB. Ce billet servira à tous les lister et savoir où les trouver.&lt;/p&gt;    &lt;ul&gt;
&lt;li&gt;IPB 1.3.x :
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://forums.invisionboard.fr/index.php?autocom=Downloads&amp;amp;showfile=185&quot; hreflang=&quot;fr&quot;&gt;RSS IPB News 1.6&lt;/a&gt; (&lt;a href=&quot;http://mods.invisionize.com/db/index.php/f/4869&quot; hreflang=&quot;en&quot;&gt;Chez Invisionize)&lt;/a&gt;, &lt;strong&gt;(médaille du meilleur mod catégorie &amp;quot;&lt;/strong&gt;&lt;em&gt;&lt;strong&gt;Mid-scale&lt;/strong&gt;&lt;/em&gt;&lt;strong&gt;&amp;quot; Juin 2005)&lt;/strong&gt; : Ce mod vous permet d'exporter vos news issues de votre forum IPB au format RSS.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;IPB 2.0.x :
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://forums.invisionboard.fr/index.php?autocom=Downloads&amp;amp;showfile=150&quot; hreflang=&quot;fr&quot;&gt;RSS IPB News 1.6&lt;/a&gt; (&lt;a href=&quot;http://mods.invisionize.com/db/index.php/f/3912&quot; hreflang=&quot;en&quot;&gt;Chez Invisionize&lt;/a&gt;): Ce mod vous permet d'exporter vos news issues de votre forum IPB au format RSS.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://forums.invisionboard.fr/index.php?autocom=Downloads&amp;amp;showfile=189&quot; hreflang=&quot;fr&quot;&gt;[Task] goTrash 1.0&lt;/a&gt; (&lt;a href=&quot;http://mods.invisionize.com/db/index.php/f/5398&quot; hreflang=&quot;fr&quot;&gt;Chez Invisionize&lt;/a&gt;): &lt;strong&gt;(médaille du meilleur mod catégorie &amp;quot;&lt;/strong&gt;&lt;em&gt;&lt;strong&gt;Mid-scale&lt;/strong&gt;&lt;/em&gt;&lt;strong&gt;&amp;quot; Septembre 2005) &lt;/strong&gt;Certaines multi-modération peuvent ajouter un préfixe dans le titre du topic. Par exemple, sur mon site, j'utilise le préfixe [Périssable] pour signaler que le topic rejoindra bientôt la corbeille. Cette task automatise juste ce déplacement dans la corbeille...&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;IPB 2.x :
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://forums.invisionboard.fr/index.php?autocom=Downloads&amp;amp;showfile=144&quot; hreflang=&quot;fr&quot;&gt;[SDK] Tchat Xpress&lt;/a&gt; (&lt;a href=&quot;http://mods.invisionize.com/db/index.php/f/3904&quot; hreflang=&quot;en&quot;&gt;Chez Invisionize&lt;/a&gt;) : ShoutBox basée sur le SDK 1.5 pour IPB 2.x. Il faut donc l'avoir préalablement installé pour utiliser le Tchat XPress.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://forums.invisionboard.fr/index.php?autocom=Downloads&amp;amp;showfile=197&quot; hreflang=&quot;fr&quot;&gt;Show Queued&lt;/a&gt; :  Ce mod est un auto-module : donc pas de fichier d'IPB à modifier smile.gif.
Il sert a afficher la liste des topics demandant un travail de modération (Posts invisibles ou sujets non approuvés).&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;IPB 2.1.x :
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://forums.invisionboard.fr/index.php?autocom=Downloads&amp;amp;showfile=198&quot; hreflang=&quot;fr&quot;&gt;[Task] goTrash 1.1&lt;/a&gt; : Certaines multi-modération peuvent ajouter un préfixe dans le titre du topic. Par exemple, sur mon site, j'utilise le préfixe [Périssable] pour signaler que le topic rejoindra bientôt la corbeille. Cette task automatise juste ce déplacement dans la corbeille...&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;IPB 2.1.x (En cours de développement, mais disponible en pré-version):
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://www.llaumgui.com/index.php/2005/09/19/51-imode-and-wap-for-ipb-11&quot; hreflang=&quot;fr&quot;&gt;imode and Wap for IPB 1.1&lt;/a&gt; : Une version iMode de votre site.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.llaumgui.com/index.php/2005/09/19/52-js-export-news-10&quot; hreflang=&quot;fr&quot;&gt;JS export news 1.0&lt;/a&gt; : Exporter vos news au format JavaScript.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://forums.invisionboard.fr/index.php?showuser=419&quot; hreflang=&quot;fr&quot;&gt;Mon profil&lt;/a&gt; sur &lt;a href=&quot;http://www.invisionboard.fr&quot; hreflang=&quot;fr&quot;&gt;IPBR-Fr&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://db.invisionize.com/index.php/m/26400&quot; hreflang=&quot;en&quot;&gt;Mon profil&lt;/a&gt; sur &lt;a href=&quot;http://www.ipbr-fr.com/&quot; hreflang=&quot;fr&quot;&gt;Invisionize&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;p style=&quot;text-align: right;&quot;&gt;&lt;em&gt;Mis à jour le 28/09/05&lt;/em&gt;&lt;/p&gt;</description>
    
          <enclosure url="http://www.llaumgui.com/public/files/ipb/RSS_IPB_News_1.6_IPB_1.2_et_1.3.x.zip"
      length="33639" type="application/zip" />
          <enclosure url="http://www.llaumgui.com/public/files/ipb/RSS_IPB_News_1.6.zip"
      length="33866" type="application/zip" />
          <enclosure url="http://www.llaumgui.com/public/files/ipb/goTrash_1.0.zip"
      length="4374" type="application/zip" />
          <enclosure url="http://www.llaumgui.com/public/files/ipb/SDK_Tchat_Xpress_1.1.zip"
      length="8186" type="application/zip" />
          <enclosure url="http://www.llaumgui.com/public/files/ipb/goTrash_1.1.zip"
      length="5214" type="application/zip" />
          <enclosure url="http://www.llaumgui.com/public/files/ipb/Show_Queued_1.0.zip"
      length="4864" type="application/zip" />
          <enclosure url="http://www.llaumgui.com/public/files/ipb/imode_and_wap_for_Invision%201.1.zip"
      length="29275" type="application/zip" />
          <enclosure url="http://www.llaumgui.com/public/files/ipb/JS_Export_News_1.0.zip"
      length="3455" type="application/zip" />
    
    
          <comments>http://www.llaumgui.com/post/liste-de-mes-mods-ipb#comment-form</comments>
      <wfw:comment>http://www.llaumgui.com/post/liste-de-mes-mods-ipb#comment-form</wfw:comment>
      <wfw:commentRss>http://www.llaumgui.com/feed/rss2/comments/47</wfw:commentRss>
      </item>
    
  <item>
    <title>IPBSDK et la (mauvaise) gestion des attachements</title>
    <link>http://www.llaumgui.com/post/ipbsdk-et-la-mauvaise-gestion-des-attachements</link>
    <guid isPermaLink="false">urn:md5:279b18d9cb54f26ad58f1a5ce6cb198d</guid>
    <pubDate>Fri, 23 Sep 2005 15:51:00 +0000</pubDate>
    <dc:creator>llaumgui</dc:creator>
        <category>Développement web</category>
        <category>cache</category><category>IPB</category><category>IPBSDK</category><category>optimisation</category><category>php</category>    
    <description>&lt;p&gt;Plus j'avance dans le débugage du &lt;a href=&quot;http://ipbsdk.sourceforge.net&quot; hreflang=&quot;en&quot;&gt;IPBSDK&lt;/a&gt; et le développement de mon portail, plus je me rends compte qu'il n'y a pas de cohésion entre les différentes fonctions qui compose ce SKD.
En effet, prenons l'exemple de la gestion des attachements qui fait 1 requête par attachement alors qu'il est si simple d'utiliser une fonction récupérant tout les attachements d'un message... Le pire est que cette fonction existe ! Mais les 2 ne sont pas reliées. Rassurez vous, je vous livre mon code à rajouter dans la classe &lt;a href=&quot;http://www.llaumgui.com/post/heritage-du-ipbsdk-1-theorie&quot; hreflang=&quot;fr&quot;&gt;MySDK&lt;/a&gt;.&lt;/p&gt;    &lt;code class=&quot;php&quot;&gt;&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;/**&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp;* Get a post's attachments&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp;* Gestion d'une mise en cache.&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp;* @author Guillaume Kulakowski &amp;lt;guillaume_AT_llaumgui_DOT_com&amp;gt;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp;* @author Pita &amp;lt;peter@randomnity.com&amp;gt;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp;* @since 1.11&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp;* @param integer $postid The post id to check&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp;* @param boolean $override Whether to override permissions or not.&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp;* @return array Post's attachments&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp;*/&lt;/span&gt;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;function&lt;/span&gt; get_post_attachments&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #0000ff;&quot;&gt;$postid&lt;/span&gt;,&lt;span style=&quot;color: #0000ff;&quot;&gt;$override&lt;/span&gt;=&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;FALSE&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span style=&quot;color: #0000ff;&quot;&gt;$query&lt;/span&gt; = &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;&amp;quot;&lt;/span&gt;;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span style=&quot;color: #b1b100;&quot;&gt;if&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #0000ff;&quot;&gt;$override&lt;/span&gt; == &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;FALSE&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt; &lt;span style=&quot;color: #0000ff;&quot;&gt;$query&lt;/span&gt; = &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot; AND attach_approved=1&amp;quot;&lt;/span&gt;; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span style=&quot;color: #0000ff;&quot;&gt;$this&lt;/span&gt;-&amp;gt;&lt;span style=&quot;color: #006600;&quot;&gt;DB&lt;/span&gt;-&amp;gt;&lt;span style=&quot;color: #006600;&quot;&gt;query&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt; &amp;nbsp; &amp;nbsp;&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot; &amp;nbsp; &amp;nbsp;SELECT *&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; FROM ibf_attachments&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; WHERE attach_pid='&amp;quot;&lt;/span&gt;.&lt;span style=&quot;color: #0000ff;&quot;&gt;$postid&lt;/span&gt;.&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;'&amp;quot;&lt;/span&gt;.&lt;span style=&quot;color: #0000ff;&quot;&gt;$query&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span style=&quot;color: #b1b100;&quot;&gt;if&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt; &lt;span style=&quot;color: #0000ff;&quot;&gt;$this&lt;/span&gt;-&amp;gt;&lt;span style=&quot;color: #006600;&quot;&gt;DB&lt;/span&gt;-&amp;gt;&lt;span style=&quot;color: #006600;&quot;&gt;get_num_rows&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt; == &lt;span style=&quot;color: #cc66cc;&quot;&gt;0&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt; &lt;span style=&quot;color: #b1b100;&quot;&gt;return&lt;/span&gt; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;FALSE&lt;/span&gt;; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span style=&quot;color: #b1b100;&quot;&gt;while&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt; &lt;span style=&quot;color: #0000ff;&quot;&gt;$row&lt;/span&gt; = &lt;span style=&quot;color: #0000ff;&quot;&gt;$this&lt;/span&gt;-&amp;gt;&lt;span style=&quot;color: #006600;&quot;&gt;DB&lt;/span&gt;-&amp;gt;&lt;span style=&quot;color: #006600;&quot;&gt;fetch_row&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt; &lt;span style=&quot;color: #0000ff;&quot;&gt;$return&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#93;&lt;/span&gt; = &lt;span style=&quot;color: #0000ff;&quot;&gt;$row&lt;/span&gt;; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span style=&quot;color: #0000ff;&quot;&gt;$this&lt;/span&gt;-&amp;gt;_cache&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;'post_attachments'&lt;/span&gt;.&lt;span style=&quot;color: #0000ff;&quot;&gt;$postid&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#93;&lt;/span&gt; = &lt;span style=&quot;color: #0000ff;&quot;&gt;$return&lt;/span&gt;;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;/**&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp;* Get HTML code for outputting an attachment image.&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp;* Utilisation d'un cache.&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp;* @author Guillaume Kulakowski &amp;lt;guillaume_AT_llaumgui_DOT_com&amp;gt;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp;* @since 1.11&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp;* @param integer $postid The post id to check&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp;* @param integer $id The attachment id to be parsed.&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp;* @param boolean $override Whether to override permissions or not.&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp;* @return string HTML code&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp;* @see attachment_info(), attachment_thumb()&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp;*/&lt;/span&gt;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;function&lt;/span&gt; attachment_image&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt; &lt;span style=&quot;color: #0000ff;&quot;&gt;$pid&lt;/span&gt;, &lt;span style=&quot;color: #0000ff;&quot;&gt;$id&lt;/span&gt;,&lt;span style=&quot;color: #0000ff;&quot;&gt;$override&lt;/span&gt;=&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;FALSE&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;/*&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;* On récupère tous les attachements du poste :&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;*/&lt;/span&gt;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span style=&quot;color: #b1b100;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt; &lt;a href=&quot;http://www.php.net/empty&quot;&gt;&lt;span style=&quot;color: #000066;&quot;&gt;empty&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #0000ff;&quot;&gt;$this&lt;/span&gt;-&amp;gt;_cache&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;'post_attachments'&lt;/span&gt;.&lt;span style=&quot;color: #0000ff;&quot;&gt;$pid&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#93;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span style=&quot;color: #0000ff;&quot;&gt;$this&lt;/span&gt;-&amp;gt;&lt;span style=&quot;color: #006600;&quot;&gt;get_post_attachments&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #0000ff;&quot;&gt;$pid&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;// Ancien sysèmeme, au cas où :&lt;/span&gt;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span style=&quot;color: #b1b100;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt; &lt;a href=&quot;http://www.php.net/empty&quot;&gt;&lt;span style=&quot;color: #000066;&quot;&gt;empty&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #0000ff;&quot;&gt;$this&lt;/span&gt;-&amp;gt;_cache&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;'post_attachments'&lt;/span&gt;.&lt;span style=&quot;color: #0000ff;&quot;&gt;$pid&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#93;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span style=&quot;color: #0000ff;&quot;&gt;$att&lt;/span&gt; = &lt;span style=&quot;color: #0000ff;&quot;&gt;$this&lt;/span&gt;-&amp;gt;&lt;span style=&quot;color: #006600;&quot;&gt;attachment_info&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #0000ff;&quot;&gt;$id&lt;/span&gt;,&lt;span style=&quot;color: #0000ff;&quot;&gt;$override&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span style=&quot;color: #b1b100;&quot;&gt;if&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #0000ff;&quot;&gt;$att&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;'attach_is_image'&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#93;&lt;/span&gt; == &lt;span style=&quot;color: #cc66cc;&quot;&gt;0&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt; &lt;span style=&quot;color: #b1b100;&quot;&gt;return&lt;/span&gt; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;FALSE&lt;/span&gt;; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span style=&quot;color: #b1b100;&quot;&gt;else&lt;/span&gt;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span style=&quot;color: #b1b100;&quot;&gt;foreach&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt; &lt;span style=&quot;color: #0000ff;&quot;&gt;$this&lt;/span&gt;-&amp;gt;_cache&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;'post_attachments'&lt;/span&gt;.&lt;span style=&quot;color: #0000ff;&quot;&gt;$pid&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#93;&lt;/span&gt; &lt;span style=&quot;color: #b1b100;&quot;&gt;as&lt;/span&gt; &lt;span style=&quot;color: #0000ff;&quot;&gt;$key&lt;/span&gt; =&amp;gt; &lt;span style=&quot;color: #0000ff;&quot;&gt;$value&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span style=&quot;color: #b1b100;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt; &lt;span style=&quot;color: #0000ff;&quot;&gt;$value&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;'attach_id'&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#93;&lt;/span&gt; == &lt;span style=&quot;color: #0000ff;&quot;&gt;$id&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt; &lt;span style=&quot;color: #0000ff;&quot;&gt;$att&lt;/span&gt; = &lt;span style=&quot;color: #0000ff;&quot;&gt;$value&lt;/span&gt;; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;/*&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;* Gestion des miniatures :&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;*/&lt;/span&gt;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span style=&quot;color: #b1b100;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt; &lt;a href=&quot;http://www.php.net/empty&quot;&gt;&lt;span style=&quot;color: #000066;&quot;&gt;empty&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #0000ff;&quot;&gt;$att&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;'attach_thumb_location'&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#93;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt; &lt;span style=&quot;color: #0000ff;&quot;&gt;$out&lt;/span&gt; = &lt;span style=&quot;color: #ff0000;&quot;&gt;'&amp;lt;img src=&amp;quot;'&lt;/span&gt;.&lt;span style=&quot;color: #0000ff;&quot;&gt;$this&lt;/span&gt;-&amp;gt;&lt;span style=&quot;color: #006600;&quot;&gt;board_url&lt;/span&gt;.&lt;span style=&quot;color: #ff0000;&quot;&gt;'/uploads/'&lt;/span&gt;.&lt;span style=&quot;color: #0000ff;&quot;&gt;$att&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;'attach_location'&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#93;&lt;/span&gt;.&lt;span style=&quot;color: #ff0000;&quot;&gt;'&amp;quot; alt=&amp;quot;'&lt;/span&gt;.&lt;span style=&quot;color: #0000ff;&quot;&gt;$att&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;'attach_file'&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#93;&lt;/span&gt;.&lt;span style=&quot;color: #ff0000;&quot;&gt;'&amp;quot; /&amp;gt;'&lt;/span&gt;; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span style=&quot;color: #b1b100;&quot;&gt;else&lt;/span&gt;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt; &lt;span style=&quot;color: #0000ff;&quot;&gt;$out&lt;/span&gt; = &lt;span style=&quot;color: #ff0000;&quot;&gt;'&amp;lt;a href=&amp;quot;'&lt;/span&gt;.&lt;span style=&quot;color: #0000ff;&quot;&gt;$this&lt;/span&gt;-&amp;gt;&lt;span style=&quot;color: #006600;&quot;&gt;board_url&lt;/span&gt;.&lt;span style=&quot;color: #ff0000;&quot;&gt;'/index.php?act=Attach&amp;amp;type=post&amp;amp;amp;id='&lt;/span&gt;.&lt;span style=&quot;color: #0000ff;&quot;&gt;$att&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;'attach_id'&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#93;&lt;/span&gt;.&lt;span style=&quot;color: #ff0000;&quot;&gt;'&amp;quot; target=&amp;quot;_blank&amp;quot;&amp;gt;&amp;lt;img src=&amp;quot;'&lt;/span&gt;.&lt;span style=&quot;color: #0000ff;&quot;&gt;$this&lt;/span&gt;-&amp;gt;&lt;span style=&quot;color: #006600;&quot;&gt;board_url&lt;/span&gt;.&lt;span style=&quot;color: #ff0000;&quot;&gt;'/uploads/'&lt;/span&gt;.&lt;span style=&quot;color: #0000ff;&quot;&gt;$att&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;'attach_thumb_location'&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#93;&lt;/span&gt;.&lt;span style=&quot;color: #ff0000;&quot;&gt;'&amp;quot; class=&amp;quot;attach&amp;quot; alt=&amp;quot;'&lt;/span&gt;.&lt;span style=&quot;color: #0000ff;&quot;&gt;$att&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;'attach_file'&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#93;&lt;/span&gt;.&lt;span style=&quot;color: #ff0000;&quot;&gt;'&amp;quot; /&amp;gt;&amp;lt;/a&amp;gt;'&lt;/span&gt;; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span style=&quot;color: #b1b100;&quot;&gt;return&lt;/span&gt; &lt;span style=&quot;color: #0000ff;&quot;&gt;$out&lt;/span&gt;;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;?&amp;gt;&lt;/span&gt;&lt;/code&gt;</description>
    
    
    
          <comments>http://www.llaumgui.com/post/ipbsdk-et-la-mauvaise-gestion-des-attachements#comment-form</comments>
      <wfw:comment>http://www.llaumgui.com/post/ipbsdk-et-la-mauvaise-gestion-des-attachements#comment-form</wfw:comment>
      <wfw:commentRss>http://www.llaumgui.com/feed/rss2/comments/49</wfw:commentRss>
      </item>
    
</channel>
</rss>