if (!file_exists("/etc/airtime/")) { if (!mkdir("/etc/airtime/", 0755, true)) { echo "Could not create /etc/airtime/ directory. Exiting."; exit(1); } } if (!copy("airtime.conf.170", CONF_FILE_AIRTIME)) { echo "Could not copy airtime.conf to /etc/airtime/. Exiting."; exit(1); } if (!copy($AIRTIME_PYTHON_APPS . "/pypo/pypo.cfg", CONF_FILE_PYPO)) { echo "Could not copy pypo.cfg to /etc/airtime/. Exiting."; exit(1); } if (!copy($AIRTIME_PYTHON_APPS . "/show-recorder/recorder.cfg", CONF_FILE_RECORDER)) { echo "Could not copy recorder.cfg to /etc/airtime/. Exiting."; exit(1); } if (!copy($AIRTIME_PYTHON_APPS . "/pypo/liquidsoap_scripts/liquidsoap.cfg", CONF_FILE_LIQUIDSOAP)) { echo "Could not copy liquidsoap.cfg to /etc/airtime/. Exiting."; exit(1); } } CreateIniFiles(); AirtimeIni::UpdateIniFiles(); echo PHP_EOL . "*** Updating Database Tables ***" . PHP_EOL; AirtimeInstall::MigrateTablesToVersion(__DIR__, '20110402164819'); echo PHP_EOL . "*** Updating Pypo ***" . PHP_EOL; system("python " . __DIR__ . "/../../../python_apps/pypo/install/pypo-install.py"); echo PHP_EOL . "*** Recorder Installation ***" . PHP_EOL; system("python " . __DIR__ . "/../../../python_apps/show-recorder/install/recorder-install.py");
function load_airtime_config() { $ini_array = parse_ini_file('/etc/airtime/airtime.conf', true); return $ini_array; } $values = load_airtime_config(); $CC_CONFIG = array('webServerUser' => $values['general']['web_server_user'], 'rabbitmq' => $values['rabbitmq'], 'baseFilesDir' => $values['general']['base_files_dir'], 'storageDir' => $values['general']['base_files_dir'] . "/stor", 'dsn' => array('username' => $values['database']['dbuser'], 'password' => $values['database']['dbpass'], 'hostspec' => $values['database']['host'], 'phptype' => 'pgsql', 'database' => $values['database']['dbname']), 'tblNamePrefix' => 'cc_', 'apiKey' => array($values['general']['api_key']), 'apiPath' => '/api/', 'soundcloud-client-id' => '2CLCxcSXYzx7QhhPVHN4A', 'soundcloud-client-secret' => 'pZ7beWmF06epXLHVUP1ufOg2oEnIt9XhE8l8xt0bBs', 'soundcloud-connection-retries' => $values['soundcloud']['connection_retries'], 'soundcloud-connection-wait' => $values['soundcloud']['time_between_retries'], "rootDir" => __DIR__ . "/../..", 'pearPath' => dirname(__FILE__) . '/../../library/pear', 'zendPath' => dirname(__FILE__) . '/../../library/Zend', 'phingPath' => dirname(__FILE__) . '/../../library/phing'); AirtimeInstall::DbConnect(true); echo PHP_EOL . "*** Updating Database Tables ***" . PHP_EOL; if (AirtimeInstall::DbTableExists('doctrine_migration_versions') === false) { $migrations = array('20110312121200', '20110331111708', '20110402164819'); foreach ($migrations as $migration) { AirtimeInstall::BypassMigrations(__DIR__, $migration); } } AirtimeInstall::MigrateTablesToVersion(__DIR__, '20110406182005'); //setting data for new aggregate show length column. $sql = "SELECT id FROM cc_show_instances"; $show_instances = $CC_DBC->GetAll($sql); foreach ($show_instances as $show_instance) { $sql = "UPDATE cc_show_instances SET time_filled = (SELECT SUM(clip_length) FROM cc_schedule WHERE instance_id = {$show_instance["id"]}) WHERE id = {$show_instance["id"]}"; $CC_DBC->query($sql); } //end setting data for new aggregate show length column. exec("rm -fr /opt/pypo"); exec("rm -fr /opt/recorder"); const CONF_FILE_AIRTIME = "/etc/airtime/airtime.conf"; const CONF_FILE_PYPO = "/etc/airtime/pypo.cfg"; const CONF_FILE_RECORDER = "/etc/airtime/recorder.cfg"; const CONF_FILE_LIQUIDSOAP = "/etc/airtime/liquidsoap.cfg"; $configFiles = array(CONF_FILE_AIRTIME, CONF_FILE_PYPO, CONF_FILE_RECORDER, CONF_FILE_LIQUIDSOAP);