Notes de version / Piwigo 2.0.0

pLoader, New theme "Sylvia", Privacy levels, NetInstall

2.0.0
Télécharger Piwigo 2.0.0

Sortie le 15 Février 2009

md5sum

L’équipe du projet est fière d’annoncer la première release de la nouvelle génération de PhpWebGallery : Piwigo 2.0.0. L’attente a été longue, mais le cadeau en valait la peine. Le nom du projet a changé de PhpWebGallery à Piwigo, pour les raisons suivantes: plus court, unique, sans référence à un langage de programmation, conserver l’acronyme PWG. Le site web a profondément changé, pour devenir plus plaisant et attractif, en espérant que vous apprécierez. Le thème graphique par défaut de Piwigo suit le graphisme du site piwigo.org. De nombreux mécanismes internes ont évolué.

Fonctionnalités pour les utilisateurs

  • pLoader, le client dédié pour le transfert
  • nouveau thème graphique Sylvia
  • 9 langues disponibles
  • synchronisation en 1 clic
  • AJAX et Javascript
  • permission pour chaque photo
  • amélioration du diaporama
  • tri manuel des photos dans une catégorie
  • gestionnaire de la barre de menu
  • surchargement des templates par défaut
  • NetInstall, installer Piwigo avec un simple script

Fonctionnalités pour les développeurs

  • nouveau moteur de template : Smarty
  • séparation des templates pour la partie publique et la partie administration
  • entièrement UTF-8
  • nécessite PHP 5
  • nécessite MySQL 5
  • nouvelle méthode dans l’API web pour ajouter des photos

Fonctionnalités utilisateur

pLoader

pLoader est un client dédié pour la préparation et le transfert des photos, sans passer par un client FTP :

pLoader court-circuite le processus de synchronisation, de sorte que les photos sont visibles dans la galerie aussitôt qu’elles sont transférées. Quoi de plus simple ?

N’importe quel utilisateur avec le niveau “administrateur” peut utiliser pLoader, vous pouvez par exemple utiliser Piwigo comme une galerie familiale.

Téléchargez pLoader pour Windows® et pour Ubuntu Linux.

Sylvia, nouveau thème graphique par défaut

L’arrivée de Piwigo 2.0.0 s’accompagne d’un nouveau thème graphique par défaut : Sylvia est composé d’un fond gris foncé et de décorations florales roses. stripy a rejoint l’équipe en 2008 et a travaillé sur la conception de ce nouveau thème pour Piwigo.

9 Langues

Cette fois-ci, nous avons collaboré avec la communauté de traduction avant même la release, dès la phase de beta-testing. En conséquence, 9 langues sont disponibles directement dans la première release de la nouvelle branche (par ordre alphabétique) : Deutsch (Allemand), English (Anglais), Español (Espagnol), Français, Hrvatski (Croate), Italiano (Italien), Nederlands (Hollandais), Polski (Polonais), Русский (Russe).

Bien d’autres viendront dans les prochaines semaines et seront disponibles dans la section extensions du site web.

Simplification du processus de synchronisation

Pour rendre la synchronisation plus simple, nous avons ajouté un énorme bouton sur la page d’accueil de la partie administration. Ce bouton évite d’avoir à lire toutes les options disponibles sur l’écran de synchronisation, les options les plus courantes ont été sélectionnées.

Note: pLoader n’utilise pas la synchronisation, mais nous n’avons pas retiré la méthode “transfert FTP + synchronisation” pour ajouter des photos, c’est simplement une alternative.

Comportements dynamiques côté client

Nous avons ajouté des comportements dynamiques côté client. Pour parler technique, nous avons implémenté des techniques AJAX et Javascript.

Partie publique
Partie administration

Permission sur chaque photo

Vous pouvez dorénavant gérer les permissions sur chaque photo, indépendamment des catégories. Les permissions par photo utilisent un nouveau mécanisme de “niveau de confidentialité”. Par défaut, il existe 5 niveaux de confidentialité : aucun, contacts, amis, famille, admins. Chaque utilisateur enregistré a son propre niveau de confidentialité, défini par l’administrateur de la galerie.

Les “amis” verront tout ce qu’un “contact” peut voir + les photos avec le niveau “amis”.

Le mécanisme des niveaux de confidentialité est légèrement moins puissant que les groupes pour la gestion des permissions des catégories. Néanmoins c’est beaucoup plus simple à gérer et devrait satisfaire les besoins de la grande majorité des webmestres.

Par exemple, si la photo “mariage_de_pierre-0024.jpg” a le niveau de confidentialité “famille”, Pierre (niveau “admin”) la verra, Josette (niveau “famille”) la verra également mais Gwendoline (niveau “amis”) ne la verra pas.

Selon leur niveau de confidentialité, 2 membres de la galerie verront plus ou moins de photos pour la même catégorie.

Les permissions sur chaque photo ne remplacent pas les permissions sur les catégories avec les groupes. C’est un ajout. Vous pouvez utiliser les deux mécanismes conjointement ou un seul des deux. En fonction des retours de la communauté d’utilisateurs de Piwigo, nous serons amenés à adapter la gestion des permissions sur un mécanisme ou un autre.

Diaporama amélioré

Lorsque vous activez le diaporama sur une sélection de photos, une nouvelle barre de boutons d’action apparaît. Vous pouvez accélerer ou ralentir, mettre en boucle, aller sur la première photo, la précédente, la suivante, la dernière, mettre en pause, relancer.

Tri manuel des photos

Longue attente. Cette fonctionnalité a été demandée de nombreuses fois depuis bien longtemps. Nous l’avons finalement ajoutée. A l’intérieur d’une catégorie, vous pouvez gérer l’ordre des photos de manière manuelle. Vous décidez par exemple d’avoir “mariage_de_pierre-0023.jpg” avant “mariage_de_pierre-0018.jpg”, quelque soit la date d’ajout, la date de création, le nom de la photo, son identifiant interne.

