developer.jelix.org is not used any more and exists only for history. Post new tickets on the Github account.
developer.jelix.org n'est plus utilisée, et existe uniquement pour son historique. Postez les nouveaux tickets sur le compte github.

Opened 10 years ago

Closed 9 years ago

Last modified 9 years ago

#1220 closed enhancement (fixed)

Amélioration classe utilitaire jImageModifier

Reported by: manoo Owned by:
Priority: normal Milestone: Jelix 1.3
Component: jelix:utils Version: trunk
Severity: normal Keywords:
Cc: Blocked By:
Blocking: Documentation needed: no
Hosting Provider: Php version:

Description

jImageModifier est la classe qui permet la manipulation des images à travers notamment le plugin de template {image ...}. Ce mécanisme effectue également la mise en cache de l'image calculée dans le répertoire cache/images et un nom (md5)

Toutefois, il est intéressant dans un backoffice de pouvoir télécharger des images ("media manager") en les redimensionnant (pour être web compliant 640x480 pixels par exemple) mais sans en changer le nom et en les stockant dans un répertoire précis.

C'est l'objectif de la modification que je propose. Plutôt que réécrire quelque chose qui existe déjà et fonctionne bien, j'ai assoupli l'usage de la méthode transformAndCache. Elle rend la visibilité de la méthode transformAndCache publique afin de pouvoir l'utiliser dans toute l'application Jelix sans nécessairement passer par la méthode get. Le répertoire de destination (mise en cache) est maintenant paramétrable au niveau de l'appel de la méthode afin de pouvoir choisir le répertoire de destination. Par défaut, il reste cache/images/.

Comme cela on ne change pas le nom de fichier (puisque c'est la méthode Get qui le fait) et on conserve la possibilité de transformer l'image à la volée avec l'enregistrement dans le répertoire de son choix.

Manu

Attachments (1)

jImageModifier.patch (2.2 KB) - added by manoo 10 years ago.

Download all attachments as: .zip

Change History (9)

Changed 10 years ago by manoo

comment:1 Changed 10 years ago by manoo

  • Type changed from bug to enhancement

comment:2 Changed 10 years ago by Lipki

ça me parait bien :)

comment:3 Changed 10 years ago by laurentj

  • Milestone changed from Jelix 1.2RC2 to Jelix 1.3

comment:4 follow-up: Changed 10 years ago by laurentj

  • Milestone changed from Jelix 1.3 to Jelix 1.2.3
  • Resolution set to fixed
  • review review? deleted
  • Status changed from new to closed

Désolé, j'ai complètement zappé ce patch, quand j'ai effectué une modification de la même veine il y a quelques jours pour un projet, https://bitbucket.org/jelix/jelix-1.2.x/changeset/9c9bc5c6f23a. Toutefois mon patch permet d'indiquer tous les chemins et urls de la source et du cache. Voir la doc mise à jour. http://jelix.org/articles/fr/manuel-1.2/imagemodifier

comment:5 in reply to: ↑ 4 Changed 10 years ago by manoo

Replying to laurentj:

Désolé, j'ai complètement zappé ce patch, quand j'ai effectué une modification de la même veine il y a quelques jours pour un projet, https://bitbucket.org/jelix/jelix-1.2.x/changeset/9c9bc5c6f23a. Toutefois mon patch permet d'indiquer tous les chemins et urls de la source et du cache. Voir la doc mise à jour. http://jelix.org/articles/fr/manuel-1.2/imagemodifier

Dans ma modif, il est question de pouvoir utiliser la méthode transformAndCache (visibilité publique) directement donc sans prévoir le renommage du fichier par toute la mécanique au dessus (appelé à partir du plugin de template). Cela peut-être utile dans un back-office quand on souhaite télécharger(upload) une images et la redimensionner à la volée.

comment:6 Changed 9 years ago by manoo

  • Milestone changed from Jelix 1.2.3 to Jelix 1.3
  • Resolution fixed deleted
  • Status changed from closed to reopened

Bonjour,

je viens de migrer vers jelix 1.3, une application dans laquelle j'avais mis en oeuvre mon patch. Compte-tenu de la modification, je n'ai eu qu'à placer la méthode transformAndCache en visibilité Public (au lieu de protected) et alimenter correctement les paramètres ($srcFs, $cachePath, $cacheName) pour obtenir le même effet que ce que j'avais proposé dans le patch.

Voilà Merci pour la modification. Manu

comment:7 Changed 9 years ago by laurentj

  • Resolution set to fixed
  • Status changed from reopened to closed

methode accessible publiquement, et renommée pour que ce soit plus pertinent. https://bitbucket.org/jelix/jelix-trunk/changeset/23b47a7ab58b

comment:8 Changed 9 years ago by manoo

Ok super ! Merci.

Note: See TracTickets for help on using tickets.