aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorpatdenice <patdenice@piwigo.org>2008-11-01 21:19:20 +0000
committerpatdenice <patdenice@piwigo.org>2008-11-01 21:19:20 +0000
commit9a7de2b6b1b85a0642d34b24fa1daacbf119c0a9 (patch)
treee97cd0333f7b396382a96f8e7dc0098f2704c873
parentae4e04da07998024fae600bf403ed58cfbed6515 (diff)
- bugs correction in upgrade_1.7.0.php.
- only non-standard plugins are deactivated during upgrade. git-svn-id: http://piwigo.org/svn/trunk@2815 68402e56-0260-453c-a942-63ccdbb3a9ee
-rw-r--r--admin/include/functions_upgrade.php46
-rw-r--r--install/upgrade_1.7.0.php19
-rw-r--r--upgrade.php14
3 files changed, 58 insertions, 21 deletions
diff --git a/admin/include/functions_upgrade.php b/admin/include/functions_upgrade.php
index 06bba375a..b21cc7c01 100644
--- a/admin/include/functions_upgrade.php
+++ b/admin/include/functions_upgrade.php
@@ -94,4 +94,50 @@ function create_empty_local_files()
}
}
+// Deactivate all non-standard plugins
+function deactivate_non_standard_plugins()
+{
+ global $page;
+
+ $standard_plugins = array(
+ 'add_index',
+ 'admin_advices',
+ 'admin_multi_view',
+ 'c13y_upgrade',
+ 'event_tracer',
+ 'language_switch',
+ 'LocalFilesEditor'
+ );
+
+ $query = '
+SELECT id
+FROM '.PREFIX_TABLE.'plugins
+WHERE state = "active"
+AND id NOT IN ("' . implode('","', $standard_plugins) . '")
+;';
+
+ $result = pwg_query($query);
+ $plugins = array();
+ while ($row = mysql_fetch_assoc($result))
+ {
+ array_push($plugins, $row['id']);
+ }
+
+ if (!empty($plugins))
+ {
+ $query = '
+UPDATE '.PREFIX_TABLE.'plugins
+SET state="inactive"
+WHERE id IN ("' . implode('","', $plugins) . '")
+;';
+ mysql_query($query);
+
+ array_push(
+ $page['infos'],
+ 'As a precaution, following plugins have been deactivated. You must check for plugins upgrade before reactiving them:
+<pre>' . implode(', ', $plugins) . '</pre>'
+ );
+ }
+}
+
?>
diff --git a/install/upgrade_1.7.0.php b/install/upgrade_1.7.0.php
index 85533dcfa..1b2b5abe1 100644
--- a/install/upgrade_1.7.0.php
+++ b/install/upgrade_1.7.0.php
@@ -33,7 +33,6 @@ else
}
}
-define('PREFIX_TABLE', $prefixeTable);
define('UPGRADES_PATH', PHPWG_ROOT_PATH.'install/db');
list($dbnow) = mysql_fetch_row(pwg_query('SELECT NOW();'));
@@ -68,15 +67,19 @@ foreach ($to_apply as $upgrade_id)
array(
'id' => $upgrade_id,
'applied' => CURRENT_DATE,
- 'description' => '[migration from 1.7.0 to '.RELEASE.'] not applied',
+ 'description' => '[migration from 1.7.0 to '.PHPWG_VERSION.'] not applied',
)
);
}
-mass_inserts(
- '`'.UPGRADE_TABLE.'`',
- array_keys($inserts[0]),
- $inserts
- );
+
+if (!empty($inserts))
+{
+ mass_inserts(
+ '`'.UPGRADE_TABLE.'`',
+ array_keys($inserts[0]),
+ $inserts
+ );
+}
// +-----------------------------------------------------------------------+
// | Perform upgrades |
@@ -106,7 +109,7 @@ for ($upgrade_id = 61; ; $upgrade_id++)
INSERT INTO `'.PREFIX_TABLE.'upgrade`
(id, applied, description)
VALUES
- (\''.$upgrade_id.'\', NOW(), \'[migration from 1.7.0 to '.RELEASE.'] '.$upgrade_description.'\')
+ (\''.$upgrade_id.'\', NOW(), \'[migration from 1.7.0 to '.PHPWG_VERSION.'] '.$upgrade_description.'\')
;';
pwg_query($query);
}
diff --git a/upgrade.php b/upgrade.php
index 2dd99747b..cb1d7337e 100644
--- a/upgrade.php
+++ b/upgrade.php
@@ -237,19 +237,7 @@ else
// Plugins deactivation
if (in_array(PREFIX_TABLE.'plugins', $tables))
{
- $query = '
-UPDATE '.PREFIX_TABLE.'plugins SET state="inactive" WHERE state="active"
-;';
- mysql_query($query);
-
- if (mysql_affected_rows() > 0)
- {
- array_push(
- $page['infos'],
- 'As a precaution, all activated plugins have been deactivated.
-You must check for plugins upgrade before reactiving them.'
- );
- }
+ deactivate_non_standard_plugins();
}
// Create empty local files to avoid log errors