motercalo Refonte du système de stockage des images - www.yacs.fr

Skip to main content Help Control Panel

 

Communauté «   Développement «   Suggestions de fonctions «   Images «  

Refonte du système de stockage des images

No vote

Afin d'améliorer la gestion et le stockage des images dans Yacs, j'ai procédé à des modifications dans Yacs qui permettent d'obtenir un fonctionnement proche de ce que j'avais exposé dans l'article Le stockage des images.

En résumé :

  • le stockage des images n'est plus lié à la page où l'image a été uploadée.
  • on peut utiliser une même image dans plusieurs pages en définissant pour chaque page, si on le souhaite, des options différentes (titre, description, affichage en vignette ou pas)
  • on peut téléverser dans une page 2 images ayant le même nom de fichier sans que l'une vienne obligatoirement écraser l'autre
  • on peut supprimer une image d'une page sans que les autres pages l'utilisant soient impactées (mais si aucune autre page ne l'utilise, l'image est réellement supprimée du serveur).
  • on peut supprimer une page sans que les pages utilisant les mêmes images soient impactées
  • on pourrait savoir à quelles pages une image a été "associée"

Cette modif s'intègre "en douceur" dans Yacs sans remettre en cause les principes de la gestion actuelle des images qui sont conservés : méthodes de téléversements, champs associés aux images, code [ image=...], gestion des pièces jointes, etc

Pour l'appliquer sur un site existant, il faut encore écrire le script qui va modifier l'emplacement des fichiers images et remplir une nouvelle table (copie conforme de la table images) pour lier les pages à leurs images "source". Cependant, les contenus des pages n'ont pas besoin d'être retouchés.

Si l'équipe Yacs souhaite s'orienter dans cette voie, je tiens à sa disposition la méthode et le code.

P.S : A noter que le même principe pourrait être appliqué pour la gestion des fichiers.

Comments

Bernard Paques - on Mar. 10

Hmm, , un point délicat reste l'intégration du téléversement directement depuis TinyMCE. Le composant le permet, mais le script de réception en PHP reste à écrire. Cette nouvelle fonction serait un gros plus pour yacs, bien sûr...

La modularisation est importante pour faire ce que tu dit, mais aussi pour au moins deux autres raisons. L'une, ce serait d'intégrer yacs dans des systèmes de gestion externes. Par exemple, pourquoi ne pas coupler yacs avec un service SVN pour gérer les différentes versions des fichiers ?

L'autre raison, ce serait pour faciliter la virtualisation de yacs, c'est-à-dire la possibilité de gérer plusieurs serveurs différents avec le même code. Un seul répertoire de fichiers pour plusieurs serveurs, quoi. Le rêve de plusieurs SSII et hébergeurs que je connais ...


Jmarc - on Mar. 11
" un point délicat reste l'intégration du téléversement directement depuis TinyMCE. Le composant le permet, mais le script de réception en PHP reste à écrire. "

J'ai commencé à travailler sur cette possibilité (et d'autres) afin d'améliorer l'ergonomie d'utilisation des images dans les contenus Yacs. ça se présente pas mal pour l'instant.
Par contre, je suis parti sur FCKeditor qui permet de gérer les liens url associé aux images.

" faciliter la virtualisation de yacs, c'est-à-dire la possibilité de gérer plusieurs serveurs différents avec le même code. Un seul répertoire de fichiers pour plusieurs serveurs, quoi. "

J'ai proposé récemment à Alexis de plancher sur les architectures multisites et il a imaginé un système à base de liens symboliques qui parait très prometteur... Les tests sont en cours.


Bernard Paques - on Mar. 11

Cool !


Alain Lesage - on Mar. 15

Vous planez dans les hautes sphères de l'abstraction à mes yeux, mais j'ai bien hâte de voir le fruit de vos travaux. Ça me semble très prometteur, effectivement.


Alexis Raimbault - on Mar. 18

je reviens sur les images,

1)
"on peut téléverser dans une page 2 images ayant le même nom de fichier sans que l'une vienne obligatoirement écraser l'autre"

je comprends pas l'utilité ?

2)
Peut-on prévoire une commande qui supprime l'image de toutes les pages qui l'utilisent ? (par exemple si un associé veut faire du nettoyage)

3)
J'ai pas compris ce que sait faire FCKeditor mais pas TinyMCE ?





Jmarc - on Mar. 18

1) Utilité de charger 2 images ayant le même nom ? :

C'est utile lorsque tu crée une page où plusieurs contributeurs vont ajouter des images. Par exemple, la page "Elvis" risque d'avoir plusieurs personnes qui essaient de charger leur fichier "elvis.jpg" qui sont, en fait, des images différentes.

2) Peut-on prévoire une commande qui supprime l'image de toutes les pages qui l'utilisent ? (par exemple si un associé veut faire du nettoyage) :

Oui, absolument.

3) J'ai pas compris ce que sait faire FCKeditor mais pas TinyMCE ?

Quand tu insères une image avec TinyMCE, tu a une boite de dialogue pour définir tous les paramètres de l'image (alignement, taille, source,etc.) mais je n'ai pas vu le champ qui te permettrait de mettre le lien vers l'image en taille réelle.Or, ce champ est nécessaire si tu veux avoir une vignette cliquable pour zoomer dessus par exemple.


Christophe Battarel - on Mar. 19

j'ai déplacé ce fil dans Suggestions de fonctions / Images (posté initialement dans Propositions de code).




Christophe Battarel - Société altairis - yacspro-smallest.png
Download yacs