Pages: 1 2
Bonjour,
Je n'ai pas réussi à trouver l'information ni dans le forum, ni dans un theme, ni un plugin ou encore moins dans une template-extension.
Je m'explique : L'icone "Ajouter à mes favoris" n'est disponible uniquement à l'affichage d'une image (picture.php). Hors Je souhaiterai l'avoir sous chaque image quand on fait le listing d'une catégorie.
Pensez vous que cela à déjà été fait ? quelqu'un a la possibilité d'une telle réalisation ?
Je vous remercie par avance.
Jean-François
Bonjour,
Donc vous voudriez voir une nouvelle icône sous chaque miniature ?
(thumbnail.php)
Hors ligne
Bonjour,
Uhmm je ne sais pas si c'est dans le fichier (thumbnail.php) que l'on doit faire le changement ...
Pour être sur que l'on parle de la même chose, c'est comme par exemple identique à la modification que fait le plugin Download multi, il rajoute un case à cocher sous chaque miniature dans le listage d'une catégorie. Je souhaiterai donc la même chose pour les favoris : Rajouter un icône "coeur" sous chaque miniature, cela permettrai de sélectionner plus vite ses favoris que devoir chaque fois aller sur l'image et cliquer sur "Ajouter à mes favoris".
Vous croyez cela possible ?
Je vous remercie en tous cas !!!
Jean-François
jfc a écrit:
Vous croyez cela possible ?
Oui tout est toujours possible le tout est d'avoir le temps de le coder ;-)
Oui le point de départ c'est (thumbnail.php)
L'idée est intéréssante
regarder ce que fait le plugin Download multi est une bonne piste
Hors ligne
ddtddt a écrit:
regarder ce que fait le plugin Download multi est une bonne piste
+1
Il me donne d'ailleurs du fil à retordre ce plugin ^^
Hors ligne
Bonne nouvelle, j'ai réussi à le faire grâce au plugin Download Multi.
si cela intéresse, je peux indiquer la modification à effectuer !
Je peux sur ce forum ?
Jean-François
Oui bien sur
Encore mieu on t'aide a en faire un plugin ;-)
Hors ligne
Alors voila les modifications :
Il faut éditer le fichier \plugins\download_multi\include\class.inc.php
Ligne 231, rajouter la fonction :
//DEBUT - MODIF POUR AVOIR LES FAVORIS EN DESSOUS DES IMAGES function Dmaddfavorite ($action_f,$id_image) { global $prefixeTable, $user; $url_up = duplicate_index_url(); if (isset($action_f)) { switch ($action_f) { case 'add_to_favorites' : { $query = ' INSERT INTO '.FAVORITES_TABLE.' (image_id,user_id) VALUES ('.$id_image.','.$user['id'].') ;'; pwg_query($query); redirect($url_up); break; } case 'remove_from_favorites' : { $query = ' DELETE FROM '.FAVORITES_TABLE.' WHERE user_id = '.$user['id'].' AND image_id = '.$id_image.' ;'; pwg_query($query); redirect($url_up); break; } } } }
Puis ensuite remplacer la fonction function DmCart() par celle-ci :
// Mise à jour du panier et favoris function DmCart() { if (isset($_GET['action_f'])) { $this->Dmaddfavorite($_GET['action_f'], $_GET['id_images']); } if (isset($_POST['action'])) { $this->DmControle(); } }
Et en dernier lieu, remplacer la fonction function DmCategoryThumbnail($tpl_var) par :
// Affiche les cases à cocher derrière le nom de l'image + icone favoris function DmCategoryThumbnail($tpl_var) { global $user; foreach($tpl_var as $cle=>$valeur) { //check si l'image fait partie des favoris de l'utilisateur $query = ' SELECT COUNT(*) AS nb_fav FROM '.FAVORITES_TABLE.' WHERE image_id = '.$tpl_var[$cle]['ID'].' AND user_id = '.$user['id'].' ;'; $row = pwg_db_fetch_assoc( pwg_query($query) ); $is_favorite = $row['nb_fav'] != 0; //on change l'image 'favorite.png' selon si elle est ou pas déjà dans les favoris de l'utilisateur if ($is_favorite == 0) {$image_favorite= 'favorite.png';} else {$image_favorite= 'del_favorite.png';} $tpl_var[$cle]['NAME'] = $tpl_var[$cle]['NAME'].' <br><input type="checkbox" name="id_images[]" value="'.$tpl_var[$cle]['ID'].'"> <a href="'.add_url_params("http://".$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'].'&id_images='.$tpl_var[$cle]['ID'],array("action_f"=> !$is_favorite ? "add_to_favorites" : "remove_from_favorites" )).'"> <img src="'.PHPWG_ROOT_PATH.'/themes/default/icon/'.$image_favorite.'" width="20px" class="button" alt="{\'download\'|@translate}" style="text-decoration:none;"> </a> '; } return $tpl_var; } //FIN - MODIF POUR AVOIR LES FAVORIS EN DESSOUS DES IMAGES
Bon, c'est pas du code pur "Piwigo" mais ca fonctionne :))))
Ah aussi, il faudra peut etre régler la hauteur du parametre suivant dans theme.css :
content ul.thumbnails span.thumbLegend { display:block; height:5.7em; /* augmenter pour une ligne en hauteur en plus */ }
Merci
Est ce la te dit d'essayer de publier un plugin qui fait cela pour que des utilisateurs puisses l'utiliser facilement ?
Hors ligne
Aie aie .. je suis pas encore un expert des plugins .... désolé !!
Mais je suis partant pour le faire, avec un peu d'aide :)
Car modifier le code du plugins Download_Multi a été assez aisé, mais en faire un .. :)
Mais avant de commencer, peut être attendre si mes modifs fonctionnent sur d'autres utilisateurs ?
Jean-François
L'idée ce n'est pas de partir de rien ;-)
Tu renomme le répertoire et tu supprime tout ce qui ne sert à rien
Tu renomme les fonctions pour pas que cela soit incompatible avec le plugin de départ
...
Hors ligne
Je vois le principe ... je vais essayer de le faire !! mais je promet rien LOL :)
Jean-François
Si tu essai c'est déjà super :-)
(si tu t'inscrit sur le forum, tu pourra être notifié des réponse à ce post)
Hors ligne
Bonjour,
ca y est, j'ai fait un plugin ... WHAAAAA :))))
Comment fais t on pour vous le transmettre ?
Jean-François
Quelle est la taille de l'archive ZIP ?
Souhaites-tu contribuer au projet Piwigo en étant développeur de plugin et bénéficier d'outils de développement et de diffusion dédiés (bugtracker, SVN, PEM) ?
Hors ligne
Pages: 1 2