type == ".flac") { $song->type = ".ogg"; } if ($GLOBALS['user']->prefs['play_type'] == 'downsample') { $ds = $GLOBALS['user']->prefs['sample_rate']; } $song_url = conf('web_path') . "/play/index.php?song=$song_id&uid=" . $_SESSION['userdata']['username'] . "&sid=$sess_id&ds=$ds&name=." . $song->type; if (is_null( $myMpd->PlAdd($song_url) ) ) { $log_line = _("Error") . ": " . _("Could not add") . ": " . $song_url . " : " . $myMpd->errStr; echo "$log_line
\n"; if (conf('debug')) { log_event($GLOBALS['user']->username,'add',$log_line); } } // if it's null } // if we want urls else { $song = new Song( $song_id ); $song_filename = $song->get_rel_path(); if( is_null( $myMpd->PLAdd( $song_filename ) ) ) { $log_line = _("Error") . ": " . _("Could not add") . ": " . $song_filename . " : " . $myMpd->errStr; echo "$log_line
\n"; if (conf('debug')) { log_event($_SESSION['userdata']['username'],'add',$log_line); } } // end if it's null // We still need to count if they use the file method else { $GLOBALS['user']->update_stats( $song_id ); } // end else } // end else not url method } // end foreach } // addToPlaylist /*! @function show_mpd_control @discussion shows the mpd controls */ function show_mpd_control() { $_REQUEST['action'] = 'show_control'; require (conf('prefix').'/amp-mpd.php'); } // show_mpd_control /** * show_mpd_pl * Shows the MPD playlist * @package Local Play * @catagory MPD */ function show_mpd_pl() { $myMpd = init_mpd(); require (conf('prefix').'/templates/show_mpdpl.inc'); } // show_mpd_pl /** * mpd_redirect * Redriect mojo * @package Local Play * @catagory MPD * @param $page is the URL after conf('web_path') . '/' */ function mpd_redirect( $page = 'mpd.php' ) { if (conf('localplay_menu')) { header ("Location: " . conf('web_path') . '/' . $page); } else { header ("Location: " . conf('web_path')); } } // mpd_redirect /** * Init MPD - This is originally from /amp-mpd.php * This initializes MPD if it is the playback method. * It checks to see if a global variable called myMpd is an object * if it's not then it attempt to create one and return it * @package Local Play * @catagory MPD */ function init_mpd() { static $myMpd; if (!conf('allow_mpd_playback')) { return false; } if (!is_object($myMpd)) { $myMpd = new mpd(conf('mpd_host'),conf('mpd_port')); } if (!$myMpd->connected AND is_object($myMpd)) { // Attempt to reconnect $myMpd->Connect(); } if (!$myMpd->connected) { if (conf('debug')) { log_event ($_SESSION['userdata']['username'],' connection_failed ',"Error: unable to connect to ". conf('mpd_host') . " on port " . conf('mpd_port') . " ".$myMpd->errStr); } return false; } return $myMpd; } // function init_mpd() ?>