protected function setupTemplate()
 {
     global $cfg;
     parent::setupTemplate();
     $db = Database::getInstance($cfg['DPS']['dsn']);
     $count_query = "SELECT count(*) FROM requests";
     $requestedNum = $db->getOne($count_query);
     $query = "SELECT * FROM requests ORDER BY date DESC";
     $requestedResult = $db->getAll($query);
     $i = 0;
     foreach ($requestedResult as $key => &$track) {
         $track['number'] = $i;
         $track['rtime'] = date("m/d/y", $track['date']);
         $track['user'] = AuthUtil::getUsername($track['userid']);
         $i++;
     }
     $trackCount = $i;
     $auth = Auth::getInstance();
     $userID = $auth->getUserID();
     $this->assign('CensorTrack', AuthUtil::getDetailedUserrealmAccess(array(3, 21, 30), $userID));
     $this->assign('RequestTrack', 't');
     $this->assign('RemoveRequestTrack', AuthUtil::getDetailedUserrealmAccess(array(3, 21, 29), $userID));
     $this->assign('Admin', AuthUtil::getDetailedUserrealmAccess(array(1), $userID));
     $this->assign('requestedTracks', $requestedResult);
     $this->assign('requestedNum', $requestedNum);
 }
 protected function setupTemplate()
 {
     global $cfg;
     parent::setupTemplate();
     $db = Database::getInstance($cfg['DPS']['dsn']);
     $trackIDs = explode(";", $this->fieldData['trackID']);
     $tracksDetails = array();
     foreach ($trackIDs as $trackID) {
         $sql = "SELECT audio.*, albums.name AS album \n\t\t\tFROM audio, albums \n\t\t\tWHERE audio.music_album = albums.id \n\t\t\t\tAND audio.id = " . pg_escape_string($trackID);
         $trackDetails = $db->getRow($sql);
         $sql = "SELECT DISTINCT artists.name AS name \n\t\t\tFROM artists, audioartists \n\t\t\tWHERE audioartists.audioid = " . pg_escape_string($trackID) . " \n\t\t\t\tAND audioartists.artistid = artists.id";
         $trackDetails['artist'] = $db->getColumn($sql);
         $sql = "SELECT DISTINCT keywords.name AS name \n\t\t\tFROM keywords, audiokeywords \n\t\t\tWHERE audiokeywords.audioid = " . pg_escape_string($trackID) . " \n\t\t\t\tAND audiokeywords.keywordid = keywords.id";
         $trackDetails['keywords'] = $db->getColumn($sql);
         $samples = $trackDetails['length_smpl'];
         $trackDetails['length'] = $tracksLen = round($samples / 44100 / 60) . "mins " . $samples / 44100 % 60 . "secs.";
         $sql = "SELECT * FROM audiocomments \n\t\t\tWHERE audioid = " . pg_escape_string($trackID) . " \n\t\t\tORDER BY creationdate ASC";
         $trackDetails['comments'] = $db->getAll($sql);
         foreach ($trackDetails['comments'] as &$comment) {
             $comment['username'] = AuthUtil::getUsername($comment['userid']);
             $comment['comment'] = str_replace("\n", "<br>", $comment['comment']);
             $comment['ctime'] = substr($comment['creationdate'], 0, 10);
         }
         $tracksDetails[] = $trackDetails;
     }
     $auth = Auth::getInstance();
     $userID = $auth->getUserID();
     $this->assign('RequestTrack', AuthUtil::getDetailedUserrealmAccess(array(3, 21, 29), $userID));
     $this->assign('Access_CommentTrack', AuthUtil::getDetailedUserrealmAccess(array(3, 21, 34), $userID));
     $this->assign('Access_EditTrack', AuthUtil::getDetailedUserrealmAccess(array(3, 21, 27), $userID));
     $this->assign('Admin', AuthUtil::getDetailedUserrealmAccess(array(1), $userID));
     $this->assign('tracksDetails', $tracksDetails);
 }
 protected function setupTemplate()
 {
     global $cfg;
     parent::setupTemplate();
     $db = Database::getInstance($cfg['DPS']['dsn']);
     $scriptID = pg_escape_string($this->fieldData['scriptID']);
     $auth = Auth::getInstance();
     $userID = $auth->getUserID();
     $date = time();
     if (is_numeric($scriptID)) {
         $script_query = "SELECT bit_or(permissions) \n\t\t\t\tFROM v_tree_script\n\t\t\t\tWHERE id = {$scriptID}\n\t\t\t\t\tAND userid = {$userID}";
         $checkScripts = $db->getOne($script_query);
         if (substr($checkScripts, 0, 1) == "1") {
             if (substr($checkScripts, 1, 1) == "1") {
                 $this->assign('write', 't');
             } else {
                 $this->assign('write', 'f');
             }
             $script_sql = "SELECT * FROM scripts WHERE id = " . $scriptID;
             $script = $db->getRow($script_sql);
             $script['m'] = (int) ($script['length'] / 60);
             $script['s'] = $script['length'] - $script['m'] * 60;
             $script['niceProducer'] = AuthUtil::getUsername($script['creator']);
             $this->assign('script', $script);
         } else {
             $this->assign('error', 'You do not have permission to edit that script.');
         }
     } else {
         $this->assign('error', 'Invalid Show ID supplied');
     }
     $this->assign('Admin', AuthUtil::getDetailedUserrealmAccess(array(1), $userID));
 }
 protected function setupTemplate()
 {
     global $cfg;
     parent::setupTemplate();
     $db = Database::getInstance($cfg['DPS']['dsn']);
     $auth = Auth::getInstance();
     $userID = $auth->getUserID();
     $audioID = pg_escape_string($this->fieldData['audioID']);
     $sql = "SELECT jinglepkgid FROM audiojinglepkgs WHERE audioid = {$audioID}";
     $jinglepkgID = $db->getOne($sql);
     $sql = "SELECT name FROM jinglepkgs WHERE id = {$jinglepkgID}";
     $currentpkg = $db->getOne($sql);
     if ($currentpkg == '') {
         $currentpkg = 'Default';
     }
     $sql = "SELECT title FROM audio WHERE id = {$audioID}";
     $jinglename = $db->getOne($sql);
     $sql = "SELECT name, id FROM jinglepkgs";
     $jinglepkgs = $db->getAll($sql);
     $this->assign('access_playlist', AuthUtil::getDetailedUserrealmAccess(array(3, 21, 33), $userID));
     $this->assign('access_sue', AuthUtil::getDetailedUserrealmAccess(array(24, 20, 3), $userID));
     $this->assign('Admin', AuthUtil::getDetailedUserrealmAccess(array(1), $userID));
     $this->assign('jinglepkgs', $jinglepkgs);
     $this->assign('currentpkg', $currentpkg);
     $this->assign('currentpkgid', $jinglepkgID);
     $this->assign('jinglename', $jinglename);
     $this->assign('jingleID', $audioID);
 }
 protected function setupTemplate()
 {
     global $cfg;
     parent::setupTemplate();
     $db = Database::getInstance($cfg['DPS']['dsn']);
     $auth = Auth::getInstance();
     $userID = $auth->getUserID();
     $loc = 1;
     $sql = "SELECT v_tree_aw_sets.*, aw_sets_users.user_id AS userid\n                from v_tree_aw_sets LEFT OUTER JOIN aw_sets_users\n                ON aw_sets_users.set_id = v_tree_aw_sets.id\n\t\t\tWHERE v_tree_aw_sets.userid = " . $cfg['DPS']['systemUserID'] . " \n\t\t\t\tAND v_tree_aw_sets.permissions & B'" . $cfg['DPS']['fileR'] . "' = '" . $cfg['DPS']['fileR'] . "'";
     // station awsets
     $awsets = $db->getAll($sql);
     $sql = "SELECT val FROM configuration \n\t\t\tWHERE location = {$loc} \n\t\t\t\tAND parameter = 'station_aw_set'";
     $userset = $db->getOne($sql);
     foreach ($awsets as &$awset) {
         if ($userset == $awset['id']) {
             $awset['active'] = 't';
         } else {
             $awset['active'] = 'f';
         }
         $sql = "SELECT BIT_OR(permissions) \n\t\t\t\tFROM v_tree_dir \n\t\t\t\tWHERE v_tree_dir.id = {$awset['parent']}\n\t\t\t\t\tAND v_tree_dir.userid = {$cfg['DPS']['systemUserID']}";
         $awset['parentperm'] = $db->getOne($sql);
         $awset['userid'] = AuthUtil::getUsername($awset['userid']);
     }
     $this->assign('access_playlist', AuthUtil::getDetailedUserrealmAccess(array(3, 21, 33), $userID));
     $this->assign('Admin', AuthUtil::getDetailedUserrealmAccess(array(1), $userID));
     $this->assign('awsets', $awsets);
 }
 protected function setupTemplate()
 {
     global $cfg;
     parent::setupTemplate();
     $auth = Auth::getInstance();
     $ID = $this->fieldData['guid'];
     $realmID = substr($this->fieldData['id'], 3);
     $type = $this->fieldData['treeUser'];
     if (stristr($_SERVER["HTTP_ACCEPT"], "application/xhtml+xml")) {
         header("Content-type: application/xhtml+xml");
     } else {
         header("Content-type: text/xml");
     }
     if ($type == 'group') {
         $treeInfo = AuthSubRealmViewer::singleRealmTree($realmID, $ID, true);
     } else {
         $treeInfo = AuthSubRealmViewer::singleRealmTree($realmID, $ID, false);
     }
     echo "<?xml version='1.0' encoding='iso-8859-1'?>\n";
     if ($realmID == 0) {
         $realmID = 0;
     } else {
         $realmID = "rlm" . $realmID;
     }
     $treeInfo = '<tree id="' . $realmID . '">' . $treeInfo . '</tree>';
     echo $treeInfo;
 }
 protected function setupTemplate()
 {
     global $cfg;
     parent::setupTemplate();
     $db = Database::getInstance($cfg['DPS']['dsn']);
     $trackid = $this->fieldData['trackID'];
     if (is_numeric($trackid)) {
         $query = "SELECT title, artist, md5, path FROM v_audio \n\t\t\t\tWHERE id = " . $trackid;
         $file = $db->getRow($query);
         //$filename = escapeshellarg($file['path']) . "/" .
         //	escapeshellarg($file['md5'][0]) . "/" .
         //	escapeshellarg($file['md5']);
         $filename = $file['path'] . "/" . $file['md5'][0] . "/" . $file['md5'];
         header('Pragma: public');
         header('Expires: 0');
         header('Content-Transfer-Encoding: binary');
         #header('Cache-Control: no-store,no-cache,must-revalidate');
         header('Content-Length: 180373');
         $fileN = str_replace(' ', '_', $file['title']) . '-' . str_replace(' ', '_', $file['artist']) . '.mp3';
         $fileN = str_replace('"', "", $fileN);
         $headstr = 'Content-Disposition: attachment; filename="' . $fileN . "\"";
         header($headstr);
         header('Content-type: audio/mpeg');
         passthru($cfg['general']['toolkitRoot'] . "/DPS/encode-digiplay-file.sh " . $filename);
     }
 }
 protected function setupTemplate()
 {
     global $cfg;
     parent::setupTemplate();
     $auth = Auth::getInstance();
     $userID = $auth->getUserID();
     $dirID = substr($this->fieldData['id'], 3);
     $type = $this->fieldData['treeUser'];
     if (stristr($_SERVER["HTTP_ACCEPT"], "application/xhtml+xml")) {
         header("Content-type: application/xhtml+xml");
     } else {
         header("Content-type: text/xml");
     }
     if ($type == 'group') {
         $treeInfo = DPS::singleGroupTreeSetup($dirID, $cfg['Auth']['defaultNewUserGroup'], $this->fieldData['treeType']);
     } else {
         $treeInfo = DPS::singleTreeSetup($dirID, $userID, $this->fieldData['treeType']);
     }
     echo "<?xml version='1.0' encoding='iso-8859-1'?>\n";
     if ($dirID == 1) {
         $dirID = 0;
     } else {
         $dirID = "dir" . $dirID;
     }
     $treeInfo = '<tree id="' . $dirID . '">' . $treeInfo . '</tree>';
     echo $treeInfo;
 }
 protected function setupTemplate()
 {
     global $cfg;
     parent::setupTemplate();
     $db = Database::getInstance($cfg['DPS']['dsn']);
     $auth = Auth::getInstance();
     $userID = $auth->getUserID();
     $dirID = pg_escape_string($this->fieldData['rootdir']);
     if (!is_numeric($dirID)) {
         $this->assign('permError', 't');
     } else {
         $flag = false;
         $sql = "SELECT count(*) FROM v_tree_dir\n\t\t\t\tWHERE id = {$dirID}\n\t\t\t\t\tAND\tuserid = {$userID}\n\t\t\t\t\tAND permissions & B'" . $cfg['DPS']['fileW'] . "' = '" . $cfg['DPS']['fileW'] . "'";
         if ($db->getOne($sql) > 0) {
             $flag = true;
         }
         if ($flag) {
             $sql = "SELECT * FROM dir WHERE id = {$dirID}";
             $folder = $db->getRow($sql);
             $this->assign('folder', $folder);
         } else {
             $this->assign('permError', 't');
         }
     }
 }
