From 85cdc00254abb8eb30b6453eddaf851ab319adb1 Mon Sep 17 00:00:00 2001 From: martin Date: Wed, 30 Mar 2011 12:01:26 -0400 Subject: [PATCH] CC-2132: Airtime upgrade not working -fixed up upgrade scriupt from 1.6.x to 1.7.0 -created an AirtimeIni php class --- install/airtime-install.php | 8 +-- install/airtime-uninstall.php | 6 +- install/airtime-upgrade.php | 19 ++---- install/include/AirtimeIni.php | 115 ++++++++++++++++++++++++++++++++ install/include/installInit.php | 100 --------------------------- 5 files changed, 128 insertions(+), 120 deletions(-) create mode 100644 install/include/AirtimeIni.php delete mode 100644 install/include/installInit.php diff --git a/install/airtime-install.php b/install/airtime-install.php index c67286d65..d1e23235f 100644 --- a/install/airtime-install.php +++ b/install/airtime-install.php @@ -7,11 +7,11 @@ echo "******************************** Install Begin *********************************".PHP_EOL; -require_once(dirname(__FILE__).'/include/installInit.php'); +require_once(dirname(__FILE__).'/include/AirtimeIni.php'); -ExitIfNotRoot(); -CreateINIFile(); -UpdateINIFiles(); +AirtimeIni::ExitIfNotRoot(); +AirtimeIni::CreateIniFile(); +AirtimeIni::UpdateIniFiles(); require_once(dirname(__FILE__).'/../application/configs/conf.php'); require_once(dirname(__FILE__).'/include/AirtimeInstall.php'); diff --git a/install/airtime-uninstall.php b/install/airtime-uninstall.php index b82a79f07..05cc0a8d2 100644 --- a/install/airtime-uninstall.php +++ b/install/airtime-uninstall.php @@ -5,9 +5,9 @@ * @license http://www.gnu.org/licenses/gpl.txt */ -require_once(dirname(__FILE__).'/include/installInit.php'); +require_once(dirname(__FILE__).'/include/AirtimeIni.php'); // Need to check that we are superuser before running this. -ExitIfNotRoot(); +AirtimeIni::ExitIfNotRoot(); require_once(dirname(__FILE__).'/../application/configs/conf.php'); require_once(dirname(__FILE__).'/include/AirtimeInstall.php'); @@ -73,7 +73,7 @@ if ($results == 0) { // Delete files //------------------------------------------------------------------------ AirtimeInstall::DeleteFilesRecursive($CC_CONFIG['storageDir']); -RemoveINIFile(); +AirtimeIni::RemoveIniFiles(); $command = "python ".__DIR__."/../python_apps/pypo/install/pypo-uninstall.py"; system($command); diff --git a/install/airtime-upgrade.php b/install/airtime-upgrade.php index 7d6fd3bdb..6db722fa2 100644 --- a/install/airtime-upgrade.php +++ b/install/airtime-upgrade.php @@ -6,27 +6,20 @@ * @license http://www.gnu.org/licenses/gpl.txt */ -// Do not allow remote execution -$arr = array_diff_assoc($_SERVER, $_ENV); -if (isset($arr["DOCUMENT_ROOT"]) && ($arr["DOCUMENT_ROOT"] != "") ) { - header("HTTP/1.1 400"); - header("Content-type: text/plain; charset=UTF-8"); - echo "400 Not executable\r\n"; - exit(1); -} +require_once(dirname(__FILE__).'/include/AirtimeIni.php'); +require_once(dirname(__FILE__).'/include/AirtimeInstall.php'); -require_once(dirname(__FILE__).'/installInit.php'); - -AirtimeInstall::ExitIfNotRoot(); +AirtimeIni::ExitIfNotRoot(); echo "******************************** Update Begin *********************************".PHP_EOL; -AirtimeInstall::UpdateIniValue('../build/build.properties', 'project.home', realpath(__dir__.'/../')); +AirtimeIni::CreateIniFile(); +AirtimeIni::UpdateIniFiles(); echo PHP_EOL."*** Updating Database Tables ***".PHP_EOL; AirtimeInstall::MigrateTables(__DIR__); echo PHP_EOL."*** Updating Pypo ***".PHP_EOL; -system("python ".__DIR__."/../pypo/install/pypo-install.py"); +system("python ".__DIR__."/../python_apps/pypo/install/pypo-install.py"); echo "******************************* Update Complete *******************************".PHP_EOL; diff --git a/install/include/AirtimeIni.php b/install/include/AirtimeIni.php new file mode 100644 index 000000000..cea643cf9 --- /dev/null +++ b/install/include/AirtimeIni.php @@ -0,0 +1,115 @@ + strlen($property)) + if ($property == substr($lines[$i], 0, strlen($property))){ + $lines[$i] = "$property = $value\n"; + } + } + + $fp=fopen($filename, 'w'); + for($i=0; $i<$n; $i++){ + fwrite($fp, $lines[$i]); + } + fclose($fp); + } + + static function UpdateIniFiles() + { + $api_key = AirtimeIni::GenerateRandomString(); + AirtimeIni::UpdateIniValue('/etc/airtime/airtime.conf', 'api_key', $api_key); + AirtimeIni::UpdateIniValue('/etc/airtime/airtime.conf', 'baseFilesDir', realpath(__DIR__.'/../../files')); + AirtimeIni::UpdateIniValue('/etc/airtime/pypo.cfg', 'api_key', "'$api_key'"); + AirtimeIni::UpdateIniValue('/etc/airtime/recorder.cfg', 'api_key', "'$api_key'"); + AirtimeIni::UpdateIniValue(__DIR__.'/../../build/build.properties', 'project.home', realpath(__dir__.'/../../')); + } +} diff --git a/install/include/installInit.php b/install/include/installInit.php deleted file mode 100644 index b1ccb8219..000000000 --- a/install/include/installInit.php +++ /dev/null @@ -1,100 +0,0 @@ - strlen($property)) - if ($property == substr($lines[$i], 0, strlen($property))){ - $lines[$i] = "$property = $value\n"; - } - } - - $fp=fopen($filename, 'w'); - for($i=0; $i<$n; $i++){ - fwrite($fp, $lines[$i]); - } - fclose($fp); -} - -function UpdateINIFiles() -{ - $api_key = GenerateRandomString(); - UpdateIniValue('/etc/airtime/airtime.conf', 'api_key', $api_key); - UpdateIniValue('/etc/airtime/airtime.conf', 'baseFilesDir', realpath(__DIR__.'/../../files')); - UpdateIniValue('/etc/airtime/pypo.cfg', 'api_key', "'$api_key'"); - UpdateIniValue('/etc/airtime/recorder.cfg', 'api_key', "'$api_key'"); - UpdateIniValue(__DIR__.'/../../build/build.properties', 'project.home', realpath(__dir__.'/../../')); -}