From 77fa9a926de849086974a77497f08f8f8e45c0d5 Mon Sep 17 00:00:00 2001 From: Lukas Metzger Date: Sun, 19 Feb 2017 12:10:53 +0100 Subject: [PATCH] Fixed upgrade --- api/install.php | 4 ++-- api/upgrade.php | 21 +++++++++++++++++++++ lib/checkversion.php | 2 +- 3 files changed, 24 insertions(+), 3 deletions(-) diff --git a/api/install.php b/api/install.php index ec1d37e..9cac649 100644 --- a/api/install.php +++ b/api/install.php @@ -94,7 +94,7 @@ CREATE TABLE IF NOT EXISTS options ( DELETE FROM options where name='schema_version'; -INSERT INTO options(name,value) VALUES ('schema_version', 3); +INSERT INTO options(name,value) VALUES ('schema_version', 4); "; $sql["pgsql"]=" @@ -180,7 +180,7 @@ CREATE TABLE IF NOT EXISTS options ( DELETE FROM options where name='schema_version'; -INSERT INTO options(name,value) VALUES ('schema_version', 3); +INSERT INTO options(name,value) VALUES ('schema_version', 4); "; try { diff --git a/api/upgrade.php b/api/upgrade.php index 20d004a..74a88c9 100644 --- a/api/upgrade.php +++ b/api/upgrade.php @@ -129,6 +129,27 @@ if(isset($input->action) && $input->action == "requestUpgrade") { $db->commit(); } + if($currentVersion < 4) { + $sql["mysql"] = " + RENAME TABLE user TO users; + ALTER TABLE permissions CHANGE user userid INT(11); + + UPDATE options SET value=4 WHERE name='schema_version'; + "; + $sql["pgsql"] = "UPDATE options SET value=4 WHERE name='schema_version';"; + + $queries = explode(";", $sql[$dbType]); + + $db->beginTransaction(); + + foreach ($queries as $query) { + if (preg_replace('/\s+/', '', $query) != '') { + $db->exec($query); + } + } + + $db->commit(); + } $retval['status'] = "success"; } diff --git a/lib/checkversion.php b/lib/checkversion.php index c3eb45b..7b61744 100644 --- a/lib/checkversion.php +++ b/lib/checkversion.php @@ -17,7 +17,7 @@ */ function getExpectedVersion() { - return 3; + return 4; } function checkVersion($db) {