Lien vers ce message 23 Octobre 2007, 0:58
Bonsoir,
après 5 mois de boulot / corrections / ajouts et mises à jour depuis la version RC4b de FSB2, voici la version RC5 qui comporte énormément de nouveauté de travail au sein du code source. Un des principaux changements avec la version RC4b, c'est que FSB2 ne tourne désormais plus sous PHP4. Il faut donc ainsi au moins PHP5 pour pouvoir utiliser cette version RC5 (et toutes les versions futures).

Pourquoi ce changement ? Parce que PHP4 est un langage casiement obsolète, parce que PHP5 est plus rapide / plus puissant et dispose de nombreux outils facilitants le développement d'applications PHP, et aussi parce qu'il m'a paru indispensable d'aller dans le sens du progrès et donc de couper à un certain moment cette rétro compatibilité avec la version PHP4. Un tel choix avait déjà été fait avec MySQL (FSB2 n'étant compatible qu'avec MySQL 4.1 et plus), et je n'ai pas eu à regretter ce choix.

Concernant la mise à jour de la RC4 vers la RC5, elle sera fournie par la suite. Ce sujet a pour but de mettre en téléchargement une pré version de la RC5, afin que vous puissiez la tester, et que les quelques bugs récurents à la sortie d'une RC soient vite découverts et corrigés. La vraie sortie de la RC5 avec la mise à jour se fera donc cette semaine, une fois cette version testée. Ne tentez pas de faire une mise à jour avant l'annonce officielle !

Pour télécharger la RC5 afin de l'installer et de la tester, voici le lien : http://www.fire-soft-board.com....0.0.prerc5.zip
N'utilisez pas cette version en environement de production ! Cette semaine (une fois cette version testée), sortira la version RC5 avec mise à jour, qui sera utilisable en environement de production.

Quelques nouveautés techniques exposées
  1. Ajout d'une librairie de fonctions (SDK) au forum, qui permettra de faire facilement communiquer le site et le forum. Un exemple simple, le code ci dessous permettra d'afficher les 15 derniers sujets du forum, en prenant en compte les droits des forums bien sur. Bien sur la fonction est paramétrable. On part du principe qu'on est sur une page site.php et que le forum est dans un répertoire fsb2/ :
    <?php
    
    define('ROOT', 'fsb2/'); // Chemin vers votre forum
    include(ROOT . 'sdk.php');
    
    echo '<ul>';
    foreach ($fsb->get_topics() AS $topic)
    {
    	echo '<li><a href="' . $fsb->url_topic($topic['t_id']) . '">' . $topic['t_title'] . '</a></li>';
    }
    echo '</ul>';
    
    ?>

    Au programme de ce SDK, beaucoup de fonctions pratiques : les membres en lignes, les évènements calendriers du moments, l'affichage de sondages sur le site, le classement des membres les plus actifs, la mise en place d'un captcha FSB2 sur le site, etc .. De nombreuses autres fonctions seront ajoutés d'ici la finale, et au fil du temps.

  2. Ajout des FSBcards. FSBcard, qu'est ce que c'est au juste ? Il s'agit d'un petit fichier XML que vous pouvez générer dans votre profil, via l'onglet "import / export" de profil. En allant sur un autre forum FSB2, il vous suffit ainsi d'importe votre FSBcard que vous avez générer et stoqué sur votre PC, pour retrouver instantanément votre profil. L'option permet aussi de stoquer facultativement ses identifiants d'inscription (login / mot de passe), afin de vous inscrire avec tout votre profil sur d'autres forums FSB2.

  3. Ajout du chiffrage RSA sur les identifiants d'inscriptions / de connexion pour une sécurité accrue. Le chiffrage RSA est la technologie utilisée par SSL pour protéger certaines pages internets (paiements en lignes notament). Lorsque vous vous identifiez, vos identifiants sont chiffrés via une clef publique unique à chaque forum, et déchiffrés par le forum gràce à sa clef privé. Ainsi le transit de vos informations personelles sur internet est sécurisé.

  4. Ajout d'une page d'informations en bas du forum, permettant aux visiteurs et membres de consulter les MODS installés sur votre forum, les thèmes, langues, rangs et l'équipe de modération du forum. Une page d'informations pratique en gros.

  5. Ajout d'une navigation bas débit, via un lien accessible dans le bas du forum. La navigation bas débit est faite pour la lecture des sujets du forum, pour les connexions lentes. Seul le strict necessaire pour une bonne lecture est affiché.

  6. Ajout d'une option d'installation rapide. Une option qui ne servira pas à la plupart des webmasters, mais les développeurs pourront installer un forum FSB2 en local en un seul clique grace à cette option, qui génèrera une base de donnée en créant un compte admin / admin sur le forum.


