Fedora-Fr - Communauté francophone Fedora - Linux

Planet de Fedora-Fr : la communauté francophone autour de la distribution Linux Fedora

A propos

Cette page est actualisée toutes les heures.

Cette page est une sélection de blogs autour de Fedora. Fedora-Fr.org décline toute responsabilité au sujet des propos tenus par les auteurs des blogs de ce planet. Leurs propos sont leur entière responsabilité.

Le contenu de ce planet appartient à leurs auteurs respectifs. Merci de consulter leur blogs pour obtenir les licences respectives.

Mot-clefs : eZFluxBB

eZFluxBB 1.3

Guillaume Kulakowski

Je viens de publier la version 1.3 d'eZFluxBB l'extension permettant de lier votre forum FluxBB à votre CMS eZ Publish.

Mais quelles sont les nouveautés ?

  • Ajout d'une fonction eZJSCoreCallServer pour récupérer les informations sur l'utilisateur courant,
  • Ajout d'un bloc eZFlow pour afficher les informations de connexion.

Autres nouveautés invisibles pour l'utilisateur

eZFluxBB 1.3 marque la fin du support de PunBB/FluxBB 1.2. Jusquà présent lorsque vous configuriez eZFluxBB, vous instanciez au besoin la classe eZFluxBB12 ou eZFluxBB14 en fonction de votre version, toutes les 2 héritant de la classe eZFluxBB.

Le problème est que de plus en plus de différences apparaissent dans les versions mineures (cookie différent, etc...). J'ai donc arrêté d'utiliser cette façon de faire et j'ai maintenant recours à des appels à version_compare au sein du code.

Mais l'autre nouveauté est l'utilisation d'un fichier *.ini pour toutes les requêtes MySQL ! Cette façon de procéder quelque peu étrange permet :

  • De modifier une requête uniquement dans le fichier ini en fonction de la version de FluxBB,
  • de pouvoir modifier une requête sans toucher au core de l'extension. Utile si vous avez des mods comme les sondages ou les messages privés sur votre forums.

A noter également que cette version est issue du travail d'intégration continue que j'ai récemment mis en place pour tous mes projets. L'archive est dailleurs générées à partir de phing.

Comme d'habitude c'est téléchargeable sur la forge de projet d'eZ Systems :

Fedora-Fr v5, étude de cas d'un site sous eZ Publish & eZ Flow

Guillaume Kulakowski

Rappelez-vous, il y a de cela 3 ans, Fedora-Fr passait sous eZ Publish pour les sous-domaines de portail et planet. Récemment nous avons entrepris une grosse refonte graphique de Fedora-Fr sous le nom de code "Fedora-Fr v5". L'occasion de revenir sur mon article précédent afin de converser sur les évolutions de notre implémentation du CMS eZ Publish.

eZFluxBB

La gestion des utilisateurs de Fedora-Fr est toujours confiée à FluxBB, notre logiciel de forums. C'est encore plus vrai que via notre application Gauffr, ce sont les informations issues de FluxBB qui sont utilisées par toutes les autres applications. eZ Publish utilise donc le connecteur eZFluxBB afin de récupérer les différentes informations (utilisateurs, statistiques, news, derniers topics, etc...) issues des forums.

Ce qui a le plus évolué c'est que le connecteur utilise à présent eZFlow et propose un ensemble de blocs pour cette extension portail d'eZ System.

Structure eZ mise en place sur Fedora-Fr

Les extensions

La structure a quelque peu évolué par rapport à mon précédent article.

On est toujours dans une architecture classique en eZ Publish, à savoir : 1 site = 1 extension. Mais en plus de l'extension dite socle (permettant de regrouper certains designs, les traductions et certains paramètres propres à tous les sites de Fedora-Fr), j'ai rajouté une extension de type socle_frontend regroupant l'ensemble des informations propres aux sites frontaux (notamment le fichier override.ini.append.php).

Structure des sites Fedora-Fr