Beispiel #10
0
 private static function initialize()
 {
     if (self::$initialized) {
         return;
     }
     self::disable_ob();
     try {
         self::$redis = new Redis();
         self::$redis_enabled = self::$redis->pconnect('127.0.0.1', 6379, 0.01);
     } catch (Exception $e) {
     }
     if (isset($_SERVER['HTTP_HOST'])) {
         self::$log_prefix = $_SERVER['HTTP_HOST'];
     } else {
         self::$log_prefix = basename(realpath(__DIR__ . '/../../../'));
     }
     if (file_exists(dirname(__FILE__) . '/system/logs/')) {
         self::$log_path = dirname(__FILE__) . '/system/logs/';
     } else {
         if (file_exists(dirname(__FILE__) . '/../application/logs/')) {
             self::$log_path = dirname(__FILE__) . '/../application/logs/';
         }
     }
     self::$initialized = true;
 }
 protected function setupTemplate()
 {
     global $cfg;
     parent::setupTemplate();
     $db = Database::getInstance($cfg['DPS']['dsn']);
     $auth = Auth::getInstance();
     $userID = $auth->getUserID();
     $scriptID = pg_escape_string($this->fieldData['scriptID']);
     if (!is_numeric($scriptID)) {
         $this->assign('permError', 't');
     } else {
         $sql = "SELECT count(*) FROM v_tree_script\n\t\t\t\tWHERE id = {$scriptID}\n\t\t\t\t\tAND\tuserid = {$userID}\n\t\t\t\t\tAND permissions & B'" . $cfg['DPS']['fileW'] . "' = '" . $cfg['DPS']['fileW'] . "'";
         if ($db->getOne($sql) > 0) {
             $sql = "SELECT dirid FROM scriptsdir\n\t\t\t\t\tWHERE scriptid = {$scriptID}";
             $dirID = $db->getOne($sql);
             "SELECT count(*) FROM v_tree_dir\n\t\t\t\t\tWHERE id = {$dirID}\n\t\t\t\t\t\tAND\tuserid = {$userID}\n\t\t\t\t\t\tAND permissions & B'" . $cfg['DPS']['fileW'] . "' = '" . $cfg['DPS']['fileW'] . "'";
             if ($db->getOne($sql) > 0) {
                 $flag = true;
             }
         }
         if ($flag) {
             $sql = "SELECT * FROM scripts WHERE id = {$scriptID}";
             $script = $db->getRow($sql);
             $sql = "SELECT count(*) FROM v_tree_script\n\t\t\t\t\tWHERE id = {$scriptID}\n\t\t\t\t\t\tAND\tuserid = {$userID}\n\t\t\t\t\t\tAND permissions & B'" . $cfg['DPS']['fileO'] . "' = '" . $cfg['DPS']['fileO'] . "'";
             $check = $db->getOne($sql);
             if ($check > 0) {
                 $this->assign('own', 't');
             }
             $this->assign('script', $script);
             $this->assign('treeType', '');
         } else {
             $this->assign('permError', 't');
         }
     }
 }
 protected function setupTemplate()
 {
     global $cfg;
     parent::setupTemplate();
     $db = Database::getInstance($cfg['DPS']['dsn']);
     //Sue playing now/next
     $query = "SELECT audio.title AS title, audio.id AS id \n\t\t\tFROM sustschedule, audio \n\t\t\tWHERE sustschedule.audioid = audio.id \n\t\t\tORDER BY sustschedule.id asc";
     $suePlaylist = $db->getAll($query);
     foreach ($suePlaylist as $key => &$track) {
         $sql = "SELECT DISTINCT artists.name AS name \n\t\t\t\tFROM artists, audioartists \n\t\t\t\tWHERE audioartists.audioid = " . $track['id'] . " \n\t\t\t\t\tAND audioartists.artistid = artists.id";
         $artists = $db->getAll($sql);
         foreach ($artists as $artist) {
             $track['artist'] = $track['artist'] . $artist['name'] . " & ";
         }
         $track['artist'] = rtrim($track['artist'], " & ");
     }
     $auth = Auth::getInstance();
     $userID = $auth->getUserID();
     $this->assign('Access_ViewSue', AuthUtil::getDetailedUserrealmAccess(array(58, 60, 3), $userID));
     $this->assign('Access_EditSue', AuthUtil::getDetailedUserrealmAccess(array(58, 60, 66), $userID));
     $this->assign('Access_SueStats', AuthUtil::getDetailedUserrealmAccess(array(58, 60, 2), $userID));
     $this->assign('Admin', AuthUtil::getDetailedUserrealmAccess(array(1), $userID));
     $this->assign('storedTracks', $systemTracks);
     $this->assign('sueLastTrack', $suePlaylist[0]);
     $this->assign('sueNextTrack', $suePlaylist[1]);
 }
 protected function action()
 {
     $this->addParameter('opacity', '0');
     $this->showContentOnly = TRUE;
     $this->pageToView = "message";
     parent::action();
 }
