[SPIP] ~maj v3.2.9-->v3.2.11
[lhc/web/www.git] / www / ecrire / base / upgrade.php
index 41ad958..72f8dd4 100644 (file)
@@ -92,7 +92,7 @@ function base_upgrade_dist($titre = '', $reprise = '') {
  * @param string $redirect
  * @return array|bool
  */
-function maj_base($version_cible = 0, $redirect = '') {
+function maj_base($version_cible = 0, $redirect = '', $debut_page = true) {
 
        $version_installee = @$GLOBALS['meta']['version_installee'];
        //
@@ -152,7 +152,7 @@ function maj_base($version_cible = 0, $redirect = '') {
 
        include_spip('maj/svn10000');
        ksort($GLOBALS['maj']);
-       $res = maj_while($version_installee, $cible, $GLOBALS['maj'], 'version_installee', 'meta', $redirect, true);
+       $res = maj_while($version_installee, $cible, $GLOBALS['maj'], 'version_installee', 'meta', $redirect, $debut_page);
        if ($res) {
                if (!is_array($res)) {
                        spip_log("Pb d'acces SQL a la mise a jour", 'maj.' . _LOG_INFO_ERREUR);
@@ -381,8 +381,7 @@ function maj_while($installee, $cible, $maj, $meta = '', $table = 'meta', $redir
                define('_TIME_OUT', $time + _UPGRADE_TIME_OUT);
        }
 
-       reset($maj);
-       while (list($v, ) = each($maj)) {
+       foreach ($maj as $v => $operations) {
                // si une maj pour cette version
                if ($v == 'init' or
                        (spip_version_compare($v, $installee, '>')
@@ -392,7 +391,7 @@ function maj_while($installee, $cible, $maj, $meta = '', $table = 'meta', $redir
                                maj_debut_page($v, $meta, $table);
                        }
                        echo "MAJ $v";
-                       $etape = serie_alter($v, $maj[$v], $meta, $table, $redirect);
+                       $etape = serie_alter($v, $operations, $meta, $table, $redirect);
                        $trouver_table(''); // vider le cache des descriptions de table
                        # echec sur une etape en cours ?
                        # on sort