Пример #1
0
 /**
  * (Web service method) Submit track start event
  * @param  mixed[] $args time_utc (YYYY-MM-DD); stream_title
  * @return mixed[] status; error_message; output (what to announce in IRC chat room)
  */
 private function web_track_start($args)
 {
     $time_utc = $args['time_utc'];
     // YYYY-MM-DD HH:MM:SS
     $stream_title = $args['stream_title'];
     $track_id = Track::create_or_get_id($stream_title);
     Play::new_play($time_utc, $track_id, $stream_title);
     Track::update_play_count($track_id);
     file_put_contents(PLUGIN_DIR . 'now_playing.txt', $stream_title);
     $six = Play::recent_six();
     $out = array();
     $out[] = "<p><em>Now Playing:</em> " . esc_html($stream_title) . "</p>\n";
     $out[] = "<p>Previously...<br />";
     $i = 0;
     foreach ($six as $play) {
         if ($i > 0) {
             //$out[] = date( 'H:i:s', $play->time_utc ) . ' UTC: ' .
             $out[] = $play->time_utc . ' UTC: ' . esc_html($play->stream_title) . "<br />\n";
         }
         $i++;
     }
     $out[] = "</p>";
     file_put_contents(PLUGIN_DIR . 'recent_tracks.html', implode($out));
     $out = array();
     $i = 0;
     foreach ($six as $play) {
         if ($i > 0) {
             $out[] = date('c', strtotime($play->time_utc . " UTC")) . "\t" . $play->stream_title;
         }
         $i++;
     }
     file_put_contents(PLUGIN_DIR . 'recent_tracks.txt', implode("\n", $out));
     return array('status' => 'ok', 'error_message' => '', 'output' => str_ireplace('${stream_title}', $args['stream_title'], Options::get_instance()->txt_now_playing));
 }