summaryrefslogtreecommitdiffstats
path: root/server/xml.server.php
diff options
context:
space:
mode:
authorKarl 'vollmerk' Vollmer <vollmer@ampache.org>2009-02-25 01:52:27 +0000
committerKarl 'vollmerk' Vollmer <vollmer@ampache.org>2009-02-25 01:52:27 +0000
commit211a0c47a6d9b8d1ae0f45d8db6250a4ade1bfc1 (patch)
treeae65c59be4205443486207eb75d97944da383ce8 /server/xml.server.php
parent2a5051b0c1f0c1b95cf2e19a92358c36abc8c852 (diff)
downloadampache-211a0c47a6d9b8d1ae0f45d8db6250a4ade1bfc1.tar.gz
ampache-211a0c47a6d9b8d1ae0f45d8db6250a4ade1bfc1.tar.bz2
ampache-211a0c47a6d9b8d1ae0f45d8db6250a4ade1bfc1.zip
added localplay controls to api in addition to added/updated filters
Diffstat (limited to 'server/xml.server.php')
-rw-r--r--server/xml.server.php41
1 files changed, 28 insertions, 13 deletions
diff --git a/server/xml.server.php b/server/xml.server.php
index b3d4d4a7..a2569765 100644
--- a/server/xml.server.php
+++ b/server/xml.server.php
@@ -111,9 +111,7 @@ switch ($_REQUEST['action']) {
Browse::set_type('artist');
Browse::set_sort('name','ASC');
- if ($_REQUEST['filter']) {
- Browse::set_filter('alpha_match',$_REQUEST['filter']);
- }
+ Api::set_filter('alpha_match',$_REQUEST['filter']);
// Set the offset
xmlData::set_offset($_REQUEST['offset']);
@@ -154,9 +152,7 @@ switch ($_REQUEST['action']) {
Browse::set_type('album');
Browse::set_sort('name','ASC');
- if ($_REQUEST['filter']) {
- Browse::set_filter('alpha_match',$_REQUEST['filter']);
- }
+ Api::set_filter('alpha_match',$_REQUEST['filter']);
$albums = Browse::get_objects();
// Set the offset
@@ -184,10 +180,8 @@ switch ($_REQUEST['action']) {
Browse::reset_filters();
Browse::set_type('genre');
Browse::set_sort('name','ASC');
-
- if ($_REQUEST['filter']) {
- Browse::set_filter('alpha_match',$_REQUEST['filter']);
- }
+
+ Api::set_filter('alpha_match',$_REQUEST['filter']);
$genres = Browse::get_objects();
// Set the offset
@@ -236,10 +230,10 @@ switch ($_REQUEST['action']) {
Browse::reset_filters();
Browse::set_type('song');
Browse::set_sort('title','ASC');
+
+ Api::set_filter('alpha_match',$_REQUEST['filter']);
+ Api::set_filter('add',$_REQUEST['add']);
- if ($_REQUEST['filter']) {
- Browse::set_filter('alpha_match',$_REQUEST['filter']);
- }
$songs = Browse::get_objects();
// Set the offset
@@ -310,6 +304,27 @@ switch ($_REQUEST['action']) {
echo xmlData::songs($results);
break;
+ case 'localplay':
+ // Load their localplay instance
+ $localplay = new Localplay(Config::get('localplay_controller'));
+ $localplay->connect();
+
+ switch ($_REQUEST['command']) {
+ case 'next':
+ case 'prev':
+ case 'play':
+ case 'stop':
+ $result_status = $localplay->$command();
+ $xml_array = array('localplay'=>array('command'=>array($command=>make_bool($result_status))));
+ echo xmlData::build_from_array($xml_array);
+ break;
+ default:
+ // They are doing it wrong
+ echo xmlData::error('40t',_('Invalid Request'));
+ break;
+ } // end switch on command
+
+ break;
default:
ob_end_clean();
echo xmlData::error('405',_('Invalid Request'));