Puisqu'on parle d'extensions, il est à noter que toutes les extensions créées pour les besoins de Fedora-Fr sont publiées sous licence GPLv2 :

  • eZFluxBB : connecteur eZ Publish / FluxBB.
  • eZGauffr : connecteur eZ Publish / Gauffr.
  • eZPlanet : gestion du planet avec notamment la tache planifiée qui va chercher les billets à partir des Flux renseignés dans le profil des membres.
  • eZTidy : implémentation de Tidy dans eZ Publish
  • leZRSS : amélioration de la fonction RSS native d'eZ Publish utilisant le système de template.
  • leZToolBox : ma boite à outils.

En plus de ces extensions, la plateforme utilise les composants officiels ci-dessous :

  • eZFlow : gestion des fonctionnalités de portail.
  • eZIE : éditeur d'image en ligne.
  • eZJSCore : framework JS/Ajax.
  • eZMultiIpload : upload multiple
  • eZOE : éditeur WYSIWYG.
  • eZWebin : dépendance d'eZFlow

Pour les extensions third party nous utilisons les suivantes :

  • admin2pp : amélioration de l'interface d'administration.
  • eZClassList : interface pour filtrer les objets eZ par type de contenu.
  • eZFeedParse : parseur de flux RSS.

Les classes

Les classes ont évolué avec le temps afin d'intégrer eZFlow et le datatype "page".

Les classes dans Fedora-Fr

Pour la petite histoire le système de "global layout" n'a été introduit qu'avec la version 5 de Fedora-Fr, avant il fallait à chaque fois se retaper toute la colonne pour chaque page...

Exemple de global layout

On notera également que pour la colonne de droite, celle-ci est facultative, si elle est vide alors c'est le "global layout" qui est utilisé.

Édition d'une classe avec eZFlow

Les différents sites de l'instance eZ Publish

Au www et planet dont javais parlé précédemment se sont rajoutés 2 nouveaux sous-domaines gérés par eZ Publish :

  • recherche.fedora-fr.org : Moteur de recherche globale sur tout le domaine Fedora-Fr
  • mon.fedora-fr.org : Système de page personnalisable

Le planet

Le planet a subit quelques évolutions avec la v5. J'ai notamment publié une nouvelle version de mon extension eZPlanet qui permet à présent de gérer les tags multiples. Une fois les billets tagués, il devenait évident de mettre en place un nuage de tags.

Le nuage de tags du planet de Fedora-Fr

La structure du planet a elle aussi beaucoup changé. Suite à une remarque de Damien, je suis passé d'une structure où tous les billets étaient dans un même nœud à une structure où tous les billets sont fils de l'auteur. Ce qui me permet de pouvoir rapidement supprimer tous les articles d'un même auteur simplement en masquant ce dernier.

La structure du planet de Fedora-Fr

Recherche globale

Le sous-domaine recherche n'est qu'une page eZFlow avec un bloc implémentant le service de Google : Google Custom Search engine. Actuellement en bêta, ce service a pour vocation de remplacer l'API Google Web Search, à présent dépréciée.

Google Custom Search Engine

Mon Fedora-Fr

Mon Fedora-Fr est une page d'accueil personnalisable reprenant les informations autours de Fedora et de Fedora-Fr. C'est une page inspirée des Netvibes ou iGoogle utilisant jQuery et jQueryUI dont notamment le composant sortable-portlets.

Ce site est actuellement en version alpha et devrait s'enrichir de fonctionnalités ainsi que de widgets. Il devrait également bientôt permettre de sauvegarder/charger ses préférences en base de données. Comme le site est assez lié au choix technologiques de Fedora-Fr, je ne pense pas en faire une extension eZ Publish. Cependant lorsque tout sera fini je ne manquerai pas de publier le code et d'expliquer le bouzin dans un billet dédié. Pour rappel les contraintes techniques sont :

  • Cache statique,
  • 0 requête MySQL,
  • Pas ou peu d'appel Ajax,
  • Base membres issue de FluxBB


Mon Fedora-Fr

Choix technologiques

Cache statique

