Exemplo n.º 1
0
 public static function setAirtimeVersion()
 {
     $airtime_version = Application_Model_Preference::GetAirtimeVersion();
     $uniqueid = Application_Model_Preference::GetUniqueId();
     self::$CC_CONFIG['airtime_version'] = md5($airtime_version . $uniqueid);
 }
Exemplo n.º 2
0
require_once __DIR__ . "/configs/ACL.php";
require_once 'propel/runtime/lib/Propel.php';
Propel::init(__DIR__ . "/configs/airtime-conf-production.php");
require_once __DIR__ . "/configs/constants.php";
require_once 'Preference.php';
require_once "DateHelper.php";
require_once "OsPath.php";
require_once "Database.php";
require_once __DIR__ . '/controllers/plugins/RabbitMqPlugin.php';
date_default_timezone_set('UTC');
require_once APPLICATION_PATH . "/logging/Logging.php";
Logging::setLogPath('/var/log/airtime/zendphp.log');
date_default_timezone_set(Application_Model_Preference::GetTimezone());
global $CC_CONFIG;
$airtime_version = Application_Model_Preference::GetAirtimeVersion();
$uniqueid = Application_Model_Preference::GetUniqueId();
$CC_CONFIG['airtime_version'] = md5($airtime_version . $uniqueid);
require_once __DIR__ . "/configs/navigation.php";
Zend_Validate::setDefaultNamespaces("Zend");
$front = Zend_Controller_Front::getInstance();
$front->registerPlugin(new RabbitMqPlugin());
/* The bootstrap class should only be used to initialize actions that return a view.
   Actions that return JSON will not use the bootstrap class! */
class Bootstrap extends Zend_Application_Bootstrap_Bootstrap
{
    protected function _initDoctype()
    {
        $this->bootstrap('view');
        $view = $this->getResource('view');
        $view->doctype('XHTML1_STRICT');
    }
Exemplo n.º 3
0
 public static function GetSystemInfo($returnArray = false)
 {
     exec('/usr/bin/airtime-check-system', $output);
     $output = preg_replace('/\\s+/', ' ', $output);
     $systemInfoArray = array();
     foreach ($output as $key => &$out) {
         $info = explode('=', $out);
         if (isset($info[1])) {
             $key = str_replace(' ', '_', trim($info[0]));
             $key = strtoupper($key);
             $systemInfoArray[$key] = $info[1];
         }
     }
     $outputArray = array();
     $outputArray['STATION_NAME'] = Application_Model_Preference::GetStationName();
     $outputArray['PHONE'] = Application_Model_Preference::GetPhone();
     $outputArray['EMAIL'] = Application_Model_Preference::GetEmail();
     $outputArray['STATION_WEB_SITE'] = Application_Model_Preference::GetStationWebSite();
     $outputArray['STATION_COUNTRY'] = Application_Model_Preference::GetStationCountry();
     $outputArray['STATION_CITY'] = Application_Model_Preference::GetStationCity();
     $outputArray['STATION_DESCRIPTION'] = Application_Model_Preference::GetStationDescription();
     // get web server info
     if (isset($systemInfoArray["AIRTIME_VERSION_URL"])) {
         $url = $systemInfoArray["AIRTIME_VERSION_URL"];
         $index = strpos($url, '/api/');
         $url = substr($url, 0, $index);
         $headerInfo = get_headers(trim($url), 1);
         $outputArray['WEB_SERVER'] = $headerInfo['Server'][0];
     }
     $outputArray['NUM_OF_USERS'] = User::getUserCount();
     $outputArray['NUM_OF_SONGS'] = StoredFile::getFileCount();
     $outputArray['NUM_OF_PLAYLISTS'] = Playlist::getPlaylistCount();
     $outputArray['NUM_OF_SCHEDULED_PLAYLISTS'] = Schedule::getSchduledPlaylistCount();
     $outputArray['NUM_OF_PAST_SHOWS'] = ShowInstance::GetShowInstanceCount(date("Y-m-d H:i:s"));
     $outputArray['UNIQUE_ID'] = Application_Model_Preference::GetUniqueId();
     $outputArray = array_merge($systemInfoArray, $outputArray);
     $outputString = "\n";
     foreach ($outputArray as $key => $out) {
         if ($out != '') {
             $outputString .= $key . ' : ' . $out . "\n";
         }
     }
     if ($returnArray) {
         $outputArray['PROMOTE'] = Application_Model_Preference::GetPublicise();
         $outputArray['LOGOIMG'] = Application_Model_Preference::GetStationLogo();
         return $outputArray;
     } else {
         return $outputString;
     }
 }