•  » Plugins
  •  » [Look Like GBO] LLGBO_PATH ne devrait pas être une URL

#1 2013-04-11 14:55:30

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

[Look Like GBO] LLGBO_PATH ne devrait pas être une URL

Bonjour GBO,

J'utilise beaucoup la méthode de l'API pwg.plugins.performAction pour réactiver les plugins après migration sur Piwigo.com. En l'occurence le problème n'est absolument pas lié à Piwigo.com mais ça te permet de comprendre le contexte.

Sur toutes les galeries qui utilisent LLGBO (et il y en a pas mal...), après migration on se retrouvait avec une perte de la configuration du plugin :

Code:

mysql> select * from config where param like 'LLGBO%';
+--------------+-------+--------------------------------+
| param        | value | comment                        |
+--------------+-------+--------------------------------+
| LLGBO        |       | look like gbo global settings  |
| LLGBOFRAME   |       | look like gbo frame settings   |
| LLGBOHEADER  |       | look like gbo header settings  |
| LLGBOTOOLTIP |       | look like gbo tooltip settings |
+--------------+-------+--------------------------------+
4 rows in set (0.00 sec)

J'ai mis du temps à comprendre. En activant le debug sur la réactivation du plugin via l'API web, j'ai pu découvrir des erreurs en pagaille :

Warning: include(): http:// wrapper is disabled in the server configuration by allow_url_include=0 in /home/pierrick/public_html/piwigo/piwigo.com/2.5/plugins/look_like_gbo2/maintain.inc.php on line 35

Concrêtement, LLGBO_PATH est défini comme une URL et pas comme un PATH. Je te propose de changer:

Code:

 $ svn diff
Index: maintain.inc.php
===================================================================
--- maintain.inc.php    (revision 1374)
+++ maintain.inc.php    (working copy)
@@ -31,7 +31,8 @@
 function plugin_install()
 {  global $prefixeTable,$conf; 
 if (!defined('LLGBO_PATH'))
-{define('LLGBO_PATH' ,get_root_url().'plugins/'.basename(dirname(__FILE__)). '/');}
+{
+  define('LLGBO_PATH', PHPWG_PLUGINS_PATH.basename(dirname(__FILE__)). '/');}
 include(LLGBO_PATH.'defaultvalues.php');
   plugin_uninstall(); // en cas de mauvaise deinstallation anterieure
        $q = '

Alors pourquoi on a le bug juste via l'API ? Parce qu'au début de ws.php (le point d'entrée pour les appels à l'API) on fait un set_make_full_url() et que donc PHPWG_ROOT_PATH ne vaut plus du tout get_root_url()


Les historiens ont établi que Pierrick était le premier utilisateur connu de Piwigo.

Hors ligne

#2 2013-04-11 21:41:05

gbo
Membre
PACA
2006-11-01
1218

Re: [Look Like GBO] LLGBO_PATH ne devrait pas être une URL

Je viens de livrer la correction en version 2.5.B.
je n'aurai pas trouvé l'origine du problème,à l'époque j'ai dû plagier P@t sur un plugin existant.

Hors ligne

  •  » Plugins
  •  » [Look Like GBO] LLGBO_PATH ne devrait pas être une URL

Pied de page des forums

Propulsé par FluxBB

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