Ici ou ailleurs ...

Aller au contenu | Aller au menu | Aller à la recherche

janv. 30

infoglue 2.8.0

Et voilà la nouvelle collection hiver provenant de Suède : Infoglue 2.8.0 !

Pas mal de corrections et quelques changements (notamment la mise à jour de FCK editor : version 2.5.1, pour plus de détails, le changelog de la version 2.8.0), mais c'est surtout une préparation pour l'après, la version 3.0 prévue pour fin 2008.

Excellente nouvelle aussi, le site exemple a été mis à jour et reprend l'interface du nouveau site officiel d'Infoglue, plus clair, plus aéré et surtout beaucoup plus accessible.

Autre excellente nouvelle ? Intégration de jQuery !!! Wouhou !! J'avais envoyé à Matthias (le responsable d'Infoglue) cet été tout la section d'administration de l'application CMS (Management Tool) .. j'avais eut en retour pas mal de reproche et ensuite un silence radio assez frustrant ... l'intégration de jQuery me fait grandement plaisir et augure du très bon pour la suite ...

En effet, toute la partie glisser-déposer peut maintenant reposer sur jQuery UI. On va pouvoir intégrer très facilement des menus accordéons ou arbre très facilement dans le backoffice.
J'ai hâte de voir la suite des évolutions .. ça devrait être très intéressant !

Bonne chose aussi, une page regroupant des composants prêts à l'emploi est disponible sur le site officiel. Vous y trouverez le code du composant et ses propriétés.

Le nouveau site exemple est téléchargeable pour les ceux qui veulent tenter de l'installer sur les anciennes versions sur la page des sites.

Autre nouveauté, en périphérie du projet web : un greffon eclipse, IGIDE, permettant de développer (beaucoup) plus facilement des gabarits dans Infoglue. Plus besoin de faire des copier-coller. je connais de nombreuses personnes qui seront ravies de l'apprendre, moi le premier =)

Une portlet calendrier (JSR168) est aussi disponible au téléchargement. Bien qu'elle soit depuis longtemps en développement (disponible sur le CVS), je n'ai, pour l'instant, pas joué avec et ne peut donc rien en dire.

Pour les téléchargement c'est par ici :

oct. 25

jQuery-decorated évolue et change en profondeur

Mon idée originale autour du décorateur d'options à choix multiple semble aboutie. Ou tout du moins quasiment aboutie ... il doit rester des tests à effectuer sur les différents navigateurs pour s'assurer que tout fonctionne bien. Mais le principe est là. Le concept est posé.
Avec différents projets, j'ai été confronté à des situations nécessitant de tout petits composants javascipt que j'ai décidés de centraliser.

J'ai donc décidé de transformer le projet jquery-decorated en profondeur.
Ce projet ne correspond plus au seul et unique greffon de décoration d'options à choix multiple.
Ce greffon ne disparaît pas pour autant, il est simplement renommé : jquery-decorated-selectmadeeasier.

D'autres greffons ont rejoint la nouvelle famille de jquery-decorated, à savoir :

jquery-decorated-taperici
décore des champs texte en présentant un texte par défaut qui disparaît lorsque l'on clique dessus et qui réapparaît si on quitte ce champs sans rien avoir saisi.
jquery-decorated-confirmchange
permet d'avoir un message de confirmation lors de la soumission d'un formulaire qui a été modifié.
Ceci est très pratique pour décorer un formulaire avec des cases à cocher de suppression d'éléments. L'utilisateur sélectionne un élément à supprimer et à la soumission du formulaire, un message de confirmation s'affiche.
jquery-decorated-listtableizer
est un peu spécial et pas forcément très simple à expliquer, je vais tout de même tenter le coup. Prenez une liste d'éléments à plusieurs niveau.
Chaque élément est reconnaissable par une classe le caractérisant. Ces éléments peuvent se retrouver dans plusieurs branches de la liste. L'idée est de transformer cette liste en un tableau et en mutualisant les éléments identiques sur un même niveau. L'utilisateur peut alors cliquer sur une cellule de ce tableau, cellule qui représente un ou plusieurs éléments de la liste originale. Les éléments présents dans la ou les sous-arborescences originales ainsi que les ancètres sont alors mis en valeur.

Je n'ai pas encore eut l'occasion de m'occuper du site du projet. Je m'y mets dès que mon fournisseur d'accès décide de me raccorder au réseau.
Pour les curieux, le svn est, quant à lui, à jour.

Si vous avez des idées de "décorations" possibles, je serai ravi de les réaliser. N'hésitez pas à me contacter.

oct. 2

Infoglue 2.6

Réglée comme une horloge suisse ces derniers temps, l'équipe Infoglue sort la version d'automne 2007 de son système de gestion de contenu éponyme.

Vous pourrez trouver tous les détails sur cette nouvelle version sur la page du "changelog" d'Infoglue 2.6.

Vous pourrez aussi retrouver la page de téléchargement de Infoglue 2.6 et chose intéressante, la documentation 2.6.