Beispiel #14
0
 public static function addPredmet()
 {
     $id = intval($_GET['id']);
     $predmetid = intval($_POST['predmetid']);
     $ucitel = intval($_POST['ucitel']);
     DB::query("INSERT INTO `tests` (trieda,predmetid,ucitel) VALUES ('" . $id . "','" . $predmetid . "','" . $ucitel . "')");
     Viewer::addMessage("Predmet bot úspešne pridaný !", Viewer::OK);
 }
 protected function setupTemplate()
 {
     global $cfg;
     parent::setupTemplate();
     $loginTplID = MVCUtils::getTemplateID('login.tpl');
     $this->assign('fwdtid', end($this->templateIDStack));
     $this->assign('loginTplID', $loginTplID);
 }
 protected function setupTemplate()
 {
     global $cfg;
     parent::setupTemplate();
     $auth = Auth::getInstance();
     $userID = $auth->getUserID();
     $this->assign('treeType', 'jacspmr');
     $this->assign('Admin', AuthUtil::getDetailedUserrealmAccess(array(1), $userID));
 }
 protected function setupTemplate()
 {
     global $cfg;
     parent::setupTemplate();
     $auth = Auth::getInstance();
     $userID = $auth->getUserID();
     $this->assign('RequestTrack', AuthUtil::getDetailedUserrealmAccess(array(3, 21, 29), $userID));
     $this->assign('Admin', AuthUtil::getDetailedUserrealmAccess(array(1), $userID));
 }
 protected function setupTemplate()
 {
     global $cfg;
     parent::setupTemplate();
     $db = Database::getInstance($cfg['DPS']['dsn']);
     $offset = $this->fieldData['dpsSearchPage'];
     if ($offset == "") {
         $offset = 0;
     } else {
         $offset--;
     }
     $searchValue = trim($this->fieldData['dpsSearchVal']);
     $searchType = $this->fieldData['dpsSearchType'];
     $letter = pg_escape_string($this->fieldData['dpsSearchLetter']);
     if ($searchType == '' && $letter != '') {
         if ($letter == "*") {
             $searchType = 'Number';
         } else {
             $searchType = 'Letter';
         }
     }
     if ($this->fieldData['dpsSortType'] != '') {
         $sesh = Session::getInstance();
         $sortType = $this->fieldData['dpsSortType'];
         $sesh->setValue("dpsSortType", $sortType);
     } else {
         $sesh = Session::getInstance();
         if ($sesh->keyExists("dpsSortType")) {
             $sortType = $sesh->getValue("dpsSortType");
         } else {
             $sortType = "title";
         }
     }
     if ($searchValue != '') {
         $searchResult = DPS::searchAudio($searchValue, $searchType, $sortType, $offset, '');
         $rNum = DPS::searchPageAudio($searchValue, $searchType, '');
         $searchInfo = "Found {$rNum} results matching your query";
     }
     $pages = ceil($rNum / $cfg['DPS']['resultLimit']);
     //fill the $pageArray array with values from 1 to $pages
     $pageArray = range(1, $pages);
     $auth = Auth::getInstance();
     $userID = $auth->getUserID();
     $this->assign('RequestTrack', AuthUtil::getDetailedUserrealmAccess(array(3, 21, 29), $userID));
     $this->assign('CensorTrack', AuthUtil::getDetailedUserrealmAccess(array(3, 21, 30), $userID));
     $this->assign('ReportTrack', AuthUtil::getDetailedUserrealmAccess(array(3, 21, 43), $userID));
     $this->assign('EditTrack', AuthUtil::getDetailedUserrealmAccess(array(3, 21, 27), $userID));
     $this->assign('DeleteTrack', AuthUtil::getDetailedUserrealmAccess(array(2, 21, 32), $userID));
     $this->assign('Admin', AuthUtil::getDetailedUserrealmAccess(array(1), $userID));
     $this->assign('page', $offset);
     $this->assign('searchResult', $searchResult);
     $this->assign('searchInfo', $searchInfo);
     $this->assign('pages', $pageArray);
     $this->assign('searchType', $searchType);
     $this->assign('searchValue', $searchValue);
     $this->assign('sortType', $sortType);
 }
 protected function setupTemplate()
 {
     parent::setupTemplate();
     global $cfg;
     $db = Database::getInstance($cfg['DPS']['dsn']);
     $sql = "SELECT DISTINCT location as locid, location as locname \n\t\t\tFROM configuration \n\t\t\tWHERE location != -1 AND \n\t\t\t\tlocation != 0\n\t\t\tORDER BY location ASC";
     $locs = $db->getAll($sql);
     $this->assign('locs', $locs);
 }
 protected function setupTemplate()
 {
     global $cfg;
     parent::setupTemplate();
     $db = Database::getInstance($cfg['DPS']['dsn']);
     $auth = Auth::getInstance();
     $userID = $auth->getUserID();
     $this->assign('Admin', AuthUtil::getDetailedUserrealmAccess(array(1), $userID));
 }
