Merged in botanic/rc-botanic-webdev/rc-botanic-webdev (pull request #31)

Implimented lazy cron and fixed syncronize button.
This commit is contained in:
Matthew Lagoe 2013-10-23 15:08:21 -07:00
parent 09c4314a05
commit b1642a8e77
3 changed files with 25 additions and 5 deletions

View file

@ -13,7 +13,7 @@ class Sync{
* This is done because the shard could have been offline and we want changes made on the website (which is still online) to eventually hit the shard. * This is done because the shard could have been offline and we want changes made on the website (which is still online) to eventually hit the shard.
* These changes are: createPermissions, createUser, change_pass, change_mail * These changes are: createPermissions, createUser, change_pass, change_mail
*/ */
static public function syncdata () { static public function syncdata ($display = true) {
try { try {
$dbl = new DBLayer("lib"); $dbl = new DBLayer("lib");
@ -56,12 +56,16 @@ class Sync{
} }
$dbl->execute("DELETE FROM ams_querycache WHERE SID=:SID",array('SID' => $record['SID'])); $dbl->execute("DELETE FROM ams_querycache WHERE SID=:SID",array('SID' => $record['SID']));
} }
if ($display == true) {
print('Syncing completed'); print('Syncing completed');
} }
}
catch (PDOException $e) { catch (PDOException $e) {
if ($display == true) {
print('Something went wrong! The shard is probably still offline!'); print('Something went wrong! The shard is probably still offline!');
print_r($e); print_r($e);
} }
}
} }
} }

View file

@ -23,6 +23,16 @@ if (!@include '../config.php') {
} }
session_start(); session_start();
//Running Cron?
if ( isset( $_GET["cron"]) ){
if ($_GET["cron"] == "true"){
Sync::syncdata(false);
}
}
//Always try to sync on page load, ie "lazy" cron
Sync::syncdata(false);
//Decide what page to load //Decide what page to load
if ( ! isset( $_GET["page"]) ){ if ( ! isset( $_GET["page"]) ){
if(isset($_SESSION['user'])){ if(isset($_SESSION['user'])){

View file

@ -25,4 +25,10 @@ function show_help(help_tip)
} }
$("#sync").click(function() {alert("Handler for .click() called.");}); function syncRun()
{
$.get("index.php?cron=true");
alert("Sync function called.");
}
$("#sync").click(function() {syncRun();});