Ce ne sont que quelques unes des dizaines et dizaines de modifications apportées. Voici le changelog complet de cette version RC5. Les modifications écrites en vertes sont celles qui ont été apportées depuis ce sujet : Migration de ce forum vers FSB 2 RC5
  1. Passage du code du forum en PHP5, PHP4 n'est donc plus supporté par FSB2
  2. Réorganisation du moteur en ajoutant de nouvelles classes regroupant certaines fonctions, modifiant l'accès aux globales, etc ..
  3. Ajout d'une librairie de fonctions (fichier ~/sdk.php) pour faciliter le développement sur d'autres applications en utilisant les outils de FSB2
  4. Ajout d'une option d'installation rapide en local (pour les tests)
  5. Ajout du nombre de membres utilisant un thème
  6. Ajout d'un gestionaire pour les fichiers uploadés, dans la modération
  7. Ajout de l'obligation d'entrer un Email dans le formulaire de contact, et mise en valeur du fondateur
  8. Ajout de la possibilité de désactiver la page de contact des administrateurs
  9. Ajout de balises META description / keywords dans les sujets
  10. Ajout d'un compteur de téléchargement sur les fichiers uploadés + des informations sur le nom du fichier et sa taille, et de droits par fichiers
  11. Ajout d'un raccourci pour accéder plus facilement à l'édition avancée : un simple click lance la réponse rapide, un double click sur le message lance l'édition avancée
  12. Ajout de la possibilité d'activer / désactiver un membre dans la modération d'un membre
  13. Ajout d'un flux RSS pour voir les dernier messages postés par un membre
  14. Ajout de la possibilité d'afficher les X prochains évènements du calendrier des X prochains jours sur l'index
  15. Ajout d'une recherche Ajax sur le pseudonyme pour les droits dans l'administration et les membres dans la modération
  16. Ajout d'une option permettant d'activer le HTML dans les messages pour les modérateurs globaux / administrateurs. Option désactivée par défaut.
  17. Ajout d'un formulaire de recherche rapide dans les forums et les sujets
  18. Ajout de la possibilité de bannir pseudonyme ou adresse Email dans la modération des membres
  19. Ajout d'une procédure supprimant les données inutiles de la base de donnée (messages sans sujets, sujets sans messages, etc ..)
  20. Ajout d'une page d'informations sur le forum (liste des mods, thèmes, rangs, etc ..)
  21. Ajout de la gestion des fonctions de template dans la classe Tpl
  22. Ajout du support des FSBcard pour exporter / importer son profil sur d'autres forums
  23. Ajout du chiffrage RSA pour protéger les formulaires d'inscription et de connexion (dépendant de l'extension PHP Bcmath)
  24. Ajout de la possibilité de choisir un groupe par défaut dans son profil, permettant ainsi de choisir sa couleur sur le forum.
  25. Ajout d'une page administrative permettant la gestion des FSBcode actuels (désactivation, affichage, etc ..) et la création de nouveaux FSBcode. Refonte du parseur de FSBcode.
  26. Ajout de l'implémentation des sondages par défaut dans le système de MAPS (balise <poll> dans le header de la MAP)
  27. Ajout d'un lien vers les messages du membre dans les sujets sur le total de message du membre
  28. Ajout du forum et du sujet le plus actif dans le profil des membres
  29. Ajout du status en ligne / hors ligne dans le profil des membres
  30. Ajout d'un lien "qui a posté" sur le nombre de réponses d'un sujet, affichant les personnes ayant postées dans ce sujet, classé par total de participation
  31. Ajout de droits de lecture et d'écriture sur le calendrier. Les membres peuvent désormais avoir leurs évènements directement aprouvés
  32. Ajout de droits sur l'affichage des statistiques et de la boite "qui est en ligne" sur l'index
  33. Ajout d'un affichage de la date du type "il y a xx minutes (hh:mm)" pour les temps inférieurs à une heure
  34. Ajout de la possibilité de renvoyer l'Email d'activation du membre dans la modération de son profile
  35. Ajout d'une limite de flood sur les sujets (configurable dans l'administration)
  36. Ajout de logs d'actions sur les utilisateurs (visible par les modérateurs dans le profil public)
  37. Ajout d'une clef dans la table des fichiers joints pour éviter de retrouver le nom du fichier stoqué sur le serveur (sécurité augmentée)
  38. Ajout d'une fonction de recherche dans les messages privés
  39. Ajout de couleurs prédéfinies dans la palette de couleur
  40. Ajout des couleurs sur les créateurs des sujets dans la liste des sujets
  41. Ajout de la date de création du sujet sur les affichages de la recherche
  42. Ajout de la gestion WYSIWYG des FSBcode CODE et QUOTE
  43. Ajout de la possibilité de colorer les noms de forums
  44. Ajout d'une mention sur le log des Emails dans le formulaire d'envoie d'Email
  45. Ajout de la limitation de taille de la signature dans le profil
  46. Ajout de la possibilité d'utiliser des clefs de langue simplement dans les MAPS {LG_CLEF_DE_LANGUE}
  47. Ajout d'un nombre minimum de caractères pour les messages (configuration)
  48. Ajout d'une couleur différente dans le calendrier pour évènements et anniversaires
  49. Ajout d'une liste plus grande d'évènement dans le calendrier avant le regroupement en "X évènements"
  50. Ajout d'une fonction pour effectuer des opérations sur les forums dans l'admin, comme déplacer tous les sujets d'un forum vers un autre
  51. Ajout de la possibilité d'utiliser des clefs de langue dans les champs de profil via {LG_CLEF_DE_LANGUE}
  52. Ajout des même possibilités sur les champs de contacts, que sur les champs personels
  53. Ajout d'une possibilité de formatage d'affichage pour les champs de profil
  54. Ajout d'un log des connexions, avec IP
  55. Ajout de la possibilité de rapporter un message privé abusif
  56. Ajout d'une popup permettant de se rendre à la page que l'on désire sur la pagination, en cliquant sur la page courante
  57. Ajout d'un lien de sélection de code sur les balises CODE, pour sélectioner le contenu en un clique
  58. Ajout d'un champ "fusionner avec" dans la fusion de sujet, pour fusioner le sujet en courrant avec un autre directement
  59. Ajout de la modification des champs de profils personalisés dans la modération du membre
  60. Amélioration du formulaire de recherche pour les IP
  61. Amélioration de la recherche en ajoutant deux critères : date du message, et tri des messages
  62. Amélioration de la liste des forums dans le formulaire de recherche
  63. Amélioration de la sécurité des mots de passe générés automatiquement
  64. Déplacement du sexe dans l'affichage des sujets (affiché à côté du pseudonyme désormais)
  65. Optimisation des requêtes d'affichage de sujet (pour les gros forums)
  66. Optimisation du cache stocké en base de donnée
  67. Optimisation importante de la fonction recalculant les informations en cache dans les forums
  68. Optimisation de la création de champs de profil avec SQLite (au niveau de la gestion des ajouts / suppressions de colones)
  69. Refonte des procédures de modérations, en modifiant le langage des procédures (utilisation du XML, pour davantage de flexibilité et stabilité)
  70. Refonte de la classe de génération des flux RSS (support RSS 2.0 et ATOM 0.3)
  71. Refonte des messages abusifs en permettant une discussion des messages abusifs, et une organisation plus poussée
  72. Refonte totale du thème WhiteSummer
  73. Refonte de la gestion interne des mots de passe des membres, en sécurisant davantage les mots de passe, le cookie d'auto connexion et en facilitant les conversion d'autres forums vers FSB2
  74. Refonte de l'affichage de la liste des membres (affichage des informations par celules)
  75. Suppression du framework Artichow (gestion de graphiques avec la librairie GD, en PHP), au profit d'une classe plus simple
  76. Suppression de la palette de couleur dans l'administrateur au profil d'un mini éditeur CSS
  77. Suppression de la possibilité de choisir un répertoire pour ses smilies / rangs etc .. (inutile)
  78. Suppression des répertoires cache/ dans les thèmes. Ajout d'un répertoire commun ~/cache/tpl/
  79. Suppression des options "previsualiser HTML / PHP" dans l'édition des templates
  80. Suppression de la description des smilies, les noms de smilies sont mis en alt / title désormais
  81. Suppression des notifications MSN / Jabber (fonctions qui seront réintégérées probablements plus tard après stabilisations)
  82. Suppression du pngbehavior.htc sous IE6, qui corrigeait la transparence, mais empéchait le redimensionement des PNG
  83. Corrections orthographiques
  84. Fix du débugage lors de l'installation
  85. Fix titre de la page dana la fusion des sujets
  86. Fix du calcul des modérateurs et de la couleur des membres des groupes, grosse optimisation
  87. Fix de la fonction str_split en ajoutant une implémentation pour PHP4
  88. Fix de la date de dernière visite sur l'index
  89. Fix du chemin de l'image blanks.gif dans le fichier pngbehavior.htc
  90. Fix des statistiques (inscrits, sujets et messages par jour)
  91. Fix d'erreurs de clefs de langues sur les champs de profil personalisés
  92. Fix d'un bug qui passait les sujets en annonce globale lors de l'édition du premier message
  93. Fix de la recherche en affichant correctement les icones des sujets lus / non lus et du lien vers le dernier message
  94. Fix du lien sur l'index pour marquer les forums lus s'il n'y a aucun message non lus
  95. Fix d'un bug sur la coloration des mots clefs de la recherche
  96. Fix du formulaire de contact en remettant le Captcha
  97. Fix de l'affichage des fichiers commençant par un . (.htaccess par exemple) dans le webftp
  98. Fix de la modération de masse en gardant le panneau ouvert même en cas de changement de pages sur le forum
  99. Fix du rafraichissement du cache après avoir un créer un forum en dupliquant les droits
  100. Fix des effets de fermeture de blocks en javascript pour IE6
  101. Fix du nombre de résultats dans la recherche
  102. Fix du changement d'adresse Email en cas d'inscription confirmée par Email
  103. Fix du parseur XML en le réécrivant totalement de façon à ce qu'il soit plus souple, évolué et intuitif
  104. Fix du FSBcode URL de façon à prendre en compte les sauts de ligne
  105. Fix du parse automatique des URL pour éviter un bug avec le caractère ]
  106. Fix d'une faille XSS sur les avatars liés à distance
  107. Fix d'un bug sur des espaces étranges en UTF-8
  108. Fix d'un bug sur l'overflow dans les messages
  109. Fix de la fenêtre de chargement Ajax, en mettant plutôt un GIF pour plus de clartée
  110. Fix d'une injection HTML sur les titres des sujets sur l'index
  111. Fix d'une inversion dans les logs des modifications des droits du forum
  112. Fix de quelques bugs au niveau du panneau de gestion de la base de donnée dans l'administration
  113. Fix des fichiers en les passant tous au format UNIX
  114. Fix de l'icone pour joindre des fichiers au message si l'upload a été désactivée
  115. Fix de l'affichage des groupes invisibles pour les administrateurs
  116. Fix d'une injection SQL dans la recherche de membres de l'administration
  117. Fix d'un bug sur la recherche de membre inexistants dans la recherche avancée
  118. Fix d'un bug sur les types de sujet lors d'une édition
  119. Fix de la liste des groupes du membre dans son profil en permettant la selection du premier élément
  120. Fix de l'ajout de clefs de langues en émpéchant d'en créer sans clef
  121. Fix d'un bug sur les entités HTML dans l'édition des fichiers template du thème
  122. Fix du report de message abusif en ajoutant le lien de navigation manquant
  123. Fix de la validation des évènements de calendrier dans la modération en affichant le pseudonyme du membre
  124. Fix d'un notice sur les commentaires en fin de coloration PHP
  125. Fix d'un bug lors de l'annulation de l'édition rapide
  126. Fix de redirection en boucle sur la page d'oublie du mot de passe quand on veut se connecter
  127. Fix des pseudonymes des visiteurs dans les sujets (qui affichaient toujours le même)
  128. Fix d'un bug sur le prefetch des flux RSS
  129. Fix d'un bug sur l'index des mots dans le type de recherche fulltext_fsb
  130. Fix du bug des sauts de ligne sous IE
  131. Fix du bug qui cachait les avatars du profile lorsqu'on voulait cacher ceux des sujets
  132. Fix d'un bug sur le parse des listes en WYSIWYG (qui passait les listes non numérotées en listes numérotées)
  133. Fix de la description dans la fusion des sujets
  134. Fix des sondages lors d'un sujet / forum vérouillé (sondage désormais fermé pour les votes)
  135. Fix de l'affichage de la couleur sur le dernier inscrit
  136. Fix de la couleur des membres / groupes dans la liste des modérateurs d'un forum
  137. Fix du titre des pages de recherche des messages d'un membre pour améliorer le référencement
  138. Fix des clefs de langues sur certains logs
  139. Fix de la date de dernière visite dans les profils, en la cachant si le membre est en invisible
  140. Fix des dates d'anniversaire antérieures à la date de naissance, sur la calendrier
  141. Fix des attributs alt / title manquants sur les images principales
  142. Fix de failles XSS
  143. Fix des droits sur l'édition rapide dans les sujets verrouillés
  144. Fix de la taille du texte lors de la transformation du texte via le WYSIWYG
  145. Fix de la redirection lorsqu'on click sur le lien pour mettre les messages comme lus, dans une catégorie
  146. Fix de la classe d'upload pour sécuriser totalement les fichiers
  147. Fix de la vérification d'un domaine sous les serveurs windows
  148. Fix de l'édition des MP (qui n'éditait qu'un MP sur deux)
  149. Fix d'oublis de htmlspecialchars() dans la fenêtre d'envoie de messages
  150. Fix d'un bug sur les multi listes des champs de profils personalisés
  151. Fix d'un oublie de paramètre dans la reqêuet http pour le support automatique
  152. Fix d'un bug sur l'ouverture / fermeture des forums dans l'administration en javascript
  153. Fix d'un bug sur le tri des sujets du forum, dans l'URL de pagination
  154. Fix des listes de groupes en triant désormais par nom et non plus par ID
  155. Fix d'un bug sur les sondages qui permettait de créer des sondages sans aucune possibilité de réponse
  156. Fix de la blacklist des MP de façon à ne pas blacklister les administrateurs / modérateurs globaux
  157. Fix de la valeur par défaut du champ de notification automatique, qui désormais passera sur la valeur "Ne pas surveiller automatiquement, mais recevoir un Email pour les sujets que je surveil manuellement"
  158. Fix de bug graphique sur la pagination avec internet explorer
  159. Fix des avertissements donnés par procédure
  160. Fix du backup / restauration de MODS. Ajout de la suppression de l'entrée du MOD dans la base de donnée, lors de la restauration
  161. Fix du lien vers le dernier message d'un sujet lorsqu'un sujet non lu n'a encore jamais été lu
  162. Fix de la classe Backup (réécriture de l'algorithme) de façon à gérer les gros volumes de données à sauver
  163. Fix de l'envoie d'Email de masse à beaucoup de destinataires, en envoyant des Emails par block de 100 membres à la fois
  164. Fix du nom du forum en filtrant avec htmlspecialchars()
  165. Fix d'un manque de vérification sur qui pouvait approuver les évènements
  166. Fix du parse des smilies, en traitant en premier lieu les smilies avec un tag plus long
  167. Fix du WEBftp si hilight_file a été désactivé pour des "raisons de sécurité"
  168. Fix de l'affichage des forums d'une catégorie unique, en ne prenant pas en compte le pliage de cette catégorie
  169. Fix de l'indexation pour le moteur de recherche fulltext_fsb
  170. Fix de la balise <isUpdate /> pour l'installation des MODS, en permettant de gérer correctement le MOD parent


Cause Im as free as a bird now, And this bird you can not change. - Freebird - Lynyrd Skynyrd
There's someone in my head but it's not me. - Brain damage - Pink Floyd
I said baby, you know Im gonna leave you. - Babe I'm gonna leave you - Led Zeppelin
Father ? yes son, I want to kill you - The end - The Doors