Beispiel #21
0
 public static function view($viewName, $model = null)
 {
     self::$model = $model;
     $path = $_SERVER['DOCUMENT_ROOT'] . '/' . 'application/views/' . $viewName;
     if (file_exists($path . '.php')) {
         require_once $path . '.php';
     } elseif (file_exists($path . '.html')) {
         require_once $path . '.html';
     }
 }
 /**
  * Construct the viewer and load values
  *
  * If you intend on overriding this classes constructor you should ensure 
  * that you call parent::__construct(); to ensure that the class 
  * is loaded correctly.
  * 
  * @param string $templateID The ID of the template for the page to be viewed. This ID is the ID of the template in the database.
  * @param string $formName The name of the form (if any) which has been submitted
  * @param array $fieldData An associative array for field/value pairs from the submitted form (if any)
  * @todo Add authnetication checks to call processInvalid or processInvalid accordingly.
  */
 public function __construct($templateIDS, $formName = null, $modelModuleName, $viewerModuleName, &$fieldData = array(), &$errors = array())
 {
     //Store class variables
     $this->templateIDStack = $templateIDS;
     $this->templateID = end($templateIDS);
     $this->formName = $formName;
     $this->fieldData =& $fieldData;
     $this->errors =& $errors;
     if (count($errors) > 0) {
         $this->processInvalid();
     } else {
         $this->processValid();
     }
     //something
     //Initialise the viewer
     $this->viewer = MVCUtils::initializeViewer($this->templateIDStack, $formName, $viewerModuleName, $fieldData, $errors);
     //The $viewer class variable is now loaded
     $this->code = $this->viewer->getCode();
 }
