diff options
author | plegall <plg@piwigo.org> | 2005-11-24 21:37:29 +0000 |
---|---|---|
committer | plegall <plg@piwigo.org> | 2005-11-24 21:37:29 +0000 |
commit | 935b69d868ecc7d06f8059ff7ac4ca8dc6ad4e30 (patch) | |
tree | f552b3b8bd4f2522615bbb3afebc359ff6ef421e /include/common.inc.php | |
parent | a6c4effc7298cadb44e5f0d8120e4e2c0c9292cc (diff) |
- new: system to notify and upgrade database among developers
git-svn-id: http://piwigo.org/svn/trunk@953 68402e56-0260-453c-a942-63ccdbb3a9ee
Diffstat (limited to 'include/common.inc.php')
-rw-r--r-- | include/common.inc.php | 42 |
1 files changed, 41 insertions, 1 deletions
diff --git a/include/common.inc.php b/include/common.inc.php index 38b0e7de0..a86bbc9ac 100644 --- a/include/common.inc.php +++ b/include/common.inc.php @@ -131,7 +131,47 @@ mysql_connect( $cfgHote, $cfgUser, $cfgPassword ) or die ( "Could not connect to database server" ); mysql_select_db( $cfgBase ) or die ( "Could not connect to database" ); - + +if ($conf['check_upgrade_feed']) +{ + define('PREFIX_TABLE', $prefixeTable); + define('UPGRADES_PATH', PHPWG_ROOT_PATH.'install/db'); + + // retrieve already applied upgrades + $query = ' +SELECT id + FROM '.PREFIX_TABLE.'upgrade +;'; + $applied = array_from_query($query, 'id'); + + // retrieve existing upgrades + $existing = array(); + + if ($contents = opendir(UPGRADES_PATH)) + { + while (($node = readdir($contents)) !== false) + { + if (is_file(UPGRADES_PATH.'/'.$node) + and preg_match('/^(.*?)-database\.php$/', $node, $match)) + { + array_push($existing, $match[1]); + } + } + } + natcasesort($existing); + + // which upgrades need to be applied? + if (count(array_diff($existing, $applied)) > 0) + { + echo + '<p>' + .'Some database upgrades are missing, ' + .'<a href="'.PHPWG_ROOT_PATH.'upgrade_feed.php">upgrade now</a>' + .'</p>' + ; + } +} + // // Setup gallery wide options, if this fails then we output a CRITICAL_ERROR // since basic gallery information is not available |