public static function changeDatabase($versionName) { $lvs = pref_getLocVersions(); if ($versionName == $lvs[0]->name || !$versionName) { $dbInfo = db_splitDsn(); $dbName = $dbInfo['database']; } else { $lv = new LocVersion(); $lv->name = $versionName; $dbName = pref_getLocPrefix() . $lv->getDbName(); } db_changeDatabase($dbName); }
<?php require_once "../phplib/util.php"; $lvs = array_reverse(pref_getLocVersions()); if (count($lvs) < 2) { die("ERROR: You need at least two LOC versions in dex.conf: " . "one that indicates the version to be frozen and " . "one to indicate the next current version.\n"); } $locDbPrefix = pref_getLocPrefix(); if (!$locDbPrefix) { die("ERROR: You forgot to define mysql_loc_prefix in dex.conf.\n"); } // Assert that all the already frozen versions exist. for ($i = 0; $i < count($lvs) - 2; $i++) { print "Asserting that version {$lvs[$i]->name} exists.\n"; $dbName = $locDbPrefix . $lvs[$i]->getDbName(); if (!databaseExists($dbName)) { die("ERROR: Database {$dbName} for version {$lvs[$i]->name} " . "does not exist.\n"); } if (!$lvs[$i]->freezeTimestamp) { die("ERROR: Version {$lvs[$i]->name} should have a freeze date\n"); } } // Assert that the next-to-last version does not yet exist. $lvToFreeze = $lvs[count($lvs) - 2]; print "Asserting that version {$lvToFreeze->name} does not exist.\n"; $dbName = $locDbPrefix . $lvToFreeze->getDbName(); if (databaseExists($dbName)) { die("ERROR: Database {$dbName} for version {$lvToFreeze->name} " . "should not exist.\n"); } if (!$lvToFreeze->freezeTimestamp) { die("ERROR: Version {$lvToFreeze->name} should have a freeze date\n");