Beispiel #23
0
 public static function query($sql)
 {
     Utils::log($sql);
     //echo $sql."\n";
     $res = self::$db->query($sql);
     if ($res == FALSE) {
         Utils::log("DB ERROR");
         Viewer::addMessage("Nastala chyba pri komunikácii s databázou, prosím kontaktuj administrátora !", Viewer::ERROR);
     }
     return $res;
 }
 protected function setupTemplate()
 {
     global $cfg;
     parent::setupTemplate();
     $db = Database::getInstance($cfg['DPS']['dsn']);
     $trackID = $this->fieldData['trackID'];
     $auth = Auth::getInstance();
     $userID = $auth->getUserID();
     //As there is no general audio view
     $sql = "SELECT count(*) FROM v_tree_jingle \n\t\t\tWHERE id = " . pg_escape_string($trackID) . " \n\t\t\t\tAND userid = " . $userID . " \n\t\t\t\tAND permissions & B'" . $cfg['DPS']['fileW'] . "' = '" . $cfg['DPS']['fileW'] . "'";
     $check = $db->getOne($sql);
     $sql = "SELECT count(*) FROM v_tree_advert \n\t\t\tWHERE id = " . pg_escape_string($trackID) . " \n\t\t\t\tAND userid = " . $userID . " \n\t\t\t\tAND permissions & B'" . $cfg['DPS']['fileW'] . "' = '" . $cfg['DPS']['fileW'] . "'";
     $check = $check + $db->getOne($sql);
     $sql = "SELECT count(*) FROM v_tree_prerec \n\t\t\tWHERE id = " . pg_escape_string($trackID) . " \n\t\t\t\tAND userid = " . $userID . " \n\t\t\t\tAND permissions & B'" . $cfg['DPS']['fileW'] . "' = '" . $cfg['DPS']['fileW'] . "'";
     $check = $check + $db->getOne($sql);
     if ($check < 1) {
         $this->assign('authError', 't');
     } else {
         $sql = "SELECT audio.* FROM audio \n\t\t\t\tWHERE audio.id = " . pg_escape_string($trackID);
         $trackDetails = $db->getRow($sql);
         $sql = "SELECT DISTINCT artists.name AS name, artists.id AS id \n\t\t\t\tFROM artists, audioartists \n\t\t\t\tWHERE audioartists.audioid = " . pg_escape_string($trackID) . " \n\t\t\t\t\tAND audioartists.artistid = artists.id";
         $trackDetails['artist'] = $db->getAll($sql);
         $i = 0;
         foreach ($trackDetails['artist'] as &$artist) {
             $artist['number'] = $i;
             $i++;
         }
         $artistNum = $i;
         $sql = "SELECT DISTINCT keywords.name AS name, keywords.id AS id \n\t\t\t\tFROM keywords, audiokeywords \n\t\t\t\tWHERE audiokeywords.track = " . pg_escape_string($trackID) . " \n\t\t\t\t\tAND audiokeywords.keyword = keywords.id";
         $trackDetails['keywords'] = $db->getAll($sql);
         $i = 0;
         foreach ($trackDetails['keywords'] as &$keyword) {
             $keyword['number'] = $i;
             $i++;
         }
         $keywordNum = $i;
         $samples = $trackDetails['length_smpl'];
         $trackDetails['length'] = $tracksLen = floor($samples / 44100 / 60) . "mins " . $samples / 44100 % 60 . "secs.";
         $sql = "SELECT * from audiocomments \n\t\t\t\tWHERE audioid = " . pg_escape_string($trackID) . "\n\t\t\t\tORDER BY creationdate ASC";
         $trackDetails['comments'] = $db->getAll($sql);
         foreach ($trackDetails['comments'] as &$comment) {
             $comment['username'] = AuthUtil::getUsername($comment['userid']);
             $comment['comment'] = str_replace("\n", "<br>", $comment['comment']);
             $comment['ctime'] = substr($comment['creationdate'], 0, 10);
         }
         $this->assign('trackDetails', $trackDetails);
         $this->assign('keywordNum', $keywordNum);
         $this->assign('artistNum', $artistNum);
         $this->assign('trackID', $trackID);
     }
     $this->assign('access_playlist', AuthUtil::getDetailedUserrealmAccess(array(3, 21, 33), $userID));
     $this->assign('Admin', AuthUtil::getDetailedUserrealmAccess(array(1), $userID));
     $this->assign('studioAccess', AuthUtil::getDetailedUserrealmAccess(array(3, 21, 34), $userID));
 }