Plus d'informations sur cette sortie, dès que j'ai mis les mains dedans =P

juil. 10

Infoglue 2.5.0

La version 2.5.0 d'Infoglue est disponible depuis le 17 juin 2007 et possède de nombreuses évolutions du produit :

  • possibilité de changer le type d'un contenu à la volée (on était contraint auparavant de le recréer)
  • mise à jour de FCKeditor en version 2.4.2 (la 2.4.3 est sorti le 14 juin)
  • amélioration des performances
  • amélioration de la tenu en charge
  • de nombreuses correction de bug
  • de nouveaux connecteurs pour les mécanismes d'authentification et d'authorisation
  • ajout de service web supplémentaires

Plus de détails sur la pages des nouveautés de la version 2.5.0. Voici le lien pour télécharger Infoglue 2.5.0 sur sourceforge. Et finalement, voici le lien pour la documentation des différentes version.

Si vous souhaitez avoir des informations concernant les anciennes version d'Infoglue, voici les liens vers les journaux de changement :

Présentation Infoglue Part 3

Pour la création de page d'un site, Infoglue propose une interface de construction par bloc. Comme avec des Légos, on construit sa page en ajoutant des blocs (appelés composants), le premier blocs étant (dans le cas d'une page web) un fragment HTML contenant la balise racine de la page <html>

