Mot-clef « RBS Change »

Messagerie privée pour RBS Change

Je viens de créer la page dédiée à ce module ainsi que le projet SourceForge pour ce module avec une première version de développement.

Donc au programme de ce module déjà évoqué il y a quelques temps : des messages organisés en conversations à deux participants ou plus. Il est possible d'inviter un nouveau participant en cours de route et de quitter une conversation (elle ne sera effacée en base qu'une fois que tous les participants l'auront quittée).

Cette version n'est pas encore utilisable notamment sur un point : la sélection des destinataire qui doit encore être revue. Mais il y a déjà pas mal de choses fonctionnelles, donc ça valait le coup de l'archiver quelque part ^^

Ce qu'il me reste à faire sur ce module avant d'en sortir une première version stable :

  • comme dit plus haut : implémenter une sélection viable des destinataires (là c'est une liste à sélection multiple... ça va quand il y a dix membres mais ça ne tient absolument pas un grande volumétrie).
  • indexer les messages pour qu'on puisse les retrouver dans la recherche mais en gérant correctement les permissions d'accès pour que seuls les participants de la discussion puissent les voir.
  • d’une manière ou d’une autre (rien n’est encore vraiment arrêté dans la façon de faire), possibilité de marquer des messages/discussions : “à traiter”, “réponse attendue”, “contient des informations importantes”…

Modules à venir pour RBS Change

J'entame progressivement la migration de mes forums vers RBS Change, ce qui implique le développement d'un bon nombre de fonctionnalités qui ne sont pas présentes dans les modules standards. Voici une petite liste de ce que j'ai déjà commencé :

Logos aléatoires

Il s'agit simplement de reproduire l'affichage aléatoire des logos comme c'est le cas sur EDForum. La version actuelle du module se borne à ce fonctionnel strict : toutes les n minutes, on change de logos en choisissant aléatoirement parmi les logos définis en backoffice, chaque logo ayant un poids donné.

C'est clairement pas le plus utile des modules mais c'est une fonctionnalité simple et il fallait bien commencer quelque part...

Évolutions à venir

À terme, j'ajouterai sans doute une galerie des logos en cours et passés.

Micro-news

Là aussi on reproduit à l'identique une fonctionnalité d'EDForum : il s'agit simplement de mettre en avant des liens d'actualités. Chaque "micro-news" contient un libellé et un lien (soit un document du site, soit une URL externe).

Le module dispose également d'une fonction d'importation de flux RSS externes et les blocs d'affichage s'accompagnent de la génération de flux RSS.

Messagerie privée

Là on entre dans le vif du sujet : après deux modules mineurs, on arrive à une fonctionnalité importante dans tout site communautaire (donc notamment un forum).

J'ai choisi de ne pas reprendre le modèle standard de messagerie privée calquée sur les mails qu'on peut trouver dans la plupart des gestionnaires de forums pour reprendre le principe utilisé sur les forums MesDiscussions.Net (Hardware.fr, JudgeHype ou encore Doctissimo) qui présente les messages plutôt comme des conversations, sous la même forme que les sujets des forums (quand on y pense c'est nettement plus pratique et logique).

Ce module-là est encore loin d'être fini mais il permettra entre autres :

  • un nombre de participants potentiellement supérieur à 2 (nombre maximum réglable par configuration).
  • invitation de nouveaux participants en cours de route.
  • indexation des messages.
  • possibilité de modifier un message tant que personne ne l'a lu.
  • d'une manière ou d'une autre (rien n'est encore vraiment arrêté dans la façon de faire), possibilité de marquer des messages/discussions : "à traiter", "réponse attendue", "contient des informations importantes"...

Pour plus d'informations sur le développement de ce module ou discuter de ses fonctionnalités, rendez-vous sur le sujet dédié sur EDForum.

La page dédiée et le repository SVN seront créés quand j'approcherai suffisamment d'une version utilisable.

Et ensuite ?

Ensuite je passerai sans doute à la gestion des smileys, l'ajout des bbcodes non-gérés en standard par Change... Ou autre chose selon ce qui m'inspirera le plus sur le moment :p

Quand à mon module de gestion de bibliothèque que j'évoquais lors de la sortie de Change, il a pas mal avancé mais je le laisse un peu de côté pour le moment puisque je ne le mettrai pas en ligne avant d'avoir migré les forums...

EDIT 16h41 :
Finalement j'ai fini ce qui manquait dans le module Micro-news, j'ai donc ajouté la page dédiée et initialisé le repository SVN avec la première version du code.


Correction pour l'inspecteur DOM de Firefox

Cet article est marqué comme contenant des informations dépassées depuis le 21/10/2018.
Cette extension n'existent plus, remplacée par les outils de développement natifs de Firefox.

Firefox propose sous forme d'une extension (en général incluse par défaut) un inspecteur DOM. Cet outils bien pratique permet de parcourir le DOM d'une page, de voir tous les attributs de chaque nœud, les styles appliqués, le code javascript associé, bref un paquet de choses qu'on est bien content de pouvoir consulter dans certains cas.

Pour une bonne partie de ces informations, des extensions comme les bien connues Web Developer ou Firebug offrent des interfaces plus agréables mais d'une ne permettent pas d'aller aussi loin et de deux ne permettent pas d'inspecter du DOM XUL... Or dans RBS Change, le backoffice est en XUL et quand on veut faire des choses assez avancées ou débuguer, on n'y coupe pas.

Le problème c'est que dans sa version actuelle, l'inspecteur DOM est foireux en version française : certaines clés de localisation manquent, ce qui bloque carrément le fonctionnement de certaines parties de l'interface...

J'espère que la correction sera incluse dans la prochaine version mais ça fait déjà plusieurs mois que ça dure et ça commence à bien faire... Voici donc une version corrigée du fichier inspector.jar contenant lesdites clés de localisation (les fichiers modifiés dans l'archive sont locale/fr/accessibleProps.dtd et locale/fr/styleRules.dtd).

Je me suis concentré sur le fait de rajouter les clés manquantes, la traduction n'est pas forcément top, voire dans le cas où je ne voyais pas comment traduire, j'ai carrément gardé le texte anglais... L'essentiel étant d'éviter le gros message en rouge qui dit qu'il manque une entité et bloque l'interface :)

Installation : ce fichier zip contient le fichier inspector.jar qui remplace le fichier suivant (sous Windows du moins, sur un autre système il faudra chercher un peu) :

C:\Documents and Settings\<votre-profil>\Application Data\Mozilla\Firefox\Profiles\1473dcd0.default\extensions\inspector@mozilla.org\chrome\inspector.jar

Une fois le fichier remplacé, relancez Firefox et le problème est réglé \o/

P.S. : puisqu'on parle de l'inspecteur DOM, j'en profite pour évoquer Stacked inspector une micro-extension bien pratique qui ne fait qu'ajouter un bouton permettant de switcher l'interface de l'inspecteur en mode vertical ou horizontal. Ça n'a l'air de rien mais dans certains cas c'est vachement plus agréable !


Sortie de RBS Change 3.0

Je n'ai pas trop parlé de mon boulot jusqu'à présent vu que quand on réalise un CMS propriétaire réservé aux clients de la boite où on travaille, ben ça n'intéresse pas grand monde en dehors...

Mais là, la donne change puisque ce CMS est sorti ce matin en version 3.0 avec l'a particularité que la plupart des modules sont open source et à usage gratuit. Les seuls payants sont plutôt des fonctionnalités assez avancées, principalement autour de l'e-commerce, qui n'ont de réel intérêt que sur un gros site et quasiment pas sur un site de taille raisonnable et à but non lucratif (or en dehors du boulot c'est plutôt cette deuxième catégorie de site qui m'intéresse :p).

Le CMS en question s'appelle RBS Change et est disponible sur son site dédié ouvert ce matin. Je n'épiloguerai pas sur un éloge interminable : je participe au développement depuis plusieurs années donc je ne serais sans doute pas objectif. Je vous laisse donc vous faire une idée avec la démo en ligne ou en l'installant chez vous (instructions disponibles sur le site). Je vais plutôt parler de ce que je compte faire avec en dehors du boulot.

Refonte de mes forums

Il y a quelque temps je parlais de mon projet d'abandon de PhpBB, puis à mon regret de ne rien trouver d'autre de satisfaisant et ma décision de me rabattre en désespoir de cause sur un développement perso. À l'époque j'avais regardé un peu les frameworks existants (notamment Symfony et Jelix), puis j'avais renoncé principalement par flemme d'apprendre à utiliser un autre Framework que celui que je développe et utilise déjà toute la semaine au boulot... Je m'étais donc rabattu sur un raffinage progressif de mon vieux PhpBB 2 en refondant des pans entiers et en introduisant plus d'objets en lieu et place du code presque uniquement séquentiel.

Maintenant que Change (j'ai pas l'habitude de coller le "RBS" devant et ça fait long, donc on se contentera de "Change" ^^) est open source, je vais progressivement migrer mes forums dessus. Parce que là plutôt que de devoir apprendre autre chose, je vais au contraire pouvoir exploiter du code que je connais bien, ce sera donc nettement plus efficace !

Liste de livres, DVDs, etc.

Je suis un grand consommateur de mangas et DVDs, mes étagères en sont pleines, du coup au bout d'un moment ça devient difficile de retenir tout ce qu'on a précisément. D'autant que les mangas je les achète d'occasion (prix divisé par deux en moyenne, quand on en achète des centaines, ça joue :p), donc des fois avec des trous (je prends ce que je trouve quand je le trouve). Jusqu'à présent je me contentais d'une liste imprimée mais quand elle devient trop longue, c'est plus très pratique... Et puis maintenant que j'ai un iPhone, j'ai accès au net même dans les magasins, d'où l'idée de me faire une application de gestion de cette liste en ligne (avec aussi un affichage dédié aux mobiles).

J'en avais parlé et apparemment il y a du monde intéressé, du coup le projet s'est élargit à une sorte d'application collaborative avec des fiches par œuvre, des commentaires, des notations, etc. Le tout à terme lié au forum. Les développements sont déjà bien entamés (sur une pré-version de Change datant d'un peu avant la sortie, lorsque le code commençait à se stabiliser). Ce sera sans doute le premier module que je sortirai. Il sera bien entendu téléchargeable librement (licence Affero GPL oblige : en gros c'est une transposition de la GPL dans le domaine des applications WEB où l'on doit publier toutes les modifications à destination de l'utilisateur final du site et pas seulement à celui à qui on livre l'application).

Et d'autres trucs encore...

J'ai déjà d'autres projets pour après, notamment :

  • un annuaire de styles pour Sylish : l'idée étant sur un site donné (en premier lieu mon forum en l'occurrence mais ça peut avoir un intérêt ailleurs aussi) d'avoir un espace où les membres peuvent publier leurs styles perso. Ce module est destiné à remplacer cette page et à profiter des fonctionnalités d'installation rapide et de mise à jour que propose Stylish.
  • et je ne désespère pas de mener un jour à bien mon projet de développement de jeu en ligne dans le navigateur que j'exhume régulièrement avant de le laisser sombrer à nouveau dans l'oubli... Mais à chaque fois ça va un peu plus loin, donc un jour ça ira peut-être jusqu'au bout :D
  • et sans doutes d'autres idées à la con (ou même pas à la con, qui sait ?) qui me viendront à l'avenir...
Voilà, rendez-vous un de ces jours pour la liste de livres et DVDs puisque c'est le seul projet vraiment entamé du lot et donc le premier qui sortira des cartons ^^