Beispiel #25
0
 /**
  *  <p>This is the only methods which runs the application. In fact it creates a new
  *  instance of this class because the constructor contains all necessary instructions to set up
  *  application variables and parse required data from XML source. It is as easy as possible 8-D</p>
  */
 public static function run()
 {
     self::$instance = new Application();
     try {
         self::$instance->getParser()->parse();
         Viewer::vizualize(self::$instance->getParams()->getRequestedView());
     } catch (Exception $e) {
         self::$instance->caughtException = $e;
         Viewer::vizualize(self::$instance->getParams()->getErrorView());
     }
 }
Beispiel #26
0
 protected function action()
 {
     $this->showContentOnly = TRUE;
     try {
         $idntwrkr = $this->uriPath[count($this->uriPath) - 1];
     } catch (Exception $exc) {
         $idntwrkr = NULL_PARENT_ROOT;
     }
     Session::setObj(Session::NETWORKER, new Utente($idntwrkr));
     $this->pageToView = "loadntwrkr";
     parent::action();
 }
 public function action_view()
 {
     $uri = $this->request->detect_uri();
     if ($uri == '') {
         $this->redirect(URL::to('page@view:home'));
     }
     $id = $this->request->param('id');
     $query = $this->request->query();
     $username = $this->request->post('username');
     $password = $this->request->post('password');
     $login = $this->request->post('login');
     $identity = Identity::instance();
     $info = ORM::factory('Page')->filter('alias', $id)->load();
     if ($info->loaded()) {
         //downloads
         if ($id == 'download') {
             $downloads = true;
         }
         //contact
         if ($id == 'contact') {
             $form = Form::factory('Contact');
             //$form = Form::
             if ($form->valid()) {
                 //var_dump($form->values());
                 $this->redirect(URL::to('page@view:contact') . '?form=sent');
             }
         } else {
             $form = FALSE;
         }
         //login mechanism
         if (empty($username) && $login == 'Login') {
             $this->redirect(URL::current() . '?auth=nameError');
         } elseif (empty($password) && $login == 'Login') {
             $this->redirect(URL::current() . '?auth=false');
         } elseif (!empty($username) && !empty($password) && $login == 'Login') {
             $auth = $identity->authenticate($username, $password);
             if ($auth) {
                 $this->redirect(URL::current());
             } else {
                 $this->redirect(URL::current() . '?auth=false');
             }
         }
         //logout mechanism
         if ($login == 'Logout') {
             $identity->destroy();
             $this->redirect(URL::current());
         }
         $view = View::factory('page/item', array('item' => Viewer::factory($info), 'form' => $form, 'query' => $query, 'downloads' => isset($downloads) ? $downloads : null));
         $this->response->body($view->render());
     } else {
         throw HTTP_Exception::factory(404, 'Page not found');
     }
 }
 protected function setupTemplate()
 {
     parent::setupTemplate();
     global $cfg;
     $db = Database::getInstance($cfg['DPS']['dsn']);
     $sql = "SELECT * FROM configuration ORDER BY location, parameter ASC";
     $configs = $db->getAll($sql);
     $sql = "SELECT DISTINCT location FROM configuration ORDER BY location ASC";
     $locs = $db->getAll($sql);
     $this->assign('configs', $configs);
     $this->assign('locs', $locs);
 }
 protected function setupTemplate()
 {
     global $cfg;
     parent::setupTemplate();
     $auth = Auth::getInstance();
     $userID = $auth->getUserID();
     $this->assign('Admin', AuthUtil::getDetailedUserrealmAccess(array(1), $userID));
     if ($userID == $cfg['Auth']['anonuserID']) {
         $this->assign('Guest', 't');
     } else {
         $this->assign('Guest', 'f');
     }
 }
 protected function setupTemplate()
 {
     global $cfg;
     parent::setupTemplate();
     $db = Database::getInstance($cfg['DPS']['dsn']);
     //System Track count
     $query = "SELECT count(audio.id) FROM audio";
     $systemTracks = $db->getOne($query);
     //System Track length
     $query = "SELECT sum(audio.length_smpl) FROM audio";
     $systemSamps = $db->getOne($query);
     $days = floor($systemSamps / 44100 / 60 / 60 / 24);
     $hours = floor($systemSamps / 44100 / 60 / 60 - $days * 24);
     $mins = round($systemSamps / 44100 / 60 - $hours * 60 - $days * 24 * 60);
     $systemLength = $days . "days " . $hours . "h " . $mins . "m";
     //Sue Track count
     $query = "SELECT count(audio.id) FROM audio WHERE sustainer = 't'";
     $sueTracks = $db->getOne($query);
     //Sue Track length
     $query = "SELECT sum(audio.length_smpl) FROM audio WHERE sustainer = 't'";
     $sueSamps = $db->getOne($query);
     $days = floor($sueSamps / 44100 / 60 / 60 / 24);
     $hours = floor($sueSamps / 44100 / 60 / 60 - $days * 24);
     $mins = round($sueSamps / 44100 / 60 - $hours * 60 - $days * 24 * 60);
     $sueLength = $days . "days " . $hours . "h " . $mins . "m";
     //Sue playing now/next
     $query = "SELECT audio.title AS title, audio.id AS id \n\t\tFROM sustschedule, audio \n\t\tWHERE sustschedule.audioid = audio.id \n\t\tORDER BY sustschedule.id asc";
     $suePlaylist = $db->getAll($query);
     foreach ($suePlaylist as $key => &$track) {
         $sql = "SELECT DISTINCT artists.name as name \n\t\t\tFROM artists, audioartists \n\t\t\tWHERE audioartists.audioid = " . $track['id'] . " AND\n\t\t\t\taudioartists.artistid = artists.id";
         $artists = $db->getAll($sql);
         foreach ($artists as $artist) {
             $track['artist'] = $track['artist'] . $artist['name'] . " & ";
         }
         $track['artist'] = rtrim($track['artist'], " & ");
     }
     $auth = Auth::getInstance();
     $userID = $auth->getUserID();
     $this->assign('Access_EditSue', AuthUtil::getDetailedUserrealmAccess(array(24, 20, 3), $userID));
     $this->assign('Access_ViewSue', AuthUtil::getDetailedUserrealmAccess(array(26, 20, 3), $userID));
     $this->assign('Admin', AuthUtil::getDetailedUserrealmAccess(array(1), $userID));
     $this->assign('storedTracks', $systemTracks);
     $this->assign('lengthOfTracks', $systemLength);
     $this->assign('suePlaylistTracks', $sueTracks);
     $this->assign('suePlaylistLength', $sueLength);
     $this->assign('sueLastTrack', $suePlaylist[0]);
     $this->assign('sueNextTrack', $suePlaylist[1]);
     $this->assign('suePlaylist', $suePlaylist);
 }