Omacronides 4.2

Petite mise à jour du site, à la fois côté serveur et côté client, avec une mise à jour de la maquette, quelques corrections de bugs et l'activation de certaines nouvelles fonctionnalités.

La plupart des modifications ont touché l'arrière-cours, ce qui se passe côté serveur, même si j'en ai profité pour changer la maquette du site (comme toujours).

La principale évolution a touché la classe Template dont je me sers pour construire les pages web. Je ne suis pas vraiment un adepte des systèmes de Template comme Smarty :

  • parce qu'ils finissent par ressembler à d'immenses usines à gaz qui font tout, y compris le café, et que le rôle de ce type d'objet est de permettre essentiellement et avant tout d'afficher des données, pas de les créer / manipuler / modifier.
  • parce qu'ils ajoutent souvent un traitement supplémentaire en définissant un système de balises sensé simplifier l'écriture des fichiers de présentation.

C'est pourquoi à l'origine, l'API de Template était dés plus frugale et que l'affichage s'effectuait simplement par le setter de membre, un echo remplacant le return. Restait que cette simplicité entraînait certaines limites notamment dans l'affichage de données complexes comme des tableaux associatifs hiérarchisés. Et puis écrire des choses comme <?php $this->ma_donnee; ?> devenait de plus en plus « encombrant » au fur et à mesure que la complexité des fichiers augmentait.

Finalement, j'en suis revenu à un traitement plus « classique » en permettant l'utilisation d'une syntaxe type wiki pour afficher les données. L'exemple ci-dessus devient dés lors {{$ma_donnee}}. Pour le reste, la classe n'a plus d'API spécifique puisqu'il est toujours possible d'utiliser du code PHP directement.

J'ai par ailleurs corrigé quelques bugs dans FlatDB et développer une API pour le StxManager afin de pouvoir lui greffer des extensions et effectuer des traitements complémentaires.

Enfin, et comme toujours, la maquette du site a bénéficié d'un petit lifting. Rien de révolutionnaire : je reste toujours sur un modèle à une colonne, et il n'est pas certains que tous les bugs précédents soient corrigés.

Capture d'écran

Maquette du site version 4.1

Capture d'écran

Maquette du site version 4.2