]> git.wh0rd.org - tt-rss.git/commitdiff
misc updater tweaks
authorAndrew Dolgov <fox@bah.spb.su>
Sat, 24 Feb 2007 17:16:33 +0000 (18:16 +0100)
committerAndrew Dolgov <fox@bah.spb.su>
Sat, 24 Feb 2007 17:16:33 +0000 (18:16 +0100)
db-prefs.php
errors.php
functions.js
tt-rss.css
update.php

index 07c4548d3f5fc8cfde82bda4ff71da00dc2b5a17..0858c2ce46a773236a774f184e4524fd8eea8423 100644 (file)
@@ -7,7 +7,7 @@
                        $_SESSION["prefs_cache"] = array();
        }
 
-       function get_pref($link, $pref_name, $user_id = false, $die_on_error = true) {
+       function get_pref($link, $pref_name, $user_id = false, $die_on_error = false) {
 
                $pref_name = db_escape_string($pref_name);
 
index 967bb4e33aea29353559897290b62448119488d6..bab8647d098fe1e17658b76d0c0b9b5460a94d07 100644 (file)
@@ -11,7 +11,7 @@
 
        $ERRORS[4] = _("Frontend sanity check failed.");
 
-       $ERRORS[5] = _("Incorrect database schema version. <a href='update.php'>Please update</a>.");
+       $ERRORS[5] = _("Incorrect database schema version. &lt;a href='update.php'&gt;Please update&lt;/a&gt;.");
 
        $ERRORS[6] = _("Request not authorized.");
 
index 194d83157598092cd8ce87dfae7ff6f176135029..de88e4e499f78b23765e75f19fb0ff1fe9e44373 100644 (file)
@@ -1526,16 +1526,17 @@ function storeInitParams(params, is_client) {
 function fatalError(code, message) {
        try {   
 
-               if (code != 6) {
-
+               if (code == 6) {
+                       window.location.href = "login.php?rt=none";                     
+               } else if (code == 5) {
+                       window.location.href = "update.php";
+               } else {
                        var fe = document.getElementById("fatal_error");
                        var fc = document.getElementById("fatal_error_msg");
        
                        fc.innerHTML = "Code " + code + ": " + message;
        
                        fe.style.display = "block";
-               } else {
-                       window.location.href = "login.php?rt=none";                     
                }
 
        } catch (e) {
index 2a131247f09cb06db1b2956fa43a837354262b33..37c222810f9364a2dee51e0927daae09a9fb40eb 100644 (file)
@@ -1061,6 +1061,15 @@ a.cdmToggleLink:hover {
        font-weight : normal;
 }
 
+#fatal_error_msg a {
+       color : red;
+}
+
+#fatal_error_msg a:hover {
+       color : red;
+       text-decoration : underline;
+}
+
 #noDaemonWarning {     
        position : absolute;
        background-color : #ecf4ff;               
index 964626d7fa9dd2f02076cb9b733b68d9922336de..5b91bde323241dacadf22cc45c6bd1e73f3a674b 100644 (file)
 <?php
-       require_once "sessions.php";
+require_once "sessions.php";
 
-       require_once "sanity_check.php";
-       require_once "functions.php";
-       require_once "config.php";
-       require_once "db.php";
+require_once "sanity_check.php";
+require_once "functions.php";
+require_once "config.php";
+require_once "db.php";
 
-       $link = db_connect(DB_HOST, DB_USER, DB_PASS, DB_NAME); 
+$link = db_connect(DB_HOST, DB_USER, DB_PASS, DB_NAME);        
 
-       if (DB_TYPE == "pgsql") {
-               pg_query($link, "set client_encoding = 'utf-8'");
-               pg_set_client_encoding("UNICODE");
-       }
+if (DB_TYPE == "pgsql") {
+       pg_query($link, "set client_encoding = 'utf-8'");
+       pg_set_client_encoding("UNICODE");
+}
 
-       login_sequence($link);
+login_sequence($link);
 
-       $owner_uid = $_SESSION["uid"];
+$owner_uid = $_SESSION["uid"];
 
-       if ($_SESSION["access_level"] < 10) { 
-               header("Location: login.php"); die;
-       }
+if ($_SESSION["access_level"] < 10) { 
+       header("Location: login.php"); die;
+}
 
-       define('SCHEMA_VERSION', 13);
+define('SCHEMA_VERSION', 13);
 
 ?>
 
 <html>
 <head>
-       <title>Database Updater</title>
-       <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
-       <link rel="stylesheet" type="text/css" href="update.css">
+<title>Database Updater</title>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+<link rel="stylesheet" type="text/css" href="update.css">
 </head>
 
 <body>
 
+<script type='text/javascript'>
+function confirmOP() {
+       return confirm("Update the database?");
+}
+</script>
+
 <h1>Database Updater</h1>
 
 <?php
-       function getline($fp, $delim) {
-          $result = "";
-          while(!feof($fp)) {
-                       $tmp = fgetc($fp);
+function getline($fp, $delim) {
+       $result = "";
+       while(!feof($fp)) {
+               $tmp = fgetc($fp);
 
-                       if($tmp == $delim) {
-                               return $result;
-                       }
-                       $result .= $tmp;
+               if($tmp == $delim) {
+                       return $result;
                }
-               return $result;
+               $result .= $tmp;
        }
+       return $result;
+}
 
-       $op = $_REQUEST["op"];
-       
-       $result = db_query($link, "SELECT schema_version FROM ttrss_version");
-       $version = db_fetch_result($result, 0, "schema_version");
+$op = $_POST["op"];
 
-       $update_files = glob("schema/versions/".DB_TYPE."/*sql");
-       $update_versions = array();
+$result = db_query($link, "SELECT schema_version FROM ttrss_version");
+$version = db_fetch_result($result, 0, "schema_version");
 
-       foreach ($update_files as $f) {
-               $m = array();
-               preg_match_all("/schema\/versions\/".DB_TYPE."\/(\d*)\.sql/", $f, $m,
-                       PREG_PATTERN_ORDER);
+$update_files = glob("schema/versions/".DB_TYPE."/*sql");
+$update_versions = array();
 
-               if ($m[1][0]) {
-                       $update_versions[$m[1][0]] = $f;
-               }
+foreach ($update_files as $f) {
+       $m = array();
+       preg_match_all("/schema\/versions\/".DB_TYPE."\/(\d*)\.sql/", $f, $m,
+               PREG_PATTERN_ORDER);
+
+       if ($m[1][0]) {
+               $update_versions[$m[1][0]] = $f;
        }
+}
 
-       ksort($update_versions, SORT_NUMERIC);
+ksort($update_versions, SORT_NUMERIC);
 
-       $latest_version = max(array_keys($update_versions));
+$latest_version = max(array_keys($update_versions));
 
-       if ($version == $latest_version) {
-               print "Database schema is up to date (version $version).";
-               return;
-       }
+if ($version == $latest_version) {
+       print "<p>Tiny Tiny RSS database is up to date (version $version).</p>";
+       print "<p><a href='tt-rss.php'>Return to Tiny Tiny RSS</a></p>";
+       return;
+}
 
-       if (!$op) {
-               print "<p class='warning'><b>Warning:</b> Please backup your database before proceeding.</p>";
+if (!$op) {
+       print "<p class='warning'><b>Warning:</b> Please backup your database before proceeding.</p>";
 
-               print "<p>Your database schema version is $version. Latest version is ".
-                       "$latest_version.</p>";
+       print "<p>Your Tiny Tiny RSS database needs update to the latest 
+               version ($version &mdash;&gt; $latest_version).</p>";
 
-               print "<p>Available incremental updates:";
+/*             print "<p>Available incremental updates:";
 
-               foreach (array_keys($update_versions) as $v) {
-                       if ($v > $version) {
-                               print " <a href='$update_versions[$v]'>$v</a>";
-                       }
+       foreach (array_keys($update_versions) as $v) {
+               if ($v > $version) {
+                       print " <a href='$update_versions[$v]'>$v</a>";
                }
+       } */
+
+       print "</p>";
 
-               print "</p>";
-               print "<a href='update.php?op=do'>Click here to perform updates.</a>";
+       print "<form method='POST'>
+               <input type='hidden' name='op' value='do'>
+               <input type='submit' onclick='return confirmOP()' value='Perform updates'>
+               </form>";
 
-       } else if ($op == "do") {
+} else if ($op == "do") {
 
-               print "<p>Performing updates (version: $version)...</p>";
+       print "<p>Performing updates (from version $version)...</p>";
 
-               $num_updates = 0;
+       $num_updates = 0;
 
-               foreach (array_keys($update_versions) as $v) {
-                       if ($v == $version + 1) {
-                               print "<p>Updating to version $v...</p>";
-                               $fp = fopen($update_versions[$v], "r");
-                               if ($fp) {
-                                       while (!feof($fp)) {
-                                               $query = trim(getline($fp, ";"));
-                                               if ($query != "") {
-                                                       print "<p class='query'><b>QUERY:</b> $query</p>";
-                                                       db_query($link, $query);
-                                               }
+       foreach (array_keys($update_versions) as $v) {
+               if ($v == $version + 1) {
+                       print "<p>Updating to version $v...</p>";
+                       $fp = fopen($update_versions[$v], "r");
+                       if ($fp) {
+                               while (!feof($fp)) {
+                                       $query = trim(getline($fp, ";"));
+                                       if ($query != "") {
+                                               print "<p class='query'><b>QUERY:</b> $query</p>";
+                                               db_query($link, $query);
                                        }
                                }
-                               fclose($fp);
-
-                               print "<p>Checking version... ";
+                       }
+                       fclose($fp);
 
-                               $result = db_query($link, "SELECT schema_version FROM ttrss_version");
-                               $version = db_fetch_result($result, 0, "schema_version");
+                       print "<p>Checking version... ";
 
-                               if ($version == $v) {
-                                       print "OK!";
-                               } else {
-                                       print "<b>ERROR!</b>";
-                                       return;
-                               }
+                       $result = db_query($link, "SELECT schema_version FROM ttrss_version");
+                       $version = db_fetch_result($result, 0, "schema_version");
 
-                               $num_updates++;
+                       if ($version == $v) {
+                               print "OK! ($version)";
+                       } else {
+                               print "<b>ERROR!</b>";
+                               return;
                        }
-               }
 
-               print "<p>Finished. Performed $num_updates updates up to schema
-                       version $version.</p>";
+                       $num_updates++;
+               }
        }
+
+       print "<p>Finished. Performed $num_updates updates up to schema
+               version $version.</p>";
+
+       print "<p><a href='tt-rss.php'>Return to Tiny Tiny RSS</a></p>";
+
+}
+
 ?>