Annonce

  •  » Utilisation
  •  » Petit Makefile d'aide à l'ajout d'images sur le site

#1 2009-03-07 23:57:10

tibtib17
Membre
2009-03-07
18

Petit Makefile d'aide à l'ajout d'images sur le site

Bonjour à tous,

Tout d'abord, je tiens à remercier toute l'équipe de développement pour cet outil formidable.

Je viens de le mettre en place à la maison, tout marche correctement.

Je trouve que l'utilisation de pLoader n'est pas très pratique, d'autant plus que j'aime beaucoup savoir ce que je manipule et comment il faut mettre en place.

Du coup, j'ai mis en place un Makefile. Je place la Makefile dans le dossier où se situent les photos, je lance make et tout est mis en place :
- les images initiales sont placées dans le dossier pwg_high
- création des thumbnail et des images affichées

Reste à prendre en compte les fichiers avec des accents et les fichiers avec des espaces. Je pense à un prétraitement avec un awk bien senti... Affaire à suivre

On place le dossier dans galleries, et le tour est joué.

Enjoy




#############################################

images=$(wildcard *.jpg)
images+=$(wildcard *.JPG)


imagestailleraisonnable=$(images:%=newimage/%)
thumbs=$(images:%=thumbnail/TN-%)


all : createsubdirthumbnailsnewimages $(thumbs) $(imagestailleraisonnable) move miseenplace


move :
    if [ ! -d pwg_high ] ; then mkdir pwg_high; fi
    mv $(images) pwg_high

createsubdirthumbnailsnewimages :
    if [ ! -d thumbnail ] ; then mkdir thumbnail; fi
    if [ ! -d newimage ] ; then mkdir newimage; fi
   
