From 886ef6695fbb4164aa888b20d3289e4d2fb5e5a1 Mon Sep 17 00:00:00 2001 From: "marcimat@rezo.net" <> Date: Thu, 2 Feb 2012 16:20:48 +0000 Subject: [PATCH] =?UTF-8?q?On=20revient=20sur=20r56028=20et=20r56029=20,?= =?UTF-8?q?=20en=20se=20retentant=20un=20exec=20PHP,=20mais=20cette=20fois?= =?UTF-8?q?=20en=20squizant=20r=C3=A9ellement=20Zpip=20pour=20forcer=20l'u?= =?UTF-8?q?sage=20de=20script=20PHP.=20On=20prefixe=20les=20squelettes=20a?= =?UTF-8?q?dmin=5Fplugin=20de=20svp=5F,=20ce=20qui=20permet=20=C3=A0=20l'e?= =?UTF-8?q?xec=20PHP=20d'=C3=AAtre=20lanc=C3=A9=20(sinon=20ce=20sont=20les?= =?UTF-8?q?=20squelettes=20qui=20prennent=20la=20priorit=C3=A9).?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cela devrait résoudre 2 problèmes : - Un timeout sur une mise à jour de plugin ne reprenait pas. Il semblerait que le fait d'executer (avant) la redirection par header dans le squelette ne la faisait pas fonctionner à cause de l'encapsulation du code dans des ob_start / ob_flush. - la disparition d'un plugin du FTP dont un autre dépendait n'affichait pas d'erreur sur la page des plugins. On voit ainsi de nouveau les erreurs, mais les plugins temporairement déconnectés apparaissent dans les inactifs ce qui est incorrect. Ce sont des actifs... en erreur. (le temps de réparer le plugin manquant...). Il faudrait réparer cet affichage pour en tenir compte. --- .gitattributes | 9 +- exec/admin_plugin.php | 130 ++++++++++++++++++ paquet.xml | 2 +- .../contenu/admin_plugin_fonctions.php | 43 ------ ...dmin_plugin.html => svp_admin_plugin.html} | 5 - .../contenu/svp_admin_plugin_fonctions.php | 25 ++++ ...dmin_plugin.html => svp_admin_plugin.html} | 0 ...ons.php => svp_admin_plugin_fonctions.php} | 0 8 files changed, 161 insertions(+), 53 deletions(-) create mode 100644 exec/admin_plugin.php delete mode 100644 prive/squelettes/contenu/admin_plugin_fonctions.php rename prive/squelettes/contenu/{admin_plugin.html => svp_admin_plugin.html} (89%) create mode 100644 prive/squelettes/contenu/svp_admin_plugin_fonctions.php rename prive/squelettes/navigation/{admin_plugin.html => svp_admin_plugin.html} (100%) rename prive/squelettes/navigation/{admin_plugin_fonctions.php => svp_admin_plugin_fonctions.php} (100%) diff --git a/.gitattributes b/.gitattributes index d23c8d0..23bca4d 100644 --- a/.gitattributes +++ b/.gitattributes @@ -1,6 +1,7 @@ * text=auto !eol action/actionner.php -text action/teleporter.php -text +exec/admin_plugin.php -text formulaires/admin_plugin.html -text formulaires/admin_plugin.php -text formulaires/configurer_svp.html -text @@ -21,11 +22,11 @@ lib/pcltar/pclerror.lib.php -text lib/pcltar/pcltrace.lib.php -text lib/pcltar/readme.txt -text modeles/svp_presenter_actions.html -text -prive/squelettes/contenu/admin_plugin.html -text -prive/squelettes/contenu/admin_plugin_fonctions.php -text prive/squelettes/contenu/configurer_svp.html -text -prive/squelettes/navigation/admin_plugin.html -text -prive/squelettes/navigation/admin_plugin_fonctions.php -text +prive/squelettes/contenu/svp_admin_plugin.html -text +prive/squelettes/contenu/svp_admin_plugin_fonctions.php -text +prive/squelettes/navigation/svp_admin_plugin.html -text +prive/squelettes/navigation/svp_admin_plugin_fonctions.php -text prive/themes/spip/images/depot-16.png -text prive/themes/spip/images/depot-24.png -text prive/themes/spip/images/depot-32.png -text diff --git a/exec/admin_plugin.php b/exec/admin_plugin.php new file mode 100644 index 0000000..abeb7db --- /dev/null +++ b/exec/admin_plugin.php @@ -0,0 +1,130 @@ +array('exec'=>'admin_plugin'), + 'data'=> recuperer_fond('prive/squelettes/navigation/svp_admin_plugin') + ) + ); + + echo debut_droite('plugin', true); + + echo gros_titre(_T('icone_admin_plugin'),'',false); + + // message d'erreur au retour d'une operation + if ($erreur) + echo "
$erreur
"; + if ($erreur_activation){ + echo "
$erreur_activation
"; + } + + // afficher les actions realisees s'il y en a eu + // (activation/desactivation/telechargement...) + echo svp_presenter_actions_realisees(); + + // on installe les plugins maintenant, + // cela permet aux scripts d'install de faire des affichages (moches...) + plugin_installes_meta(); + + + echo recuperer_fond('prive/squelettes/contenu/svp_admin_plugin', $_REQUEST); + + echo pipeline('affiche_milieu', + array( + 'args'=>array('exec'=>'admin_plugin'), + 'data'=>'' + ) + ); + + echo fin_gauche(), fin_page(); +} + + + +function svp_presenter_actions_realisees() { + // presenter les traitements realises... si tel est le cas... + include_spip('inc/svp_actionner'); + $actionneur = new Actionneur(); + + // s'il ne reste aucune action a faire ou si on force un nettoyage. + if (_request('nettoyer_actions')) { + $actionneur->nettoyer_actions(); + } + + $actionneur->get_actions(); + $pres = $actionneur->presenter_actions($fin = true); + + // s'il ne reste aucune action a faire + if (!$actionneur->est_verrouille() OR !count($actionneur->end)) { + $actionneur->nettoyer_actions(); + } + + return $pres; + +} diff --git a/paquet.xml b/paquet.xml index eabd1a3..17868cf 100644 --- a/paquet.xml +++ b/paquet.xml @@ -1,7 +1,7 @@ nettoyer_actions(); - } - - $actionneur->get_actions(); - $pres = $actionneur->presenter_actions($fin = true); - - // s'il ne reste aucune action a faire - if (!$actionneur->est_verrouille() OR !count($actionneur->end)) { - $actionneur->nettoyer_actions(); - } - - return $pres; - -} -?> diff --git a/prive/squelettes/contenu/admin_plugin.html b/prive/squelettes/contenu/svp_admin_plugin.html similarity index 89% rename from prive/squelettes/contenu/admin_plugin.html rename to prive/squelettes/contenu/svp_admin_plugin.html index 91a48e4..4adcf49 100755 --- a/prive/squelettes/contenu/admin_plugin.html +++ b/prive/squelettes/contenu/svp_admin_plugin.html @@ -1,9 +1,4 @@ [(#AUTORISER{configurer,_plugins}|sinon_interdire_acces)] -

