Bonjour/Bonsoir,
Depuis ma mise à jour en 13.3.0, Image Preview (version 1.3.12) ne fonctionne plus : désactivation et réactivation n'y fond rien !
Peut-être la version PHP? J'étais en PHP 7.4 et maintenant je suis en 8.1...
Je pense que le code n'est pas compatible avec php 8 : mais je ne vois pas où se trouve le problème !
Fichier : main.inc
<?php /* Plugin Name: Image Preview Version: 1.3.12 Description: give an image preview when the mouve is over a thumbnail Plugin URI: http://piwigo.org/ext/extension_view.php?eid=551 Author: Flop25 Author URI: http://www.planete-flop.fr/ Has Settings: webmaster */ if (!defined('PHPWG_ROOT_PATH')) die('Hacking attempt!'); define('IMGP_DIR' , basename(dirname(__FILE__))); define('IMGP_PATH' , PHPWG_PLUGINS_PATH . IMGP_DIR . '/'); /** thumbnails.tpl **/ add_event_handler('loc_end_index_thumbnails', 'imgpreview_thumbnails'); function imgpreview_thumbnails($tpl_thumbnails_var) { global $template, $conf ; $conf_imgp = explode("#" , $conf['imgpreview']); $imgpreview=array( 'width' => $conf_imgp[0], 'height' => $conf_imgp[1], 'title' => $conf_imgp[2], 'opacity' => $conf_imgp[3] , 'preloadImages' => $conf_imgp[4] ); $template->assign(array( 'imgpreview' => $imgpreview )); $template->set_prefilter('index_thumbnails', 'imgpreview_prefilter_thumbnails'); $template->set_prefilter('stuffs', 'imgpreview_prefilter_thumbnails'); $dir=dirname(__FILE__).'/css_js.tpl'; $template->set_filenames(array( 'imgpreview_css_js' => realpath($dir), ) ); $template->assign_var_from_handle('IMGPREVIEW', 'imgpreview_css_js'); return $tpl_thumbnails_var; } function imgpreview_prefilter_thumbnails($content) { global $template; $search = 'href="{$thumbnail.URL}"'; if (version_compare(PHPWG_VERSION, '2.4', '>=')) { $replacement = 'href="{$thumbnail.URL}" {define_derivative name=\'derivative_imgprev\' width=$imgpreview.width height=$imgpreview.height crop=false}{assign var=d_imgprev value=$pwg->derivative($derivative_imgprev, $thumbnail.src_image)} imgsrc="{$d_imgprev->get_url()}" data-tittle="{$thumbnail.NAME}"'; } else { $replacement = 'href="{$thumbnail.URL}" imgsrc="{$thumbnail.FILE_PATH}" data-tittle="{$thumbnail.NAME}"'; } $content= str_replace($search, $replacement, $content); $content='{$IMGPREVIEW}'.$content; return $content; } ?>
J'ai aussi ça pour : maintain.inc
<?php function plugin_install() { global $prefixeTable; $q = ' INSERT INTO ' . CONFIG_TABLE . ' (param,value,comment) VALUES ("imgpreview" , "400#600#true#true#false" , "max-width#max-height#title#opacity#preloadImages");'; pwg_query($q); } function plugin_activate() { global $prefixeTable, $conf; //////////// Check Config $query = ' SELECT COUNT(*) AS result FROM '.CONFIG_TABLE.' WHERE param IN (\'imgpreview\') ;'; $data_table = pwg_db_fetch_assoc(pwg_query($query)); $exist = $data_table['result']; if ( $exist == 0 ) { plugin_install(); } else { load_conf_from_db(); if (count(explode("#" , $conf['imgpreview']))!=5) { pwg_query('DELETE FROM '.CONFIG_TABLE.' WHERE param IN (\'imgpreview\')'); pwg_query($q); plugin_install(); } } }//fin active function plugin_uninstall() { global $prefixeTable; pwg_query('DELETE FROM '.CONFIG_TABLE.' WHERE param IN (\'imgpreview\')'); }//fin uninstall ?>
Voilà si vous trouvez quelque chose d'incompatible avec php 8, je prends avec plaisir.
Merci par avance
URL Piwigo: http://leysar.eu
Dernière modification par diaph (2022-12-09 19:22:56)
Hors ligne
Apparemment rien ne cloche dans le code.
Ma config PHP 8.1 sur le serveur (LWS):
Installation de ATOS/PAYBOX (Installation des Binaires de Atos/Paybox dans exec_dir de php)
Non est coché (Par défaut : Oui)
Configuration de allow_url_fopen & allow_url_include
Oui est coché (Par défaut : Oui)
Configuration de display_errors
Non est coché (Par défaut : Oui)
Dois-je modifier ma config ? Je peux modifier que ça !
Merci
Hors ligne
Bonne année à tous.
Apparemment c'est jQuery qui ne fonctionne pas sous PHP 8 (j'ai remis temporairement en 7.4).
Comment peut-on mettre à jour : où et comment ?
Merci
Hors ligne
diaph a écrit:
Bonne année à tous.
Apparemment c'est jQuery qui ne fonctionne pas sous PHP 8 (j'ai remis temporairement en 7.4).
Comment peut-on mettre à jour : où et comment ?
Merci
Bonjour,
Commence par contacter l'auteur de l'extension ;-)
Hors ligne
ddtddt a écrit:
Commence par contacter l'auteur de l'extension ;-)
j'ai contacté l'auteur (Flop25), mais il ne m'a pas encore répondu...
Hors ligne