From: Mike Macgirvin Date: Sun, 15 Aug 2010 02:31:10 +0000 (-0700) Subject: schema auto-update X-Git-Url: https://git.mxchange.org/?a=commitdiff_plain;h=f44a499ca710c417fb0370b3652bb78d4b09661f;p=friendica.git schema auto-update --- diff --git a/boot.php b/boot.php index 95c0351f8d..31062d175f 100644 --- a/boot.php +++ b/boot.php @@ -175,10 +175,31 @@ function check_config(&$a) { q("INSERT INTO `config` (`cat`,`k`,`v`) VALUES ( 'system', 'build', '%s' )", dbesc(BUILD_ID) ); + return; } - - - + foreach($r as $rr) { + if($rr['k'] == 'build') { + $stored = intval($rr['v']); + $current = intval(BUILD_ID); + if(($stored < $current) && file_exists('update.php')) { + + // We're reporting a different version than what is currently installed. + // Run any existing update scripts to bring the database up to current. + + require_once('update.php'); + for($x = $stored; $x <= $current; $x ++) { + if(function_exists('update_' . $x)) { + $func = 'update_' . $x; + $func($a); + } + } + q("UPDATE `config` SET `v` = '%s' WHERE `cat` = 'system' AND `k` = 'build' LIMIT 1", + dbesc(BUILD_ID) + ); + } + } + } + return; }}