Fedora-Fr utilise toujours massivement le cache statique. Je ne reviendrai donc pas dessus.

Bye bye Mootools

Depuis le passage à eZ Publish 4.3, j'ai dû me résoudre à migrer de MooTools vers jQuery, l'un des framework JavaScript retenu par eZ System et bien mieux intégré à eZ Publish via l'extension eZJSCore.

CSS Sprites

Fedora-Fr v5 a été l'occasion pour optimiser encore plus le site en adoptant notamment la technique du CSS Sprites. C'est un peu galère au début mais, en plus de diminuer le nombre de requêtes HTTP, ça évite de faire des preloads afin de contrer les effets de clipping sur les roll-over (les boutons du forum par exemple).

CSS Sprites Forums

CSS Sprites eZ Publish

eZ Publish + FluxBB = eZFluxBB 1.1.0

Guillaume Kulakowski

Ceux qui suivent l'actualité de fedora-fr l'auront remarqué : nous sommes passés sous la branche 1.4 du logiciel de forum FluxBB. L'occasion pour moi de mettre à jour mon extension pour eZ Publish permettant d'y intégrer FluxBB : eZFluxBB.

Au sommaire des nouveautés :

  • Bien entendu le support de la branche 1.4 de FluxBB.
  • Tout comme Fedora-Fr qui a fait dernièrement le tournant vers eZFlow, eZFluxBB intègre à présent la plupart de ses fonctionnalités au travers de block eZFlow.

Voila, c'est visible sur la home de Fedora-Fr, des exemples sont également visibles dans la galerie du projet. Le projet est hébergé sur la forge d'eZ System et c'est donc tout naturellement là-bas que vous pourrez télécharger la version 1.1.

Fedora-Fr de PunBB 1.2 vers FluxBB 1.4

Guillaume Kulakowski

Aujourd'hui les forums de Fedora-Fr ont été migré d'une archaïque version 1.2 de PunBB vers la toute dernière version de FluxBB : la 1.4.2. L'occasion pour mettre à jour mon extension eZFluxBB (disponible sur le SVN, le build arrive bientôt) permettant d'établir un pont entre FluxBB et eZ Publish. L'occasion aussi de développer un petit mod permettant de marquer les sujets comme résolus (bientôt mis à disposition, faut que je le package). Les autres nouveautés sont :

  • Léger rafraichissement du look grâce à CSS3 et CSS3 PIE.
  • Possibilité de rajouter des sondages.
  • Implémentation de reCaptcha.
  • Implémentation d'AddThis.

Voila, un dimanche bien studieux.

Fedora-Fr, mise à jour sous eZ Publish 4.3 et migration vers eZ Flow

Guillaume Kulakowski

Avec un peu de retard, Fedora-Fr vient enfin de passer d'eZ Publish 4.2 vers la version 4.3. Une mise à jour sans encombre une fois de plus grâce au cache statique qui permet de "tout casser" sans que les visiteurs en soient pénalisés ou même ne s'en rendent compte. Les autres éléments mis à jour ou modifiés sont les suivants :

C'est ce dernier point qui a été le plus long à réaliser. Jusqu'à présent, les blocs de Fedora-Fr étaient directement inclus depuis l'éditeur de texte (eZOE). Cette solution, à l'époque, était pratique mais avec l'arrivée d'eZ Flow les astuces utilisées devenaient absurdes. A présent la gestion des différents layouts d'une page est déléguée non plus à des cases à cocher mais à eZ Flow tout comme la gestion des différents blocs.

Fedora-Fr et eZ Flow

Cette migration a été aussi l'occasion de mettre à jour eZFluxBB qui comprend à présent des blocs eZ Flow pour inclure directement les informations de votre forum FluxBB dans votre portail eZ Publish ! Une nouvelle version d'eZFluxBB devrait bientôt voir le jour juste le temps de faire des tests avec FluxBB 1.4.

En effet, la prochaine étape sur Fedora-Fr sera de mettre à jour le forum de PunBB ver FluxBB 1.4.