Tu sais sans doute que j'ai forké spxpluginsdownloader pour faire mon jpbMultidepots.
Cela fonctionne à merveille (même en PluXml 5.7) sauf pour jpbMultidepots qui ne veut pas se mettre à jour lui-même et idem pour spxpluginsdownloader que j'ai facticement upgradé pour vérifier s'il coinçait aussi et c'est bien le cas d'où ce post.
Voici les symptômes.
La mise à jour apparaît bien mais, quand on la clique, il donne une page blanche avec juste jpbMultidepots écrit dessus, un rafraîchissement donne un "Accès interdit", le plugin a disparu de l'affichage dans /admin/parametres_plugins.php et dans /plugins, jpbMultidepots est renommé en jpbMultidepots.tmp avec un magnifique jpbMultidepots.zip qui se crée à la place de ce qu'il faut.
Oui c'est tout à fait normal (c'est le script du plugin qui exécute l'update...).
Il faut créer un plugin simple qui permettra de mettre à jour le plugin téléchargeur avec un dépôt séparé.
Oui c'est tout à fait normal (c'est le script du plugin qui exécute l'update...).
Merci pour ta réponse Jéjé.
Je me doutais bien qu'il s'agissait d'un truc comme cela.
Quand à "créer un plugin simple qui permettra de mettre à jour le plugin téléchargeur avec un dépôt séparé", c'est hors de mes compétences et plus compliqué pour les utilisateurs (me semble-t-il).
J'ai mis une notice interne dans le plugin prévenant ces utilisateurs de mettre à jour jpbMultidepots avec la méthode classique en attendant mieux.
Autre question et il devrait y en avoir une autre qui sera la dernière (en principe), comment activer le bouton "Thèmes" puisque le plugin est prévu pour cela ?
Je vais finir le plugin spxplugindownloader pour toi, je te te tiens au courant quand ça marche.
Cela est très cool et je t'en remercie bien.
Il y a un truc qui me trotte par la tête, c'est que pour afficher les plugins dans mes pages, j'utilise un plugin que je renomme pour chaque dépôt ce qui est fastidieux à la longue. Exemple ici.
Alors qu'il serait bien plus mieux d'afficher une page avec des onglets comme l'admin de spxplugindownloader, un seul plugin ferait tout le boulot et chacun y trouverait son compte.
Il m’a fallu patcher spxplugindownloader pour qu’il ne déclenche pas d’erreurs avec PluXml 5.8.14.
Voici une copie du patch :
From 8c7ceb034e6ac252125cf6dd63ca76b75506f00b Mon Sep 17 00:00:00 2001
From: vv221 <vv221@example.com>
Date: Mon, 1 Jul 2024 19:01:18 +0200
Subject: [PATCH 3/4] [spxplugindownloader] Prevent querying unset values
---
plugins/spxplugindownloader/admin-plugins.php | 16 ++++++++++++----
1 file changed, 12 insertions(+), 4 deletions(-)
diff --git a/plugins/spxplugindownloader/admin-plugins.php b/plugins/spxplugindownloader/admin-plugins.php
index e280136..f158ae6 100644
--- a/plugins/spxplugindownloader/admin-plugins.php
+++ b/plugins/spxplugindownloader/admin-plugins.php
@@ -149,7 +149,10 @@ else { # traitement dépots stores */
$aPlugins2[$pluginName]["repository"] = false;
//$aPlugins2[$pluginName]["title"]=$plugin["title"];
foreach($astores as $storeName => $store) {
- if ($store["plugins"][$pluginName]["name"]==$pluginName){
+ if (
+ array_key_exists($pluginName, $store["plugins"]) &&
+ $store["plugins"][$pluginName]["name"]==$pluginName
+ ) {
# info sup du store en surcharge
$aPlugins2[$pluginName]["repository"]=$storeName;
$aPlugins2[$pluginName]["repository_plugin"]=$store["plugins"][$pluginName];
@@ -159,9 +162,11 @@ else { # traitement dépots stores */
}
- $groupe = $_GET['groupe'];
- if ($groupe=='') $groupe='myplugin';
- //echo ("groupe=".$groupe);
+ // Ensure that no undefined index is queried, by setting a default value
+ // then overriding it only if required.
+ $groupe = 'myplugin';
+ if ( array_key_exists('groupe', $_GET) )
+ $groupe = $_GET['groupe'];
/*
if(isset($aPlugins[$plugName]))
@@ -313,6 +318,9 @@ if(!empty($_POST)) {
foreach($aPlugins2 as $plugName => $plug) {
$update=false;
+ // Ensure that $color is always set.
+ if ( ! isset($color) )
+ $color = '';
echo '<tr>';
--
2.45.2
(désolé pour les commentaires en anglais, je n’avais pas remarqué qu’ils étaient en français dans le reste du fichier)
Attention, ce patch ne pourra pas s’appliquer si vous vous contentez de le copier/coller : le moteur de forum a automatiquement transformé toutes les tabulations en espaces. La version attachée à ce message ne devrait pas poser ce problème.
Réponses
Juste une petite news pour vous informer la mise à jour prochaine de ce plugin pour la gestion des plugins et des thèmes. (en attendant le dépot).
Il fait beau dehors, mince je dois y aller...
a+
jéjé
Tu sais sans doute que j'ai forké spxpluginsdownloader pour faire mon jpbMultidepots.
Cela fonctionne à merveille (même en PluXml 5.7) sauf pour jpbMultidepots qui ne veut pas se mettre à jour lui-même et idem pour spxpluginsdownloader que j'ai facticement upgradé pour vérifier s'il coinçait aussi et c'est bien le cas d'où ce post.
Voici les symptômes.
La mise à jour apparaît bien mais, quand on la clique, il donne une page blanche avec juste jpbMultidepots écrit dessus, un rafraîchissement donne un "Accès interdit", le plugin a disparu de l'affichage dans /admin/parametres_plugins.php et dans /plugins, jpbMultidepots est renommé en jpbMultidepots.tmp avec un magnifique jpbMultidepots.zip qui se crée à la place de ce qu'il faut.
Bref, il se rate.
Une explication avec ou sans remède ?
Oui c'est tout à fait normal (c'est le script du plugin qui exécute l'update...).
Il faut créer un plugin simple qui permettra de mettre à jour le plugin téléchargeur avec un dépôt séparé.
++
jéjé
Merci pour ta réponse Jéjé.
Je me doutais bien qu'il s'agissait d'un truc comme cela.
Quand à "créer un plugin simple qui permettra de mettre à jour le plugin téléchargeur avec un dépôt séparé", c'est hors de mes compétences et plus compliqué pour les utilisateurs (me semble-t-il).
J'ai mis une notice interne dans le plugin prévenant ces utilisateurs de mettre à jour jpbMultidepots avec la méthode classique en attendant mieux.
C'est pas tout à fait terminé en fait. J'avais mis de coté car j'étais parti sur une autre solution plus performante. Voir ci-dessous
Cette solution prevoyait une gestion de mots clefs, catégories, author, version nouveautés, populaires.... avec un dépots d'auteurs...
Je vais finir le plugin spxplugindownloader pour toi, je te te tiens au courant quand ça marche.
Cordialement,
jerome
Cela est très cool et je t'en remercie bien.
Il y a un truc qui me trotte par la tête, c'est que pour afficher les plugins dans mes pages, j'utilise un plugin que je renomme pour chaque dépôt ce qui est fastidieux à la longue. Exemple ici.
Alors qu'il serait bien plus mieux d'afficher une page avec des onglets comme l'admin de spxplugindownloader, un seul plugin ferait tout le boulot et chacun y trouverait son compte.
Difficile ça ?
On en discute dès que j'ai fini, pas de soucis.
Il m’a fallu patcher spxplugindownloader pour qu’il ne déclenche pas d’erreurs avec PluXml 5.8.14.
Voici une copie du patch :
(désolé pour les commentaires en anglais, je n’avais pas remarqué qu’ils étaient en français dans le reste du fichier)
Attention, ce patch ne pourra pas s’appliquer si vous vous contentez de le copier/coller : le moteur de forum a automatiquement transformé toutes les tabulations en espaces. La version attachée à ce message ne devrait pas poser ce problème.