CC-3048: Install_minimal should check much sooner if Airtime is already installed

- fixed by creating new php file airtime-installed-check, which checks whether current version
of airtime exists; this file gets called right after root user check and whether debian
package exists check
- moved some code from airtime-install.php to AirtimeInstall.php as static functions
so that we reduce duplicated code
- both the new file airtime-installed-check.php and airtime-install.php use the new
static functions created above
This commit is contained in:
Yuchen Wang 2011-11-18 14:06:42 -05:00
parent c04e6dcc75
commit db82e51c30
4 changed files with 79 additions and 51 deletions

View file

@ -0,0 +1,38 @@
<?php
/**
* @package Airtime
* @copyright 2011 Sourcefabric O.P.S.
* @license http://www.gnu.org/licenses/gpl.txt
*
* Checks if a current version of Airtime is installed.
* If so, the user is presented with the help menu and can
* choose -r to reinstall.
*/
require_once(dirname(__FILE__).'/AirtimeInstall.php');
require_once(__DIR__.'/airtime-constants.php');
AirtimeInstall::ExitIfNotRoot();
$opts = AirtimeInstall::getOpts();
if ($opts == NULL) {
exit(1);
}
if (isset($opts->h)) {
AirtimeInstall::printUsage($opts);
exit(1);
}
$version = AirtimeInstall::GetVersionInstalled();
// The current version is already installed.
if (isset($version) && ($version != false) && ($version == AIRTIME_VERSION) && !isset($opts->r)) {
echo "Airtime $version is already installed.".PHP_EOL;
AirtimeInstall::printUsage($opts);
exit(1);
}
if($version === false){
echo "A version of Airtime older than 1.7.0 detected, please upgrade to 1.7.0 first.\n";
echo "You will then be able to upgrade to 1.9.0 using this installer.\n";
exit(3);
}