Pour cette première version, vous devez remplir les valeurs numériques du rang dans un champs texte, mais dans une verison future nous avons prévu de pouvoir gérer l’ordre par glisser/déposer, dans la partie administration et/ou dans pLoader.

Gestionnaire de la barre de menu

Un gestionnaire de la barre de menu a été ajouté. Il s’agit de la barre de menu que vous voyez sur la page principale de la galerie avec l’arbre des catégories, les spéciales, le menu, l’identification. Vous pouvez cacher certaines boîtes et les réordonners les unes par rapport aux autres.

Plus besoin de modifier les templates. Votre personnalisation ne sera pas perdu à la prochaine mise à jour de Piwigo.

Surchargement des templates par défaut

Pour une page données, picture.php par exemple, vous pouvez remplacer le template HTML picture.tpl par un autre template mon_template.tpl, sans dupliquer l’intégralité du template.

Encore un pas de plus pour faciliter la personnalisation de Piwigo.

NetInstall

Un nouveau et plus simple processus d’installation est désormais possible. Au lieu de :

  1. télécharger l’archive contenant tous les fichiers de Piwigo
  2. extraire les fichiers
  3. transférer les fichiers un par un sur votre serveur web

NetInstall propose :

  1. télécharger un unique script PHP, piwigo-netinstall.php
  2. transférer piwigo-netinstall.php sur votre serveur web
  3. ouvrir piwigo-netinstall.php dans votre navigateur web, il téléchargera l’archive depuis piwigo.org à votre place

Cette nouvelle méthode est une alternative et devrait rendre l’installation plus simple car vous avez beaucoup moins de fichiers à gérer. Moins de problèmes de transfert, moins de problèmes de droits d’accès.

Fonctionnalités pour les développeurs

Smarty comme moteur de template

Nous avons décidé de passer du moteur de template de phpBB (lui-même inspiré de PHPLib) à Smarty. Les avantages de Smarty sont principalement :

Comme les templates deviennent plus puissants, le code PHP devient plus simple, car de nombreuses lignes de code PHP étaient utilisés pour gérer ce qui devait être affiché dans les templates. Le code PHP est maintenant davantage orienté “métier”.

Un autre avantage remarquable de Smarty, c’est sa popularité. Partout dans le monde, de nombreux développeurs PHP connaissent ce moteur de template. Nous espèrons que notre choix génerera davantage de contributions (sur les templates et extensions de template) et l’arrivée de nouveaux membres dans l’équipe.

Séparation des templates de la partie publique et de la partie administration

Nous avons séparé le template de la partie administration par rapport à la partie publique. Dorénavant, il y un unique template “goto” pour l’administration (et un unique thème “roma”). Le template par défaut pour la partie publique reste “yoga”.

goto/roma pour la partie administration a le même style graphique que yoga/Sylvia pour la partie publique. Mais une personnalisation (CSS par exemple) sur yoga/Sylvia n’aura pas d’impact sur goto/roma.

La séparation a été implémentée parce que les webmestres souhaitent souvent personnaliser la partie publique, mais ne souhaite pas que la partie administration soit impactée pour autant. La séparation permet également de simplifier les feuilles de style CSS, car la partie publique n’inclus plus les règles CSS de la partie administration.

UTF-8

Piwigo devient entièrement UTF-8. Cela signifie que la gestion de l’encoding est simplifiée. Au lieu d’avoir un encoding pour chaque langue, il n’y a plus qu’un unique encoding, l’UTF-8, pour afficher tous les caractères existants au monde. Sur la même page, vous pouvez avoir des commentaires en chinois, anglais, français et russe.

Si votre galerie photo est internationale, vos visiteurs choisiront certainement d’afficher l’interface dans leur langue. Avec le plugin Extended Description vous pouvez avoir un titre de catégorie dans plusieurs langues. Dorénavant, interface et contenu peuvent dépendre de la langue. Vos visiteurs apprécieront !

PHP 5

Jusqu’à maintenant, nous conservions la compatibilité avec PHP 4. PHP 5 est considéré comme stable depuis 4 ans et PHP 4 n’est plus maintenu. Toutes les distributions Linux propose PHP 5 (même Debian qui prend toujours plus de temps pour proposer les dernières versions des logiciels packagés). Piwigo n’a pas de raison de conserver cette compatibilité, nous pouvons ainsi simplifier le code et profiter du PHP moderne.

MySQL 5

Principalement pour des raisons de gestion d’encoding, nous avons augmenté la version MySQL requise de 3.23 à 5.0. En effet, PhpWebGallery 1.7 ne requiert que MySQL 3.23 pour fonctionner. Comme pour PHP 5, il ne devrait pas y avoir de problème de disponibilité car MySQL 5.0 est considérée stable depuis 3 ans déjà et la version officiellement stable est la 5.1 (mais elle n'est pas disponible partout).

Ajouter une photo avec l'API web

pLoader a été rendu possible car Piwigo s’est enrichi d’une nouvelle méthode dans son API web : pwg.images.add. pLoader est simplement un client de cette méthode. Avec pwg.images.add, plus d’enchaînement complexe pour ajouter les photos (FTP + synchronisation), préparez les miniatures (assez facile sur le poste client avec n’importe quel langage de programmation) et appeler la méthode.

Nous espérons que dans le futur, la communauté proposera des scripts indépendants et des plugins intégrés à des applications bien connues comme Gimp, Lightroom, Aperture ou encore digiKam. Joyeux développement :-) et n’hésitez pas à venir discuter sur le forum.