|
|
|
@ -838,12 +838,115 @@ class Handler_Public extends Handler {
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
function dbupdate() { |
|
|
|
|
if (!SINGLE_USER_MODE && $_SESSION["access_level"] < 10) { |
|
|
|
|
$_SESSION["login_error_msg"] = __("Your access level is insufficient to run this script."); |
|
|
|
|
render_login_form($link); |
|
|
|
|
exit; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
?><html> |
|
|
|
|
<head> |
|
|
|
|
<title>Database Updater</title> |
|
|
|
|
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> |
|
|
|
|
<link rel="stylesheet" type="text/css" href="utility.css"/> |
|
|
|
|
</head> |
|
|
|
|
<style type="text/css"> |
|
|
|
|
span.ok { color : #009000; font-weight : bold; } |
|
|
|
|
span.err { color : #ff0000; font-weight : bold; } |
|
|
|
|
</style> |
|
|
|
|
<body> |
|
|
|
|
<script type='text/javascript'> |
|
|
|
|
function confirmOP() { |
|
|
|
|
return confirm("Update the database?"); |
|
|
|
|
} |
|
|
|
|
</script> |
|
|
|
|
|
|
|
|
|
<div class="floatingLogo"><img src="images/logo_small.png"></div> |
|
|
|
|
|
|
|
|
|
<h1><?php echo __("Database Updater") ?></h1>
|
|
|
|
|
|
|
|
|
|
<div class="content"> |
|
|
|
|
|
|
|
|
|
<?php |
|
|
|
|
@$op = $_REQUEST["subop"]; |
|
|
|
|
$updater = new DbUpdater($this->link, DB_TYPE, SCHEMA_VERSION); |
|
|
|
|
|
|
|
|
|
if ($op == "performupdate") { |
|
|
|
|
if ($updater->isUpdateRequired()) { |
|
|
|
|
|
|
|
|
|
print "<h2>Performing updates</h2>"; |
|
|
|
|
|
|
|
|
|
print "<h3>Updating to schema version " . SCHEMA_VERSION . "</h3>"; |
|
|
|
|
|
|
|
|
|
print "<ul>"; |
|
|
|
|
|
|
|
|
|
for ($i = $updater->getSchemaVersion() + 1; $i <= SCHEMA_VERSION; $i++) { |
|
|
|
|
print "<li>Performing update up to version $i..."; |
|
|
|
|
|
|
|
|
|
$result = $updater->performUpdateTo($i); |
|
|
|
|
|
|
|
|
|
if (!$result) { |
|
|
|
|
print "<span class='err'>FAILED!</span></li></ul>"; |
|
|
|
|
|
|
|
|
|
print_warning("One of the updates failed. Either retry the process or perform updates manually."); |
|
|
|
|
print "<p><form method=\"GET\" action=\"index.php\"> |
|
|
|
|
<input type=\"submit\" value=\"".__("Return to Tiny Tiny RSS")."\"> |
|
|
|
|
</form>"; |
|
|
|
|
|
|
|
|
|
break; |
|
|
|
|
} else { |
|
|
|
|
print "<span class='ok'>OK!</span></li>"; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
print "</ul>"; |
|
|
|
|
|
|
|
|
|
print_notice("Your Tiny Tiny RSS database is now updated to the latest version."); |
|
|
|
|
|
|
|
|
|
print "<p><form method=\"GET\" action=\"index.php\"> |
|
|
|
|
<input type=\"submit\" value=\"".__("Return to Tiny Tiny RSS")."\"> |
|
|
|
|
</form>"; |
|
|
|
|
|
|
|
|
|
} else { |
|
|
|
|
print "<h2>Your database is up to date.</h2>"; |
|
|
|
|
|
|
|
|
|
print "<p><form method=\"GET\" action=\"index.php\"> |
|
|
|
|
<input type=\"submit\" value=\"".__("Return to Tiny Tiny RSS")."\"> |
|
|
|
|
</form>"; |
|
|
|
|
} |
|
|
|
|
} else { |
|
|
|
|
if ($updater->isUpdateRequired()) { |
|
|
|
|
|
|
|
|
|
print "<h2>Database update required</h2>"; |
|
|
|
|
|
|
|
|
|
print "<h3>"; |
|
|
|
|
printf("Your Tiny Tiny RSS database needs update to the latest version: %d to %d.", |
|
|
|
|
$updater->getSchemaVersion(), SCHEMA_VERSION); |
|
|
|
|
print "</h3>"; |
|
|
|
|
|
|
|
|
|
print_warning("Please backup your database before proceeding."); |
|
|
|
|
|
|
|
|
|
print "<form method='POST'> |
|
|
|
|
<input type='hidden' name='subop' value='performupdate'> |
|
|
|
|
<input type='submit' onclick='return confirmOP()' value='".__("Perform updates")."'> |
|
|
|
|
</form>"; |
|
|
|
|
|
|
|
|
|
} else { |
|
|
|
|
|
|
|
|
|
print "<h2>" . "Tiny Tiny RSS database is up to date." . "</h2>"; |
|
|
|
|
|
|
|
|
|
print "<p><form method=\"GET\" action=\"index.php\"> |
|
|
|
|
<input type=\"submit\" value=\"".__("Return to Tiny Tiny RSS")."\"> |
|
|
|
|
</form>"; |
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
?> |
|
|
|
|
|
|
|
|
|
</div> |
|
|
|
|
</body> |
|
|
|
|
</html> |
|
|
|
|
<?php |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
} |
|
|
|
|