<:icone_admin_plugin:>

- -[(#VAL|svp_presenter_actions_realisees)] -[(#VAL{inc/plugin}|include_spip|oui)] -[(#REM|plugin_installes_meta)] [(#REM) ] [(#VAL{plugins}|barre_onglets{plugins_actifs})] diff --git a/prive/squelettes/contenu/svp_admin_plugin_fonctions.php b/prive/squelettes/contenu/svp_admin_plugin_fonctions.php new file mode 100644 index 0000000..3c73a00 --- /dev/null +++ b/prive/squelettes/contenu/svp_admin_plugin_fonctions.php @@ -0,0 +1,25 @@ +nettoyer_actions(); + } + + $actionneur->get_actions(); + $pres = $actionneur->presenter_actions($fin = true); + + // s'il ne reste aucune action a faire + if (!$actionneur->est_verrouille() OR !count($actionneur->end)) { + $actionneur->nettoyer_actions(); + } + + return $pres; + +}*/ +?> diff --git a/prive/squelettes/navigation/admin_plugin.html b/prive/squelettes/navigation/svp_admin_plugin.html similarity index 100% rename from prive/squelettes/navigation/admin_plugin.html rename to prive/squelettes/navigation/svp_admin_plugin.html diff --git a/prive/squelettes/navigation/admin_plugin_fonctions.php b/prive/squelettes/navigation/svp_admin_plugin_fonctions.php similarity index 100% rename from prive/squelettes/navigation/admin_plugin_fonctions.php rename to prive/squelettes/navigation/svp_admin_plugin_fonctions.php