get_actions(); if ($actionneur->one_action()) { // si SVP a été enlevé des actifs, on redirige sur la fin... // sinon cette page d'action/actionner devient introuvable. // dans ce cas précis, les autres actions prévues venant après la desactivation de SVP // ne pourront être traitees... SVP n'étant plus là ! if ($actionneur->tester_si_svp_desactive()) { $url = _request('redirect'); } else { $url = generer_action_auteur('actionner', '', _request('redirect')); } // en mode pas à pas, on affiche un bilan entre chaque action // et on demande a l'utilistateur de cliquer pour realiser // l'action suivante. include_spip('inc/config'); if (lire_config('svp/mode_pas_a_pas') == 'oui') { include_spip('inc/minipres'); $pres = $actionneur->presenter_actions(); $btn = "[ Action Suivante ]"; $styles = " "; echo minipres(_T('svp:installation_en_cours'), $pres . '

' . $btn . $styles); die(); } // s'il n'y avait en tout est pour tout qu'une seule action, rediriger directement if ($actionneur->progression() === 1 and count($actionneur->done) === 1) { redirige_par_entete(str_replace('&', '&', $url)); } // sinon bel affichage de la progression svp_redirige_boucle( str_replace('&', '&', $url), $actionneur->presenter_derniere_action(), $actionneur->progression() ); } foreach ($actionneur->done as $done) { if ($done['todo'] == 'on') { if ($voir = session_get('svp_admin_plugin_voir') and $voir == 'inactif' ) { session_set('svp_admin_plugin_voir', 'actif'); } break; } } include_spip('inc/svp_depoter_local'); svp_actualiser_paquets_locaux(); if (!_request('redirect')) { $GLOBALS['redirect'] = generer_url_ecrire('admin_plugin'); } else { $GLOBALS['redirect'] = str_replace('&', '&', _request('redirect')); } } /** * Redirections par refresh d'une URL afin d'éviter des blocages de redirections par les navigateurs * lorsqu'elles sont trop nombreuses * * @param string $url * @param string $texte Texte de l'action réalisée * @param string $progres */ function svp_redirige_boucle($url, $texte, $progres){ include_spip('inc/minipres'); //@apache_setenv('no-gzip', 1); // provoque page blanche chez certains hebergeurs donc ne pas utiliser @ini_set('zlib.output_compression', '0'); // pour permettre l'affichage au fur et a mesure @ini_set('output_buffering', 'off'); @ini_set('implicit_flush', 1); @ob_implicit_flush(1); $pres = ''; $pres .="
$texte
" . round($progres*100) . "%
"; $styles = " "; echo minipres(_T('svp:installation_en_cours'), $pres . $styles); exit; }