Dans ce fragment HTML, on va insérer des balises spécifiques à Infoglue : les slots (slot signifiant emplacement en anglais). Un slot est représenté par la balise <ig:slot id="menuGauche"></ig:slot> (on vient de créer ici un emplacement identifié par menuGauche. Il est ensuite possible de rajouter d'autres composants à cet emplacement, ces composants pouvant eux aussi contenir des slots. Un structure arborescente de composants est alors définies et représentera les différents blocs de la page. Pour simplifier, on peut voir ces slots comme des emplacements où l'on aurait réalisé une inclusion de code avec un include en jsp par exemple.

Chaque niveau de cet arbre sera interprété par le constructeur de la page (appelé invoker) du niveau le plus bas vers le niveau le plus élevé c'est à dire le composant racine. Il est donc possible de faire un composant de niveau n+1 qui génère du code qui sera interprété lors du traitement du niveau n =P. L'avantage de cette interprétation par bloc est la possibilité de définir ces composants dans des langages différents. Il est possible d'écrire ces composants en JSP ainsi qu'en velocity ou en freemarker. Le velocity se prète très bien à l'écriture de composant simple de remontée de contenu. Cependant, ce langage montre rapidement ces faiblesses lors de traitements récurssifs malgrè l'usage de "fonctions" macros. A ce moment, la définition en JSP, bien que plus lourde en définition de variable, est plus robuste.

Chaque composant peut se voir paramétrés : par des liens vers des contenus ou des pages du CMS, par des champs texte, des cases à cocher, ... Ces informations sont ensuite récupérables dans les composant pour être traitées. De cette façon, on peut rendre dynamique de nombreux composants et surtout les rendre générique. Par exempl, on peut imaginer un composant qui affiche la liste des article dans un dossier de contenu, les paramètres pourraient donc être un lien vers le dossier de contenu et le nombre d'article à afficher. Je reviendrez dans un autre billet sur le paramétrage des composants et notamment la notion d'héritage de propriétés.

juil. 9

Présentation Infoglue Part 2

La grande force d'Infoglue est aussi sa principale difficulté d'approche. La séparation totale entre le contenu et la forme nécessite une certaine abstraction lors de la saisie. En effet, le contributeur ne décide pas de rajouter une telle page avec tel contenu comme on peut le rencontrer dans des CMS comme Jahia par exemple. La construction des pages est plutôt de la responsabilité du webmestre, les contributeurs étant limités à la saisie de contenu.

Cette séparation peut paraître pénalisante du fait de cette abstraction nécessaire. Cependant, cela entraîne une facilité inégalée de manipulation de ces contenus. La multireprésentation d'un contenu est un point important dans un CMS. Un contenu peut être affiché au sein d'une page web ou encore sous forme XML pour un traitement XSL, affiché de façon complète ou succinte, ... on peut imaginer tout ce que l'on abesoin et tout ceci sans duplication du contenu. On parle aussi de multipositionnement, un contenu de type article peut voir son accroche affiché sur la page de garde du site, son titre affiché dans un bloc de la colonne de droite ou son corps affiché dans son intégralité dans une page propre au contenu.

Depuis la version 2.3 d'Infoglue, un assistant de création de contenu rend la saisie de nouveaux contenu plus facile pour l'utilisateur. Lors de l'édition d'un contenu, l'interface propose de rattacher un contenu déjà existant ou de créer un nouveau contenu qui sera rattaché automatiquement à la page. De cette manière, la création de nouveau contenu se fait pas à pas pour l'utilisateur qui n'a donc plus à jongler entre les différentes pages de l'interface d'administration.

juil. 8

Présentation Infoglue Part 1

Infoglue est un système de gestion de contenu (CMS en anglais pour Content Management System). C'est un outil développé initiallement par un groupe suédois emmené par Mattias Bogeblad.

Basé sur des technologies J2EE reconnues (Hibernate, Castor, OSWorkflow, PropertySet, Webwork), il peut être connecté théoriquement avec n'importe quelle base de données possédant un connecteur JDBC (MySQL, PostGreSQL, SQL Server, Oracle, Sybase, ...).

Un flux de validation (validation worflow en anglais) à 2 étapes est disponible de base :

  • on crée un contenu, celui-ci est donc à l'état de brouillon,
  • le brouillon est soumis à publication, le contenu est à l'état d'attente de publication,
  • le contenu est enfin validé, le contenu est publié, il est disponible au public.

Ces 2 étapes de validation définissent donc 3 états possibles du contenu.

Le cycle de vie des contenus est disponible par défaut. Cela permet de définir à quelle période un contenu est disponible au public. Le contenu apparaît automatiquement à la date de début de son cycle de vie et disparaît automatiquement à la fin. Cette notion de cycle de vie permet d'introduire 2 sous-états pour l'état publié : actif ou archivé.

Au total par défaut, cela fait 4 états possible pour un contenu :

  • brouillon
  • en attente de publication
  • publié et actif
  • publié mais archivé

Il est possible de définir de nouveaux flux (de validation ou métier) en se basant sur les mécanismes d'OS Workflow. Dans le cas de nouveaux flux de validation, il est délicat de se raccorder au mécanisme natif d'Infoglue. Il est possible de le faire mais au prix d'un investissement élevé. Pour les flux métiers, il est possible d'appeler n'importe quel code Java (moyennant quelques interfaces à implémenter de façon simple). Cela peut être très pratique pour déclencher des traitements par lot (batch) directement à partir de l'interface d'administration.

Il est relativement simple d'implémenter un mécanisme de gestion des authorisations et des authentifications. Dans l'interface d'administration, il est possible de changer les classes java en charge de ces 2 points. Quelques classes java sont fournies et peuvent servir d'exemple pour le développement de mécanismes de gestion bien spécifique.
Parmis les connecteurs présent par défaut, on retrouve en autre pour l'authentification :

  • mécanisme de base d'Infoglue : mot de passe et utilisateur en base de données d'Infoglue
  • connecteur CAS : permet de déléguerl'authentification à un serveur CAS
  • connecteur LDAP : recherche les informations de connexions dans un annuaire LDAP

Pour l'authentification :

  • mécanisme de base d'Infoglue : rôles, groupes et leur affectation aux utilisateurs en base de données d'Infoglue.
  • connecteur LDAP : toutes les informations sont stockées dans l'annuaire LDAP. Infoglue est alors en lecture seule sur la gestion des authorisation, tout changement s'opère dans le LDAP.
juil. 7

Liferay 4.3 ... avec jQuery !

Liferay vient de sortir dans une toute nouvelle version 4.3 ! C'est un portail J2EE opensource, c'est à dire un portail alimenter par des briques métier appelées "Portlet" qui respecte la spécification JSR168. C'est aussi système de gestion de contenu (CMS en anglais pour Content Management System) qui s'appuie sur son propre moteur (Journal) ou qui délègue à un autre outil CMS (ici Alfresco).

Liferay brille par son interface en tout ajax, mécanisme qui est très à la mode actuellement. Cela permet de mettre en place des systèmes à la Netvibes.

Pourquoi je parle de Liferay ici ? C'est tout simple. Ils sont en train de refondre tout leur javascript en utilisant la bibliothèque jQuery (version 1.1.2). Beaucoup de greffon de jQuery sont inclus par défaut. Parmis eux, on retrouve :

C'est une bonne chose pour une jeune bibliothèque comme jQuery d'avoir dans ses références des acteurs de poids. On retrouvait déjà jQuery au sein du système de gestion de contenu Spip ... il va falloir s'attendre à voire débarquer cette bibliothèque dans de nombreux autres projets ... et ce n'est pas moi qui vais m'en plaindre =P

Vous pouvez dès à présent télécharger Liferay.

juil. 3

jQuery-decorated v0.7 disponible

J'suis comme un fou en ce moment ... je ne m'en lasse pas, jQuery c'est vraiment trop bien =)

Pour célébrer ça, le double clic et la navigation avec les flèches fonctionnent sous safari maintenant .. Plus qu'à tester sous IE =P

Le greffon est donc mis à jour sur le site de jquery-decorated.

juil. 2

Nouvelle version de jQuery ... 1.1.3

Pas le temps d'installer mon blog et de mettre en place mon petit projet pour jQuery que déjà une nouvelle version pointe le bout de son nez ...

Je n'ai pas fait plus de test que ça avec cette nouvelle version, mais en tout cas mon greffon fonctionne =)

La dernière version semble apporter un gain en performance énorme ... plus de détails chez jQuery directement ...

Le greffon est mis à jour sur le site de jquery-decorated.

- page 1 de 2