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();
     $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();
     $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']);
     $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']);
     //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 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']);
     $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()
 {
     global $cfg;
     parent::setupTemplate();
     $db = Database::getInstance($cfg['DPS']['dsn']);
     $auth = Auth::getInstance();
     $userID = $auth->getUserID();
     $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();
     $auth = Auth::getInstance();
     $userID = $auth->getUserID();
     $this->assign('treeType', 'jacspmr');
     $this->assign('Admin', AuthUtil::getDetailedUserrealmAccess(array(1), $userID));
 }
 protected function processValid()
 {
     global $cfg;
     $db = Database::getInstance($cfg['DPS']['dsn']);
     $auth = Auth::getInstance();
     $userID = $auth->getUserID();
     if ($this->formName == "dpsStationUpdateJinglePkgForm") {
         $jinglepkgID = pg_escape_string($this->fieldData['jinglepkgID']);
         if (is_numeric($jinglepkgID) && $jinglepkgID != "" && $jinglepkgID != "*") {
             if ($this->fieldData['name'] != '') {
                 $pkgUpdates['name'] = $this->fieldData['name'];
             }
             if ($this->fieldData['description'] != '') {
                 $pkgUpdates['description'] = $this->fieldData['description'];
             }
             if (AuthUtil::getDetailedUserrealmAccess(array(24, 20, 3), $userID)) {
                 if ($this->fieldData['enabled'] == "on") {
                     $pkgUpdates['enabled'] = 't';
                 } else {
                     $pkgUpdates['enabled'] = 'f';
                 }
             }
             $atWhere = "jinglepkgs.id = " . $jinglepkgID;
             $db->update('jinglepkgs', $pkgUpdates, $atWhere, true);
         }
     } elseif ($this->formName == "dpsStationRemJingleFromPkgForm") {
         $jingleID = pg_escape_string($this->fieldData['jingleID']);
         $jinglepkgID = pg_escape_string($this->fieldData['jinglepkgID']);
         if (AuthUtil::getDetailedUserrealmAccess(array(35, 22, 3), $userID)) {
             $sql = "SELECT id FROM audiojinglepkgs WHERE audioid = {$jingleID} AND jinglepkgid = {$jinglepkgID}";
             $rowID = $db->getOne($sql);
             if ($rowID != 0) {
                 $Where = "id = {$rowID}";
                 $db->delete('audiojinglepkgs', $Where, true);
             }
             $sql = "SELECT COUNT(*) from audiojinglepkgs WHERE jinglepkgid = {$jinglepkgID}";
             $remainingjingles = $db->getOne($sql);
             if ($remainingjingles == 0) {
                 $Where = "id = " . $jinglepkgID;
                 $db->delete('jinglepkgs', $Where, true);
             }
             $sql = "SELECT COUNT(*) from audiojinglepkgs WHERE audioid = {$jingleID}";
             $remainingpkgs = $db->getOne($sql);
             if ($remainingpkgs == 0) {
                 $sql = "SELECT id FROM jinglepkgs WHERE name = ''";
                 $defaultid = $db->getOne($sql);
                 $newpkg['audioid'] = $jingleID;
                 $newpkg['jinglepkgid'] = $defaultid;
                 $newpkg['jingletypeid'] = 1;
                 $db->insert('audiojinglepkgs', $newpkg, true);
             }
         }
     }
 }
 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));
 }
 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');
     }
 }
 /**
  * Checks authorisation for a template
  *
  */
 protected function checkAuth()
 {
     global $cfg;
     $auth = Auth::getInstance();
     if (!$auth->isLoggedIn()) {
         BasicLogger::logMessage("Logging in user as default", self::module, 'debug');
         $auth->attemptLogin($cfg['Auth']['anonuser']);
     } else {
         $auth->attemptLogin();
     }
     BasicLogger::logMessage("logged in as '{$auth->getUser()}'", self::module, 'debug');
     return AuthUtil::templateAccessAllowed(end($this->templateIDStack), $auth->getUser());
 }
 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);
 }
 protected function processValid()
 {
     global $cfg;
     $db = Database::getInstance($cfg['DPS']['dsn']);
     $auth = Auth::getInstance();
     $userID = $auth->getUserID();
     if ($this->formName == "dpsStationMoveJingleForm") {
         $jingleID = pg_escape_string($this->fieldData['jingleID']);
         $jinglepkgID = pg_escape_string($this->fieldData['jinglepkgID']);
         if (AuthUtil::getDetailedUserrealmAccess(array(35, 22, 3), $userID)) {
             $sql = "SELECT jinglepkgid FROM audiojinglepkgs WHERE audioid = {$jingleID}";
             $oldjinglepkgID = $db->getOne($sql);
             if ($jinglepkgID == $oldjinglepkgID && $this->fieldData['newPackageName'] == '') {
                 return;
             }
             $sql = "SELECT id FROM audiojinglepkgs WHERE audioid = {$jingleID} AND jinglepkgid = {$oldjinglepkgID}";
             $rowID = $db->getOne($sql);
             if ($rowID != 0) {
                 $Where = "id = {$rowID}";
                 $db->delete('audiojinglepkgs', $Where, true);
             }
             $sql = "SELECT COUNT(*) from audiojinglepkgs WHERE jinglepkgid = {$oldjinglepkgID}";
             $remainingjingles = $db->getOne($sql);
             if ($remainingjingles == 0) {
                 $Where = "id = " . $oldjinglepkgID;
                 $db->delete('jinglepkgs', $Where, true);
             }
             if ($this->fieldData['newPackageName'] != '') {
                 $jinglePkgName = pg_escape_string($this->fieldData['newPackageName']);
                 $sql = "SELECT id FROM jinglepkgs WHERE name = '{$jinglePkgName}'";
                 $numRows = count($db->getAll($sql));
                 if ($numRows != 0) {
                     $jinglepkgID = $db->getOne($sql);
                 } else {
                     $newjinglepkg['name'] = $jinglePkgName;
                     $newjinglepkg['description'] = pg_escape_string($this->fieldData['newPackageDesc']);
                     $newjinglepkg['enabled'] = 'f';
                     $db->insert('jinglepkgs', $newjinglepkg, true);
                     $sql = "SELECT id FROM jinglepkgs WHERE name = '{$jinglePkgName}'";
                     $jinglepkgID = $db->getOne($sql);
                 }
             }
             $newpkg['audioid'] = $jingleID;
             $newpkg['jinglepkgid'] = $jinglepkgID;
             $newpkg['jingletypeid'] = 1;
             $db->insert('audiojinglepkgs', $newpkg, true);
         }
     }
 }
 protected function setupTemplate()
 {
     global $cfg;
     parent::setupTemplate();
     $db = Database::getInstance($cfg['DPS']['dsn']);
     $auth = Auth::getInstance();
     $userID = $auth->getUserID();
     $loc = 1;
     $sql = "SELECT * from jinglepkgs ORDER BY name";
     $jinglepkgs = $db->getAll($sql);
     $this->assign('access_playlist', AuthUtil::getDetailedUserrealmAccess(array(3, 21, 33), $userID));
     $this->assign('access_sue', AuthUtil::getDetailedUserrealmAccess(array(3, 20, 24), $userID));
     $this->assign('Admin', AuthUtil::getDetailedUserrealmAccess(array(1), $userID));
     $this->assign('jinglepkgs', $jinglepkgs);
 }
 protected function setupTemplate()
 {
     parent::setupTemplate();
     if (isset($this->fieldData['userToEdit'])) {
         $uid = $this->fieldData['userToEdit'];
         $this->assign('id', $uid);
     } else {
         $uid = null;
     }
     $this->assignCustomFields('users', $uid);
     if (isset($this->fieldData['userToEdit'])) {
         $this->assign('treeUser', 'user');
         $this->assign('groupinfo', $this->getGroupInfoForUser($uid));
         $this->assign('username', AuthUtil::getUsername($uid));
     }
     $this->assign('users', AuthUtil::getUserList());
 }
 protected function setupTemplate()
 {
     global $cfg;
     parent::setupTemplate();
     $db = Database::getInstance($cfg['DPS']['dsn']);
     $auth = Auth::getInstance();
     $userID = $auth->getUserID();
     $jinglepkgID = pg_escape_string($this->fieldData['jinglepkgID']);
     $sql = "SELECT * FROM jinglepkgs WHERE id = {$jinglepkgID}";
     $jinglepkg = $db->getRow($sql);
     $sql = "SELECT audio.title, audio.id FROM audio INNER JOIN audiojinglepkgs ON audio.id = audiojinglepkgs.audioid WHERE audiojinglepkgs.jinglepkgid = {$jinglepkgID} ORDER BY audio.title";
     $jingles = $db->getAll($sql);
     $this->assign('access_playlist', AuthUtil::getDetailedUserrealmAccess(array(3, 21, 33), $userID));
     $this->assign('Admin', AuthUtil::getDetailedUserrealmAccess(array(1), $userID));
     $this->assign('jinglepkg', $jinglepkg);
     $this->assign('jingles', $jingles);
 }
 protected function setupTemplate()
 {
     global $cfg;
     parent::setupTemplate();
     $db = Database::getInstance($cfg['DPS']['dsn']);
     $count_query = "SELECT count(audio.id) \n\t\tFROM audio \n\t\tWHERE audio.flagged='t'";
     $flaggedNum = $db->getOne($count_query);
     $query = "SELECT DISTINCT audio.title AS title, audio.id AS id \n\t\tFROM audio \n\t\tWHERE audio.flagged='t'";
     $flaggedResult = $db->getAll($query);
     $i = 0;
     foreach ($flaggedResult as $key => &$track) {
         $sql = "SELECT DISTINCT artists.name AS name \n\t\t\tFROM artists, audioartists \n\t\t\tWHERE audioartists.audioid = " . $track['id'] . " \n\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'], " & ");
         $track['searchNumber'] = $i;
         $i++;
     }
     $count_query = "SELECT count(audio.id) \n\t\tFROM audio \n\t\tWHERE audio.censor='t'";
     $censoredNum = $db->getOne($count_query);
     $query = "SELECT DISTINCT audio.title AS title, audio.id AS id \n\t\tFROM audio \n\t\tWHERE audio.censor='t'";
     $censoredResult = $db->getAll($query);
     $i = 0;
     foreach ($censoredResult as $key => &$track) {
         $sql = "SELECT DISTINCT artists.name AS name \n\t\t\tFROM artists, audioartists \n\t\t\tWHERE audioartists.audioid = " . $track['id'] . " \n\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'], " & ");
         $track['searchNumber'] = $i;
         $i++;
     }
     $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('Admin', AuthUtil::getDetailedUserrealmAccess(array(1), $userID));
     $this->assign('flaggedTracks', $flaggedResult);
     $this->assign('censoredTracks', $censoredResult);
     $this->assign('flagNum', $flaggedNum);
     $this->assign('censorNum', $censoredNum);
 }
 public function send()
 {
     $mail = $this;
     $data = $mail->data;
     $auth = $mail->auth;
     AuthUtil::refresh($auth);
     $user_mail = AuthUtil::getTblUserUserMail($auth);
     $from_mail = self::FROM_ADDRESS;
     $subject = '[' . SERVICE_NAME . ']' . __('Inquiry Confirmation');
     $mailCtp = self::MAIL_CTP;
     $layoutCtp = self::LAYOUT_CTP;
     $email = $mail->getCakeEmail();
     $email->from($from_mail);
     $email->to($user_mail);
     $email->subject($subject);
     $email->emailFormat('text');
     $email->template($mailCtp, $layoutCtp);
     $email->viewVars(compact('data', 'auth'));
     return $email->send();
 }
 protected function setupTemplate()
 {
     global $cfg;
     parent::setupTemplate();
     $db = Database::getInstance($cfg['DPS']['dsn']);
     $sql = "SELECT\n                    playlists.id, playlists.name, count(audioplaylists.id) AS count\n                FROM\n                    playlists\n                LEFT OUTER JOIN\n                    audioplaylists\n                ON\n                    playlists.id = audioplaylists.playlistid\n                GROUP BY\n                    playlists.id, playlists.name\n                ORDER BY\n                    playlists.name";
     $playlists = $db->getAll($sql);
     $playlist = null;
     $playlistID = $this->fieldData['dpsPlaylistID'];
     if ($playlistID != '') {
         $sql = "SELECT * FROM playlists WHERE id = {$playlistID}";
         $playlist = $db->getRow($sql);
     }
     $auth = Auth::getInstance();
     $userID = $auth->getUserID();
     $this->assign('Admin', AuthUtil::getDetailedUserrealmAccess(array(1), $userID));
     $this->assign('studioAccess', AuthUtil::getDetailedUserrealmAccess(array(3, 21, 33), $userID));
     $this->assign('playlists', $playlists);
     $this->assign('playlist', $playlist);
     $this->assign('Action', $this->fieldData['dpsAction']);
 }
 public function send()
 {
     $mail = $this;
     $data = $mail->data;
     $auth = $mail->auth;
     $adminMails = $mail->adminMails;
     $dataTblSellGeneralCar = $this->dataTblSellGeneralCar;
     AuthUtil::refresh($auth);
     $from_mail = self::FROM_ADDRESS;
     $subject = '[' . SERVICE_NAME . ']' . __('Car Sell Inquiry');
     $mailCtp = self::MAIL_CTP;
     $layoutCtp = self::LAYOUT_CTP;
     $email = $mail->getCakeEmail();
     $email->from($from_mail);
     $email->to($adminMails);
     $email->subject($subject);
     $email->emailFormat('text');
     $email->template($mailCtp, $layoutCtp);
     $email->viewVars(compact('data', 'auth', 'dataTblSellGeneralCar'));
     return $email->send();
 }
 protected function setupTemplate()
 {
     global $cfg;
     parent::setupTemplate();
     $db = Database::getInstance($cfg['DPS']['dsn']);
     $auth = Auth::getInstance();
     $userID = $auth->getUserID();
     $date = time();
     $show_query = "SELECT DISTINCT showplans.*, v_tree_showplan.permissions \n\t\t\tFROM showplans, v_tree_showplan \n\t\t\tWHERE showplans.id = v_tree_showplan.id AND \n\t\t\t\tv_tree_showplan.userid = {$userID} AND \n\t\t\t\tshowplans.showdate >= " . $date . " AND \n\t\t\t\tv_tree_showplan.permissions & B'" . $cfg['DPS']['fileR'] . "' = '" . $cfg['DPS']['fileR'] . "' \n\t\t\tORDER BY name asc";
     $partShows = $db->getAll($show_query);
     $show_query = "SELECT DISTINCT showplans.*, v_tree_showplan.permissions \n\t\t\tFROM showplans, v_tree_showplan \n\t\t\tWHERE showplans.id = v_tree_showplan.id AND \n\t\t\t\tv_tree_showplan.userid = {$userID} AND \n\t\t\t\tshowplans.showdate < " . $date . " AND \n\t\t\t\tv_tree_showplan.permissions & B'" . $cfg['DPS']['fileR'] . "' = '" . $cfg['DPS']['fileR'] . "' \n\t\t\tORDER BY name asc";
     $doneShows = $db->getAll($show_query);
     foreach ($partShows as &$show) {
         $show['niceAirDate'] = date("d/m/y", $show['showdate']);
         $show['niceAirTime'] = date("H:i", $show['showdate']);
         $show['niceCreateDate'] = date("d/m/y", $show['creationdate']);
         $show['niceCreateTime'] = date("H:i", $show['creationdate']);
         $show['text'] = $show['name'] . " - " . $show['niceAirDate'] . " - " . $show['niceAirTime'] . " (" . AuthUtil::getUsername($show['userid']) . ")";
         $sql = "SELECT BIT_OR(v_tree_dir.permissions) \n\t\t\t\tFROM v_tree_showplan, v_tree_dir \n\t\t\t\tWHERE v_tree_showplan.id = {$show['id']}\n\t\t\t\t\tAND v_tree_showplan.parent = v_tree_dir.id\n\t\t\t\t\tAND v_tree_dir.userid = {$userID}";
         $show['parentperm'] = $db->getOne($sql);
     }
     foreach ($doneShows as &$show) {
         $show['niceAirDate'] = date("d/m/y", $show['showdate']);
         $show['niceAirTime'] = date("H:i", $show['showdate']);
         $show['niceCreateDate'] = date("d/m/y", $show['creationdate']);
         $show['niceCreateTime'] = date("H:i", $show['creationdate']);
         $show['text'] = $show['name'] . " - " . $show['niceAirDate'] . " - " . $show['niceAirTime'] . " (" . AuthUtil::getUsername($show['userid']) . ")";
         $sql = "SELECT BIT_OR(v_tree_dir.permissions) \n\t\t\t\tFROM v_tree_showplan, v_tree_dir \n\t\t\t\tWHERE v_tree_showplan.id = {$show['id']}\n\t\t\t\t\tAND v_tree_showplan.parent = v_tree_dir.id\n\t\t\t\t\tAND v_tree_dir.userid = {$userID}";
         $show['parentperm'] = $db->getOne($sql);
     }
     $pShowCount = count($partShows);
     $dShowCount = count($doneShows);
     $this->assign('Admin', AuthUtil::getDetailedUserrealmAccess(array(1), $userID));
     $this->assign('partShows', $partShows);
     $this->assign('pShowCount', $pShowCount);
     $this->assign('doneShows', $doneShows);
     $this->assign('dShowCount', $dShowCount);
     $this->assign('deleteID', $this->fieldData['deleteID']);
 }
 public function send()
 {
     $mail = $this;
     $data = $mail->data;
     $auth = $mail->auth;
     $tblUser = $mail->TblUser;
     AuthUtil::refresh($auth);
     $title = Hash::get($data, 'UserContact.title');
     $from_mail = self::FROM_ADDRESS;
     $admin_mail = self::getAdminMail($tblUser);
     $subject = '[' . SERVICE_NAME . '(' . __('User Contact') . ')]' . $title;
     $mailCtp = self::MAIL_CTP;
     $layoutCtp = self::LAYOUT_CTP;
     $email = $mail->getCakeEmail();
     $email->from($from_mail);
     $email->to($admin_mail);
     $email->subject($subject);
     $email->emailFormat('text');
     $email->template($mailCtp, $layoutCtp);
     $email->viewVars(compact('data', 'auth'));
     return $email->send();
 }
 protected function processValid()
 {
     //Load class variable realmToEdit
     if (isset($this->fieldData['realmToEdit'])) {
         $this->realmToEdit = $this->fieldData['realmToEdit'];
         //The is_numeric call protects against sql injection on this variable
         if (!is_numeric($this->fieldData['realmToEdit'])) {
             $badrid = $this->fieldData['realmToEdit'];
             throw new LoggedException("An invalid realm id was passed ({$badrid})", 0, self::module, 'error');
         }
     }
     if ($this->formName == 'addRealmDetailsForm' || $this->formName == 'modifyRealmDetailsForm') {
         //Save the details if the detailsForm is submitted
         if (!isset($this->fieldData['realmToEdit']) || $this->fieldData['realmToEdit'] == "") {
             AuthUtil::addRealm($this->fieldData['parentID'], $this->fieldData['name'], $this->fieldData);
             $this->fieldData['newRealmID'] = $this->realmToEdit;
         } else {
             AuthUtil::modifyRealm($this->realmToEdit, $this->fieldData);
         }
     } elseif ($this->formName == 'realmDeleteForm') {
         AuthUtil::deleteRealm($this->fieldData['realmToEdit']);
     }
 }
 protected function setupTemplate()
 {
     global $cfg;
     parent::setupTemplate();
     $db = Database::getInstance($cfg['DPS']['dsn']);
     $auth = Auth::getInstance();
     $userID = $auth->getUserID();
     $date = time();
     $script_query = "SELECT scripts.*, v_tree_script.permissions\n\t\t\t\tFROM v_tree_script, scripts\n\t\t\t\tWHERE v_tree_script.userid = {$userID}\n\t\t\t\t\tAND v_tree_script.id = scripts.id\n\t\t\t\t\tAND v_tree_script.permissions & B'{$cfg['DPS']['fileR']}' = '{$cfg['DPS']['fileR']}'\n\t\t\tORDER BY scripts.name asc";
     $scripts = $db->getAll($script_query);
     $scriptCount = count($scripts);
     foreach ($scripts as &$script) {
         $script['niceCreateDate'] = date("d/m/y", $script['creationdate']);
         $script['niceCreateTime'] = date("g a", $script['creationdate']);
         $script['text'] = $script['name'] . " - " . $script['niceCreateDate'] . " - " . $script['niceCreateTime'] . " (" . AuthUtil::getUsername($script['userid']) . ")";
         $sql = "SELECT BIT_OR(v_tree_dir.permissions) \n\t\t\t\tFROM v_tree_script, v_tree_dir \n\t\t\t\tWHERE v_tree_script.id = {$script['id']}\n\t\t\t\t\tAND v_tree_script.parent = v_tree_dir.id\n\t\t\t\t\tAND v_tree_dir.userid = {$userID}";
         $script['parentperm'] = $db->getOne($sql);
     }
     $this->assign('Admin', AuthUtil::getDetailedUserrealmAccess(array(1), $userID));
     $this->assign('scripts', $scripts);
     $this->assign('scriptCount', $scriptCount);
     $this->assign('deleteID', $this->fieldData['deleteID']);
 }
 protected function processValid()
 {
     global $cfg;
     $auth = Auth::getInstance();
     //If the fwtid (forward template id) variable is set, then set the
     //templateID to that requested as long as the user has permission
     BasicLogger::logMessage("Checking access to requested template", 'debug');
     if (isset($this->fieldData['fwdtid']) && $this->fieldData['fwdtid'] != '' && AuthUtil::templateAccessAllowed($this->fieldData['fwdtid'], $auth->getUserID())) {
         BasicLogger::logMessage("Access granted, forwarding user to {$this->fieldData['fwdtid']}", 'debug');
         MVCUtils::redirect($this->fieldData['fwdtid']);
         //If the fwtid (forward template id) variable is not set, then set the
         //templateID to that default as long as the user has permission
     } elseif (!(isset($this->fieldData['fwdtid']) && $this->fieldData['fwdtid'] == '') && AuthUtil::templateAccessAllowed(MVCUtils::getTemplateID($cfg['smarty']['defaultTemplate']), $auth->getUserID())) {
         BasicLogger::logMessage("Access granted, forwarding user to {$cfg['smarty']['defaultTemplate']}", 'debug');
         MVCUtils::redirect(MVCUtils::getTemplateID($cfg['smarty']['defaultTemplate']));
         //If all the above fails, show the user permission denied
     } else {
         BasicLogger::logMessage("Access denied", 'debug');
         MVCUtils::redirect(MVCUtils::getTemplateID($cfg['Auth']['permissionErrorTemplate']));
     }
     /*//If the fwtid (forward template id) variable is set, then set the 
     		//templateID to that requested as long as the user is allowed access.
     		if(isset($this->fieldData['fwdtid']) && 
     		 $this->fieldData['fwdtid'] != '' && 
     		 AuthUtil::templateAccessAllowed($this->fieldData['fwdtid'], $auth->getUserID())){
     		 	
     			$this->templateID = $this->fieldData['fwdtid'];
     			
     		//If now fwtid has not been set, then forward to the default template
     		//as long as the user is allowed access
     		}elseif((!isset($this->fieldData['fwdtid']) || 
     		 $this->fieldData['fwdtid'] == '') &&
     		 AuthUtil::templateAccessAllowed(MVCUtils::getTemplateID($cfg['smarty']['defaultTemplate']), $auth->getUserID())){
     		 	
     			$this->templateID = MVCUtils::getTemplateID($cfg['smarty']['defaultTemplate']);
     		}*/
 }
 protected function setupTemplate()
 {
     global $cfg;
     parent::setupTemplate();
     // user awsets
     $db = Database::getInstance($cfg['DPS']['dsn']);
     $auth = Auth::getInstance();
     $userID = $auth->getUserID();
     $loc = 1;
     $sql = "SELECT usersconfigs.val FROM configs, usersconfigs\n\t\t\tWHERE configs.id = usersconfigs.configid\n\t\t\t\tAND configs.name = 'default_aw_set'\n\t\t\t\tAND usersconfigs.userid = " . $userID;
     $userset = $db->getOne($sql);
     $sql = "SELECT val FROM configuration \n\t\t\tWHERE location = {$loc}\n\t\t\t\tAND parameter='station_aw_set'";
     $stationset = $db->getOne($sql);
     if ($stationset != '') {
         $sql = "SELECT aw_sets.id as id, aw_sets.name as name,\n\t\t\t\t\taw_sets.description as desc\n\t\t\t\tFROM aw_sets\n\t\t\t\tWHERE id = {$stationset}";
         $sawset = $db->getRow($sql);
     } else {
         $sawset = "None";
     }
     $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 = {$userID} \n\t\t\t\tAND v_tree_aw_sets.permissions & B'" . $cfg['DPS']['fileR'] . "' = '" . $cfg['DPS']['fileR'] . "'";
     $awsets = $db->getAll($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 = {$userID}";
         $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('studioAccess', AuthUtil::getDetailedUserrealmAccess(array(3, 21, 35), $userID));
     $this->assign('awsets', $awsets);
     $this->assign('stationawset', $sawset);
 }
 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
     $query = "SELECT track_title, track_artist\n\t\t\tFROM log\n\t\t\tWHERE location = 0\n\t\t\tORDER BY datetime DESC LIMIT 1";
     $suePlayingNow = $db->getAll($query);
     foreach ($suePlayingNow as $key => &$track) {
         $track['artist'] = $track['track_artist'];
         $track['title'] = $track['track_title'];
     }
     //Sue playing 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 LIMIT 1";
     $suePlayingNext = $db->getAll($query);
     foreach ($suePlayingNext 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\tAND audioartists.artistid = artists.id";
         $artists = $db->getAll($sql);
         foreach ($artists as $artist) {
             $track['artist'] = $track['artist'] . $artist['name'] . " & ";
         }
         $track['artist'] = rtrim($track['artist'], " & ");
     }
     //Show on now
     putenv("TZ=GB");
     //$current_time = date("Y-m-d H:i:s", time());
     $current_time = time();
     $sql = "SELECT txshows.* FROM txshows , txschedule \n\t\t\tWHERE(txshows.id = txschedule.txshowid \n\t\t\tAND '{$current_time}' > txschedule.starttime \n\t\t\tAND '{$current_time}' <= txschedule.endtime);";
     $showC = $db->getRow($sql);
     if (!$showC) {
         $sql = "SELECT * FROM txshows \n\t\t\t\tWHERE id = " . pg_escape_string($cfg['DPS']['defaultShowID']);
         $showC = $db->getRow($sql);
     }
     //Show on next
     $sql = "SELECT txshows.* FROM txshows, txschedule \n\t\t\tWHERE (txshows.id = txschedule.txshowid \n\t\t\tAND '{$current_time}' < txschedule.starttime) \n\t\t\tORDER BY txschedule.starttime ASC LIMIT 1;";
     $showN = $db->getRow($sql);
     if (!$showN) {
         $sql = "SELECT * FROM txshows \n\t\t\t\tWHERE id = " . pg_escape_string($cfg['DPS']['defaultShowID']);
         $showN = $db->getRow($sql);
     }
     //Show just on
     $sql = "SELECT txshows.* FROM txshows, txschedule \n\t\t\tWHERE(txshows.id = txschedule.txshowid \n\t\t\tAND '{$current_time}' > txschedule.endtime) \n\t\t\tORDER BY txschedule.endtime DESC LIMIT 1;";
     $showL = $db->getRow($sql);
     if (!$showL) {
         $sql = "SELECT * FROM txshows \n\t\t\t\tWHERE id = " . pg_escape_string($cfg['DPS']['defaultShowID']);
         $showL = $db->getRow($sql);
     }
     $auth = Auth::getInstance();
     $userID = $auth->getUserID();
     $sql = "SELECT usersconfigs.val FROM configs, usersconfigs \n\t\t\tWHERE configs.id = usersconfigs.configid \n\t\t\tAND configs.name = 'user_lastlogin'\n\t\t\tAND usersconfigs.userid = " . $userID;
     $userlogin = $db->getOne($sql);
     if (is_null($userlogin)) {
         $userLastLog = "Not available";
     } else {
         $userLastLog = date("d/m/y G:i:s", intval($userlogin));
     }
     $this->assign('Admin', AuthUtil::getDetailedUserrealmAccess(array(1), $userID));
     $this->assign('userLastLogin', $userLastLog);
     $this->assign('storedTracks', $systemTracks);
     $this->assign('lengthOfTracks', $systemLength);
     $this->assign('suePlaylistTracks', $sueTracks);
     $this->assign('suePlaylistLength', $sueLength);
     $this->assign('sueLastTrack', $suePlayingNow[0]);
     $this->assign('sueNextTrack', $suePlayingNext[0]);
     $this->assign('scheduleCurrent', $showC);
     $this->assign('scheduleNext', $showN);
     $this->assign('scheduleLast', $showL);
 }