miseenplace :
    mv newimage/* .
    if [ -d newimage ] ; then rm -r newimage; fi
   
thumbnail/TN-% : %
    @echo "processing thumbnail on image $^"
    @convert -resize 128x128 $^ $@
   
newimage/% : %
    @echo "processing newimage on image $^"
    @convert -resize 800x800 $^ $@
   
#############################################

Hors ligne

#2 2009-03-08 09:37:06

nicolas
Former Piwigo Team
2004-12-30
1538

Re: Petit Makefile d'aide à l'ajout d'images sur le site

Quel est l'intérêt du Makefile ici ? C'est un  simple script shell que tu as fait. Tu n'utilises rien de ce qui fait la puissance d'un Makefile.


Donnez du peps à vos tags
Laissez vos visiteurs vous aidez à tagger vos images avec user_tags

Hors ligne

#3 2009-03-08 10:00:18

grum
Former Piwigo Team
50% Nantes - 50% Paris
2007-09-10
2502

Re: Petit Makefile d'aide à l'ajout d'images sur le site

nicolas a écrit:

Quel est l'intérêt du Makefile ici ? C'est un  simple script shell que tu as fait. Tu n'utilises rien de ce qui fait la puissance d'un Makefile.

chacun exploite les outils à disposition selon ses besoins et son niveau de connaissance.

Je ne connais pas le principe du makefile, mais peut-être que si tibtib17 veut faire évoluer son script, c'est une bonne base ?


Mes photos avec Piwigo évidemment !
[ www.grum.fr ] [ photos.grum.fr ]

Hors ligne

#4 2009-03-08 11:49:11

plg
Équipe Piwigo
Nantes, France, Europe
2002-04-05
12375

Re: Petit Makefile d'aide à l'ajout d'images sur le site

tibtib17 a écrit:

On place le dossier dans galleries, et le tour est joué.

Donc ton script gère la préparation, mais pas l'ajout. Si tu veux aller un peu plus loin, regarde tools/piwigo_remote.pl, c'est un exemple en Perl de comment utiliser pwg.images.add pour ajouter la photo sans passer par FTP (comme pLoader).


Dernier billet du blog Piwigo.com (18 mars 2020) Covid19 : allongement de la période d’essai pour les entreprises

Hors ligne

#5 2009-03-08 14:25:49

tibtib17
Membre
2009-03-07
18

Re: Petit Makefile d'aide à l'ajout d'images sur le site

nicolas a écrit:

Quel est l'intérêt du Makefile ici ? C'est un  simple script shell que tu as fait. Tu n'utilises rien de ce qui fait la puissance d'un Makefile.

Effectivement nicolas... Tu as tout à fait raison. Même si je n'ai pas tout montré ici, le but initial est effectivement de ne pas refaire les miniatures si il n'y en a pas besoin. Ceci dit, l'intérêt dans ce cas bien précis d'un Makefile est parfaitement discutable.

Tu accorderas j'espère le bénéfice de l'heure tardive de mon message et de la fatigue d'un organisme vieux et fatigué :)

Merci à grum de prendre ma défense :)

Quant à plg, merci de m'indiquer ce que je n'avais même pas soupçonné encore.

Je ne suis pas très familier des WebServices, et je n'avais pas encore parcouru toute l'arborescence de pwg. Votre API de WS est tout bonnement impressionnante! Même si je ne suis pas très familier avec PHP et perl, je mesure maintenant bien mieux la quantité de travail et de facilité apportée à l'utilisateur. Je vous félicite donc à nouveau.

Dans mon cas bien précis, j'ai très facilement accès à la machine qui héberge le site, et le passage par un ws est inutile.

C'est peut-être documenté qqpart, mais tant que je vous tiens je pose la question quand même.

Que fait exactement le bouton de synchronisation? Quelles sont les modifications apportées à la bdd, et y a-t-il un moyen simple d'appeler ça via un script/Makefile ? ;)

J'ai encore mille questions, mais avant de les poser, je vais parcourir le forum, histoire de voir s'il n'y a pas déjà des réponses.

Hors ligne

#6 2009-03-08 14:36:43

nicolas
Former Piwigo Team
2004-12-30
1538

Re: Petit Makefile d'aide à l'ajout d'images sur le site

tibtib17 a écrit:

nicolas a écrit:

Quel est l'intérêt du Makefile ici ? C'est un  simple script shell que tu as fait. Tu n'utilises rien de ce qui fait la puissance d'un Makefile.

Effectivement nicolas... Tu as tout à fait raison. Même si je n'ai pas tout montré ici, le but initial est effectivement de ne pas refaire les miniatures si il n'y en a pas besoin. Ceci dit, l'intérêt dans ce cas bien précis d'un Makefile est parfaitement discutable.

Tu accorderas j'espère le bénéfice de l'heure tardive de mon message et de la fatigue d'un organisme vieux et fatigué :)

Ok. Mais quand j'ai lu le titre du message je m'attendais à un superbe Makefile et ne pas voir de règle de fabrication m'a quelque peu déçu. J'adore les Makefile et j'en use et j'en abuse.


Donnez du peps à vos tags
Laissez vos visiteurs vous aidez à tagger vos images avec user_tags

Hors ligne

#7 2009-03-13 00:49:07

plg
Équipe Piwigo
Nantes, France, Europe
2002-04-05
12375

Re: Petit Makefile d'aide à l'ajout d'images sur le site

tibtib17 a écrit:

Je ne suis pas très familier des WebServices, et je n'avais pas encore parcouru toute l'arborescence de pwg. Votre API de WS est tout bonnement impressionnante!

Pour dire vrai, je n'ai commencé à me pencher vraiment sur l'API web de Piwigo que lorsque j'ai commencé à développer pwg.images.add. rvelices avait ajouté l'API longtemps avant (dès la 1.7) et c'est vrai que waouh quand j'ai vu ça moi aussi :-)

L'API web de Piwigo est de type REST (une requéte HTTP avec des paramètres sous forme GET ou POST, une réponse HTTP sous forme de structure de données encodée en JSON/PHP sérialisé/autre), donc c'est 10 à 12 fois moins compliqué que du SOAP (qui n'est de toute façon adapté qu'à Java et .Net car il faut générer des classes pour les appeler, sinon c'est trop compliqué). Bref, je n'aime pas SOAP et je trouve REST très plaisant car simple et ça marche tout simplement !

tibtib17 a écrit:

Dans mon cas bien précis, j'ai très facilement accès à la machine qui héberge le site, et le passage par un ws est inutile.

Si si quand même. Passer par l'API web permet de ne pas avoir à comprendre la mécanique interne (ne pas avoir à regarder le modèle de données par exemple) et on assure la continuité. Ton script devrait tourner avec un Piwigo 2.1 aussi bien qu'avec un Piwigo 2.0, à quelques petits changements prêt, qui seront documentés clairement. Alors que si tu tapes directement dans le modèle de données, tu va devoir faire du retro-engineering pour comprendre ce qui a changé entre la 2.0 et la 2.1 pour adapter ton code (bref, tu vas refaire un travail déjà fait, c'est dommage).

Que fait exactement le bouton de synchronisation? Quelles sont les modifications apportées à la bdd, et y a-t-il un moyen simple d'appeler ça via un script/Makefile ? ;)

Grossièrement la synchronisation suit les étapes suivantes:

- listing de tous les répertoires en filesystem
- listing de toutes les catégories physique déclarées en base
- comparaison des 2 listes puis création/suppression de catégories physiques en base

- listing de tous les fichiers images en filesystem
- listing de toutes les photos déclarées en base
- comparaison des 2 listes puis création/suppression de photos en base

On pourrait ajouter une méthode pwg.synchronize dans l'API et c'est ce que j'avais prévu de faire au tout début des devs de pwg.images.add, mais ensuite, j'ai changé d'avis, j'ai préféré me simplifier énormément la vie en court-circuitant la synchronisation. Je te conseille donc de passer tout simplement par pwg.images.add qui ajoutera proprement chaque photo dans la base.


Dernier billet du blog Piwigo.com (18 mars 2020) Covid19 : allongement de la période d’essai pour les entreprises

Hors ligne

#8 2009-03-13 14:38:11

tibtib17
Membre
2009-03-07
18

Re: Petit Makefile d'aide à l'ajout d'images sur le site

plg a écrit:

tibtib17 a écrit:

Dans mon cas bien précis, j'ai très facilement accès à la machine qui héberge le site, et le passage par un ws est inutile.

Si si quand même. Passer par l'API web permet de ne pas avoir à comprendre la mécanique interne (ne pas avoir à regarder le modèle de données par exemple) et on assure la continuité. Ton script devrait tourner avec un Piwigo 2.1 aussi bien qu'avec un Piwigo 2.0, à quelques petits changements prêt, qui seront documentés clairement. Alors que si tu tapes directement dans le modèle de données, tu va devoir faire du retro-engineering pour comprendre ce qui a changé entre la 2.0 et la 2.1 pour adapter ton code (bref, tu vas refaire un travail déjà fait, c'est dommage).

Pardonne moi l'expression, mais c'est un peu con qd même :)

Dommage, car la machine qui héberge pwg héberge aussi mes photos. Alors qu'un simple cp+script de mise en place suffit, il faut passer par ploader.

Ceci dit, je comprends très bien... Bref, je passe.



Merci pour cette description du mode de fonctionnement des ws, et de la cuisine interne de pwg.

Pendant la semaine, j'ai découvert un peu mieux pwg, j'ai fait le tour du site, des forums, et regardé les extension possibles. Après avoir vu la mise en place des plugins (automatiquement via l'interface web svp!) je comprends bien mieux le mode de fonctionnement de pwg.

Ce makefile ne sert donc plus à rien.


En fait, je passe de JBCExplorer à PWG et j'avoue que je suis de plus en plus étonné.

JBC-E est très très bien, j'ai juste mis la main dans le camboui deux ou trois fois, des broutilles, mais qd même. Sa gestion des fichiers/dossiers/images/miniatures est entièrement automatique, et c'est pour cela que je souhaitais retrouver la même chose sur PWG. L'arborescence de JBC-E est certes dépendante de celle des dossiers/fichiers mais je m'y étais habitué. (un plus de jbc-e est de ne jamais utiliser de bd). Bref, pas mal d'avantages, et c'est difficile pour moi de passer à autre chose, trop d'habitudes que je souhaite retrouver.

Je comprends maintenant que la philosophie de PWG est totalement différente. Votre logiciel en est à un tel point de maturité que je pense qu'à ce stade du développement, vous devez mettre l'accent sur les plugins et ploader. Mais à mon avis, surtout ploader, c'est ce qui pêche.

Je ne vais pas faire ici le détail des choses que j'aurais à dire sur ploader, il doit y avoir sur ce forum un post à ce sujet, et je m'empresserai de le remplir dès que je vais le trouver.

Avant de clore ce sujet inutile, je tiens une dernière fois à vous remercier pour votre accessibilité et votre aide.

@ bientôt,

tib

PS : nicolas, moi aussi j'use et abuse des makefile, la preuve, j'en fais là où ils ne servent pas ;)

Hors ligne

#9 2009-03-13 21:14:49

plg
Équipe Piwigo
Nantes, France, Europe
2002-04-05
12375

Re: Petit Makefile d'aide à l'ajout d'images sur le site

tibtib17 a écrit:

Pardonne moi l'expression, mais c'est un peu con qd même :)

Dommage, car la machine qui héberge pwg héberge aussi mes photos. Alors qu'un simple cp+script de mise en place suffit, il faut passer par ploader.

Je n'ai pas écrit qu'il fallait passer par pLoader. J'ai écrit qu'il était fortement recommandé de passer par l'API web de Piwigo. pLoader est un "client" de l'API web Piwigo. Ton script pourrait un autre "client" de cette API. Dans le futur, j'espère (et je vais voir les possibilités) que de nombreux "clients" vont naître : des plugins pour Digikam, pour Picasa, pour LightRoom, pour Aperture, pour IPhoto, etc. Ces "clients" ne passeront évidemment pas par pLoader.

(un plus de jbc-e est de ne jamais utiliser de bd)

Ne pas passer par une base de données implique beaucoup de limites dans les fonctionnalités. Je ne dirais pas que c'est un avantage, ni un inconvénient; c'est un choix de conception.

Je comprends maintenant que la philosophie de PWG est totalement différente. Votre logiciel en est à un tel point de maturité que je pense qu'à ce stade du développement, vous devez mettre l'accent sur les plugins et ploader. Mais à mon avis, surtout ploader, c'est ce qui pêche.

Je ne vais pas faire ici le détail des choses que j'aurais à dire sur ploader, il doit y avoir sur ce forum un post à ce sujet, et je m'empresserai de le remplir dès que je vais le trouver.

Oui, je suis impatient de lire les remarques concernant pLoader, c'est grâce au retour des utilisateurs qu'on l'améliorera !

Avant de clore ce sujet inutile, je tiens une dernière fois à vous remercier pour votre accessibilité et votre aide.

Pas inutile du tout comme topic, je trouve qu'il apporte quelques informations intéressantes, non?


Dernier billet du blog Piwigo.com (18 mars 2020) Covid19 : allongement de la période d’essai pour les entreprises

Hors ligne

  •  » Utilisation
  •  » Petit Makefile d'aide à l'ajout d'images sur le site

Pied de page des forums

Propulsé par FluxBB

github twitter newsletter Faire un don Piwigo.org © 2002-2020 · Contact