From d76073357a2b711e15d0945ebecc10336fc83ce3 Mon Sep 17 00:00:00 2001 From: Karl 'vollmerk' Vollmer Date: Tue, 15 Apr 2008 15:05:53 +0000 Subject: remove dead icecast controller --- modules/localplay/icecast.controller.php | 343 ------------------------------- 1 file changed, 343 deletions(-) delete mode 100644 modules/localplay/icecast.controller.php diff --git a/modules/localplay/icecast.controller.php b/modules/localplay/icecast.controller.php deleted file mode 100644 index 9556d173..00000000 --- a/modules/localplay/icecast.controller.php +++ /dev/null @@ -1,343 +0,0 @@ -'tracklist','default'=>'/var/tmp/tracklist.txt','type'=>'string','description'=>'Icecast Tracklist'); - $preferences[] = array('name'=>'basedir','default'=>'/var/tmp','type'=>'string','description'=>'Icecast BaseDir'); - $preferences[] = array('name'=>'config','default'=>'/usr/local/etc/ices.conf','type'=>'string','description'=>'Icecast Config'); - $preferences[] = array('name'=>'command','default'=>'/usr/local/bin/ices','type'=>'string','description'=>'Icecast Command'); - - return $preferences; - - } // preferences - - - /** - * add_songs - * This must take an array of URL's from Ampache - * and then add them to MPD - */ - function add_songs($songs) { - - $filename = conf('localplay_icecast_tracklist'); - //echo "$filename " . _("Opened for writing") . "
\n"; - - /* Open the file for writing */ - if (!$handle = @fopen($filename, "w")) { - debug_event('icecast',"Fopen: $filename Failed",'3'); - return false; - } - - foreach ($songs as $song_id) { - $song = new Song($song_id); - $url = $song->get_url(); - - //echo "$song->file
\n"; - $line = "$song->file\n"; - if (!fwrite($handle, $line)) { - debug_event('icecast',"Fwrite: Unabled to write $line into $filename",'3'); - return false; - } // if write fails - - - } // end foreach - - //echo $filename . " " . _("Closed after write") . "
\n"; - fclose($handle); - - return true; - - } // add_songs - - - /** - * delete_songs - * This must take an array of ID's (as passed by get function) from Ampache - * and delete them from MPD - */ - function delete_songs($songs) { - - /* Default to true */ - $return = true; - - /* This should be an array of UID's as returned by - * the get function so that we can just call the class based - * functions to remove them or if there isn't a uid for - * the songs, then however ya'll have stored them - * in this controller - */ - foreach ($songs as $uid) { - - //if (is_null($this->_icecast->plremove($uid))) { $return = false; } - - } // foreach of songs - - //return $return; - return $false; - - } // delete_songs - - - /** - * play - * This just tells ICES to start playing, it does not - * take any arguments - */ - function play() { - - // get the pid from basedir and reload tracklist information - $pid = conf('localplay_icecast_basedir') . "/ices.pid"; - - $PrevPid = file_get_contents($pid); - - if(($PrevPid !== FALSE) && posix_kill(rtrim($PrevPid),0)) { - //echo "Error: Server is already running with PID: $PrevPid\n"; - - // Causes ices to exit (can be in stop function) - //$restart = "kill -s SIGTERM " . $PrevPid; - // Causes ices to close and reopen the log file and the playlist - $reload = "kill -s SIGHUP " . $PrevPid; - // Causes ices to skip to the next track in the playlist immediately. - $next = "kill -s SIGUSR1 " . $PrevPid; - exec($reload); - exec($next); - //exit(-99); - } else { - //echo "Starting Server...\n"; - - $cmd = conf('localplay_icecast_command') . " -c " . conf('localplay_icecast_config') . " -F " . conf('localplay_icecast_tracklist') . " -B"; - debug_event('icecast',"Exec: $cmd",'5'); - exec($cmd); - - } - - return true; - - } // play - - /** - * stop - * This just tells MPD to stop playing, it does not take - * any arguments - */ - function stop() { - - // get the pid from basedir and reload tracklist information - $pid = conf('localplay_icecast_basedir') . "/ices.pid"; - - $PrevPid = file_get_contents($pid); - - if(($PrevPid !== FALSE) && posix_kill(rtrim($PrevPid),0)) { - // Causes ices to exit (can be in stop function) - $stop = "kill -s SIGTERM " . $PrevPid; - exec($stop); - return true; - } - - return false; - - } // stop - - - /** - * next - * This just tells MPD to skip to the next song - */ - function next() { - - // get the pid from basedir and reload tracklist information - $pid = conf('localplay_icecast_basedir') . "/ices.pid"; - - $PrevPid = file_get_contents($pid); - - if(($PrevPid !== FALSE) && posix_kill(rtrim($PrevPid),0)) { - // Causes ices to exit (can be in stop function) - $next = "kill -s SIGUSR1 " . $PrevPid; - exec($next); - return true; - } - - return false; - - } // next - - /** - * prev - * This just tells MPD to skip to the prev song - */ - - /** - * get_songs - * This functions returns an array containing information about - * The songs that ICES currently has in it's playlist. This must be - * done in a standardized fashion - */ - function get_songs() { - - /* Get the Current Playlist */ - - $source = conf('localplay_icecast_tracklist'); - $playlist = array_map('rtrim',file($source)); - - $i = 1; - - foreach ($playlist as $entry) { - - $data = array(); - - /* Required Elements */ - $data['id'] = $i; - //$data['raw'] = $entry; - - /* Parse out the song ID and then create the song object */ - $sql = "SELECT id FROM song WHERE file LIKE '" . sql_escape($entry) . "'"; - $db_results = mysql_query($sql, dbh()); - $dbdata = mysql_fetch_assoc($db_results); - - $song = new Song($dbdata['id']); - $song->format_song(); - $data['name'] = $song->f_artist . ' - ' . $song->f_title; - //$data['name'] = $song->f_title . ' - ' . $song->f_album . ' - ' . $song->f_artist; - - /* Just incase prevent emtpy names */ - if (!$song->title) { $data['name'] = _('Unknown'); } - - /* Optional Elements */ - $data['link'] = ''; - $data['track'] = $i; - - $results[] = $data; - $i++; - - } // foreach playlist items - - return $results; - - } // get_songs - - /** - * get_status - * This returns bool/int values for features, loop, repeat and any other features - * That this localplay method support - */ - function get_status() { - - /* Construct the Array */ - //$array['state'] = $this->_icecast->state; - //$array['repeat'] = $this->_icecast->repeat; - //$array['random'] = $this->_icecast->random; - - //return $array; - - } // get_status - - /** - * connect - * This functions creates the connection to MPD and returns - * a boolean value for the status, to save time this handle - * is stored in this class - */ - function connect() { - - // ICECAST server checkout - // can be implemented here - // is it running? - // so we can put ICECAST host, port, url - // and check against it... - - return true; - - } // connect - -} //end of AmpacheIcecast - -?> -- cgit