]> git.wh0rd.org - tt-rss.git/commitdiff
revert OO-db access in dbupdater, create DbUpdater() correctly
authorAndrew Dolgov <fox@fakecake.org>
Wed, 17 Apr 2013 17:40:04 +0000 (21:40 +0400)
committerAndrew Dolgov <fox@fakecake.org>
Wed, 17 Apr 2013 17:40:04 +0000 (21:40 +0400)
classes/dbupdater.php
classes/handler/public.php
update.php

index f157342d43772dbcb9450e58f9f6eaf69c1c1279..a319da03d207424360a73b050b531ef2df6f10f0 100644 (file)
@@ -2,18 +2,18 @@
 class DbUpdater {
 
        private $dbh;
-       private $$this->dbh->type;
+       private $db_type;
        private $need_version;
 
-       function __construct($dbh, $$this->dbh->type, $need_version) {
+       function __construct($dbh, $db_type, $need_version) {
                $this->dbh = $dbh;
-               $this->$this->dbh->type = $db_type;
+               $this->db_type = $db_type;
                $this->need_version = (int) $need_version;
        }
 
        function getSchemaVersion() {
-               $result = $this->dbh->query("SELECT schema_version FROM ttrss_version");
-               return (int) $this->dbh->fetch_result($result, 0, "schema_version");
+               $result = db_query("SELECT schema_version FROM ttrss_version");
+               return (int) db_fetch_result($result, 0, "schema_version");
        }
 
        function isUpdateRequired() {
@@ -21,7 +21,7 @@ class DbUpdater {
        }
 
        function getSchemaLines($version) {
-               $filename = "schema/versions/".$this->$this->dbh->type."/$version.sql";
+               $filename = "schema/versions/".$this->db_type."/$version.sql";
 
                if (file_exists($filename)) {
                        return explode(";", preg_replace("/[\r\n]/", "", file_get_contents($filename)));
@@ -37,21 +37,21 @@ class DbUpdater {
 
                        if (is_array($lines)) {
 
-                               $this->dbh->query("BEGIN");
+                               db_query("BEGIN");
 
                                foreach ($lines as $line) {
                                        if (strpos($line, "--") !== 0 && $line) {
-                                               $this->dbh->query($line);
+                                               db_query($line);
                                        }
                                }
 
-                               $$this->dbh->version = $this->getSchemaVersion();
+                               $db_version = $this->getSchemaVersion();
 
-                               if ($$this->dbh->version == $version) {
-                                       $this->dbh->query("COMMIT");
+                               if ($db_version == $version) {
+                                       db_query("COMMIT");
                                        return true;
                                } else {
-                                       $this->dbh->query("ROLLBACK");
+                                       db_query("ROLLBACK");
                                        return false;
                                }
                        } else {
index 439cc7d4d62bdd04d67bf5515b3b53d36ceec011..16d628c80e8b5dd632783edcebc70405328dd6bc 100644 (file)
@@ -869,7 +869,7 @@ class Handler_Public extends Handler {
 
                        <?php
                                @$op = $_REQUEST["subop"];
-                               $updater = new DbUpdater(DB_TYPE, SCHEMA_VERSION);
+                               $updater = new DbUpdater(Db::get(), DB_TYPE, SCHEMA_VERSION);
 
                                if ($op == "performupdate") {
                                        if ($updater->isUpdateRequired()) {
index 1e653311d2b20b0296dfb1818fbce5b67476fbfa..e13abafca2955d08037f8e1040d0b40bcacd3cbb 100755 (executable)
        if (isset($options["update-schema"])) {
                _debug("checking for updates (" . DB_TYPE . ")...");
 
-               $updater = new DbUpdater( DB_TYPE, SCHEMA_VERSION);
+               $updater = new DbUpdater(Db::get(), DB_TYPE, SCHEMA_VERSION);
 
                if ($updater->isUpdateRequired()) {
                        _debug("schema update required, version " . $updater->getSchemaVersion() . " to " . SCHEMA_VERSION);