diff options
Diffstat (limited to 'server/ajax.server.php')
-rw-r--r-- | server/ajax.server.php | 586 |
1 files changed, 293 insertions, 293 deletions
diff --git a/server/ajax.server.php b/server/ajax.server.php index 55739b8d..52175876 100644 --- a/server/ajax.server.php +++ b/server/ajax.server.php @@ -1,5 +1,5 @@ <?php -/* vim:set tabstop=8 softtabstop=8 shiftwidth=8 noexpandtab: */ +/* vim:set softtabstop=4 shiftwidth=4 expandtab: */ /** * * LICENSE: GNU General Public License, version 2 (GPLv2) @@ -40,312 +40,312 @@ header("Pragma: no-cache"); $page = isset($_REQUEST['page']) ? $_REQUEST['page'] : null; switch ($page) { - case 'flag': - require_once Config::get('prefix') . '/server/flag.ajax.php'; - exit; - break; - case 'stats': - require_once Config::get('prefix') . '/server/stats.ajax.php'; - exit; - break; - case 'browse': - require_once Config::get('prefix') . '/server/browse.ajax.php'; - exit; - break; - case 'random': - require_once Config::get('prefix') . '/server/random.ajax.php'; - exit; - break; - case 'playlist': - require_once Config::get('prefix') . '/server/playlist.ajax.php'; - exit; - break; - case 'localplay': - require_once Config::get('prefix') . '/server/localplay.ajax.php'; - exit; - break; - case 'tag': - require_once Config::get('prefix') . '/server/tag.ajax.php'; - exit; - break; - case 'stream': - require_once Config::get('prefix') . '/server/stream.ajax.php'; - exit; - break; - case 'song': - require_once Config::get('prefix') . '/server/song.ajax.php'; - exit; - break; - case 'democratic': - require_once Config::get('prefix') . '/server/democratic.ajax.php'; - exit; - break; - case 'index': - require_once Config::get('prefix') . '/server/index.ajax.php'; - exit; - break; - default: - // A taste of compatibility - break; + case 'flag': + require_once Config::get('prefix') . '/server/flag.ajax.php'; + exit; + break; + case 'stats': + require_once Config::get('prefix') . '/server/stats.ajax.php'; + exit; + break; + case 'browse': + require_once Config::get('prefix') . '/server/browse.ajax.php'; + exit; + break; + case 'random': + require_once Config::get('prefix') . '/server/random.ajax.php'; + exit; + break; + case 'playlist': + require_once Config::get('prefix') . '/server/playlist.ajax.php'; + exit; + break; + case 'localplay': + require_once Config::get('prefix') . '/server/localplay.ajax.php'; + exit; + break; + case 'tag': + require_once Config::get('prefix') . '/server/tag.ajax.php'; + exit; + break; + case 'stream': + require_once Config::get('prefix') . '/server/stream.ajax.php'; + exit; + break; + case 'song': + require_once Config::get('prefix') . '/server/song.ajax.php'; + exit; + break; + case 'democratic': + require_once Config::get('prefix') . '/server/democratic.ajax.php'; + exit; + break; + case 'index': + require_once Config::get('prefix') . '/server/index.ajax.php'; + exit; + break; + default: + // A taste of compatibility + break; } // end switch on page switch ($_REQUEST['action']) { - case 'refresh_rightbar': - $results['rightbar'] = UI::ajax_include('rightbar.inc.php'); - break; - /* Controls the editing of objects */ - case 'show_edit_object': + case 'refresh_rightbar': + $results['rightbar'] = UI::ajax_include('rightbar.inc.php'); + break; + /* Controls the editing of objects */ + case 'show_edit_object': - // Set the default required level - $level = '50'; + // Set the default required level + $level = '50'; - switch ($_GET['type']) { - case 'album_row': - $key = 'album_' . $_GET['id']; - $album = new Album($_GET['id']); - $album->format(); - break; - case 'artist_row': - $key = 'artist_' . $_GET['id']; - $artist = new Artist($_GET['id']); - $artist->format(); - break; - case 'song_row': - $key = 'song_' . $_GET['id']; - $song = new Song($_GET['id']); - $song->format(); - break; - case 'live_stream_row': - $key = 'live_stream_' . $_GET['id']; - $radio = new Radio($_GET['id']); - $radio->format(); - break; - case 'playlist_row': - case 'playlist_title': - $key = 'playlist_row_' . $_GET['id']; - $playlist = new Playlist($_GET['id']); - $playlist->format(); - // If the current user is the owner, only user is required - if ($playlist->user == $GLOBALS['user']->id) { - $level = '25'; - } - break; - case 'smartplaylist_row': - case 'smartplaylist_title': - $key = 'playlist_row_' . $_GET['id']; - $playlist = new Search('song', $_GET['id']); - $playlist->format(); - if ($playlist->user == $GLOBALS['user']->id) { - $level = '25'; - } - break; - default: - $key = 'rfc3514'; - echo xml_from_array(array($key=>'0x1')); - exit; - break; - } // end switch on type + switch ($_GET['type']) { + case 'album_row': + $key = 'album_' . $_GET['id']; + $album = new Album($_GET['id']); + $album->format(); + break; + case 'artist_row': + $key = 'artist_' . $_GET['id']; + $artist = new Artist($_GET['id']); + $artist->format(); + break; + case 'song_row': + $key = 'song_' . $_GET['id']; + $song = new Song($_GET['id']); + $song->format(); + break; + case 'live_stream_row': + $key = 'live_stream_' . $_GET['id']; + $radio = new Radio($_GET['id']); + $radio->format(); + break; + case 'playlist_row': + case 'playlist_title': + $key = 'playlist_row_' . $_GET['id']; + $playlist = new Playlist($_GET['id']); + $playlist->format(); + // If the current user is the owner, only user is required + if ($playlist->user == $GLOBALS['user']->id) { + $level = '25'; + } + break; + case 'smartplaylist_row': + case 'smartplaylist_title': + $key = 'playlist_row_' . $_GET['id']; + $playlist = new Search('song', $_GET['id']); + $playlist->format(); + if ($playlist->user == $GLOBALS['user']->id) { + $level = '25'; + } + break; + default: + $key = 'rfc3514'; + echo xml_from_array(array($key=>'0x1')); + exit; + break; + } // end switch on type - // Make sure they got them rights - if (!Access::check('interface',$level)) { - $results['rfc3514'] = '0x1'; - break; - } + // Make sure they got them rights + if (!Access::check('interface',$level)) { + $results['rfc3514'] = '0x1'; + break; + } - ob_start(); - require Config::get('prefix') . '/templates/show_edit_' . $_GET['type'] . '.inc.php'; - $results[$key] = ob_get_contents(); - ob_end_clean(); - break; - case 'edit_object': + ob_start(); + require Config::get('prefix') . '/templates/show_edit_' . $_GET['type'] . '.inc.php'; + $results[$key] = ob_get_contents(); + ob_end_clean(); + break; + case 'edit_object': - $level = '50'; + $level = '50'; - if ($_POST['type'] == 'playlist_row' || $_POST['type'] == 'playlist_title') { - $playlist = new Playlist($_POST['id']); - if ($GLOBALS['user']->id == $playlist->user) { - $level = '25'; - } - } - if ($_POST['type'] == 'smartplaylist_row' || - $_POST['type'] == 'smartplaylist_title') { - $playlist = new Search('song', $_POST['id']); - if ($GLOBALS['user']->id == $playlist->user) { - $level = '25'; - } - } + if ($_POST['type'] == 'playlist_row' || $_POST['type'] == 'playlist_title') { + $playlist = new Playlist($_POST['id']); + if ($GLOBALS['user']->id == $playlist->user) { + $level = '25'; + } + } + if ($_POST['type'] == 'smartplaylist_row' || + $_POST['type'] == 'smartplaylist_title') { + $playlist = new Search('song', $_POST['id']); + if ($GLOBALS['user']->id == $playlist->user) { + $level = '25'; + } + } - // Make sure we've got them rights - if (!Access::check('interface',$level) || Config::get('demo_mode')) { - $results['rfc3514'] = '0x1'; - break; - } + // Make sure we've got them rights + if (!Access::check('interface',$level) || Config::get('demo_mode')) { + $results['rfc3514'] = '0x1'; + break; + } - switch ($_POST['type']) { - case 'album_row': - $key = 'album_' . $_POST['id']; - $album = new Album($_POST['id']); - $songs = $album->get_songs(); - $new_id = $album->update($_POST); - if ($new_id != $_POST['id']) { - $album = new Album($new_id); - foreach ($songs as $song_id) { - Flag::add($song_id,'song','retag','Inline Album Update'); - } - } - $album->format(); - break; - case 'artist_row': - $key = 'artist_' . $_POST['id']; - $artist = new Artist($_POST['id']); - $songs = $artist->get_songs(); - $new_id = $artist->update($_POST); - if ($new_id != $_POST['id']) { - $artist = new Artist($new_id); - foreach ($songs as $song_id) { - Flag::add($song_id,'song','retag','Inline Artist Update'); - } - } - $artist->format(); - break; - case 'song_row': - $key = 'song_' . $_POST['id']; - $song = new Song($_POST['id']); - Flag::add($song->id,'song','retag','Inline Single Song Update'); - $song->update($_POST); - $song->format(); - break; - case 'playlist_row': - case 'playlist_title': - $key = 'playlist_row_' . $_POST['id']; - $playlist->update($_POST); - $playlist->format(); - $count = $playlist->get_song_count(); - break; - case 'smartplaylist_row': - case 'smartplaylist_title': - $key = 'playlist_row_' . $_POST['id']; - $playlist->name = $_POST['name']; - $playlist->type = $_POST['pl_type']; - $playlist->update(); - $playlist->format(); - break; - case 'live_stream_row': - $key = 'live_stream_' . $_POST['id']; - Radio::update($_POST); - $radio = new Radio($_POST['id']); - $radio->format(); - break; - default: - $key = 'rfc3514'; - echo xml_from_array(array($key=>'0x1')); - exit; - break; - } // end switch on type + switch ($_POST['type']) { + case 'album_row': + $key = 'album_' . $_POST['id']; + $album = new Album($_POST['id']); + $songs = $album->get_songs(); + $new_id = $album->update($_POST); + if ($new_id != $_POST['id']) { + $album = new Album($new_id); + foreach ($songs as $song_id) { + Flag::add($song_id,'song','retag','Inline Album Update'); + } + } + $album->format(); + break; + case 'artist_row': + $key = 'artist_' . $_POST['id']; + $artist = new Artist($_POST['id']); + $songs = $artist->get_songs(); + $new_id = $artist->update($_POST); + if ($new_id != $_POST['id']) { + $artist = new Artist($new_id); + foreach ($songs as $song_id) { + Flag::add($song_id,'song','retag','Inline Artist Update'); + } + } + $artist->format(); + break; + case 'song_row': + $key = 'song_' . $_POST['id']; + $song = new Song($_POST['id']); + Flag::add($song->id,'song','retag','Inline Single Song Update'); + $song->update($_POST); + $song->format(); + break; + case 'playlist_row': + case 'playlist_title': + $key = 'playlist_row_' . $_POST['id']; + $playlist->update($_POST); + $playlist->format(); + $count = $playlist->get_song_count(); + break; + case 'smartplaylist_row': + case 'smartplaylist_title': + $key = 'playlist_row_' . $_POST['id']; + $playlist->name = $_POST['name']; + $playlist->type = $_POST['pl_type']; + $playlist->update(); + $playlist->format(); + break; + case 'live_stream_row': + $key = 'live_stream_' . $_POST['id']; + Radio::update($_POST); + $radio = new Radio($_POST['id']); + $radio->format(); + break; + default: + $key = 'rfc3514'; + echo xml_from_array(array($key=>'0x1')); + exit; + break; + } // end switch on type - ob_start(); - require Config::get('prefix') . '/templates/show_' . $_POST['type'] . '.inc.php'; - $results[$key] = ob_get_contents(); - ob_end_clean(); - break; - case 'current_playlist': - switch ($_REQUEST['type']) { - case 'delete': - $GLOBALS['user']->playlist->delete_track($_REQUEST['id']); - break; - } // end switch + ob_start(); + require Config::get('prefix') . '/templates/show_' . $_POST['type'] . '.inc.php'; + $results[$key] = ob_get_contents(); + ob_end_clean(); + break; + case 'current_playlist': + switch ($_REQUEST['type']) { + case 'delete': + $GLOBALS['user']->playlist->delete_track($_REQUEST['id']); + break; + } // end switch - $results['rightbar'] = UI::ajax_include('rightbar.inc.php'); - break; - // Handle the users basketcases... - case 'basket': - switch ($_REQUEST['type']) { - case 'album': - case 'artist': - case 'tag': - $object = new $_REQUEST['type']($_REQUEST['id']); - $songs = $object->get_songs(); - foreach ($songs as $song_id) { - $GLOBALS['user']->playlist->add_object($song_id,'song'); - } // end foreach - break; - case 'browse_set': - $browse = new Browse($_REQUEST['browse_id']); - $objects = $browse->get_saved(); - foreach ($objects as $object_id) { - $GLOBALS['user']->playlist->add_object($object_id,'song'); - } - break; - case 'album_random': - case 'artist_random': - case 'tag_random': - $data = explode('_',$_REQUEST['type']); - $type = $data['0']; - $object = new $type($_REQUEST['id']); - $songs = $object->get_random_songs(); - foreach ($songs as $song_id) { - $GLOBALS['user']->playlist->add_object($song_id,'song'); - } - break; - case 'playlist': - $playlist = new Playlist($_REQUEST['id']); - $items = $playlist->get_items(); - foreach ($items as $item) { - $GLOBALS['user']->playlist->add_object($item['object_id'], $item['object_type']); - } - break; - case 'playlist_random': - $playlist = new Playlist($_REQUEST['id']); - $items = $playlist->get_random_items(); - foreach ($items as $item) { - $GLOBALS['user']->playlist->add_object($item['object_id'], $item['object_type']); - } - break; - case 'smartplaylist': - $playlist = new Search('song', $_REQUEST['id']); - $items = $playlist->get_items(); - foreach ($items as $item) { - $GLOBALS['user']->playlist->add_object($item['object_id'],$item['object_type']); - } - break; - case 'clear_all': - $GLOBALS['user']->playlist->clear(); - break; - case 'live_stream': - $object = new Radio($_REQUEST['id']); - // Confirm its a valid ID - if ($object->name) { - $GLOBALS['user']->playlist->add_object($object->id,'radio'); - } - break; - case 'dynamic': - $random_id = Random::get_type_id($_REQUEST['random_type']); - $GLOBALS['user']->playlist->add_object($random_id,'random'); - break; - case 'video': - $GLOBALS['user']->playlist->add_object($_REQUEST['id'],'video'); - break; - default: - case 'song': - $GLOBALS['user']->playlist->add_object($_REQUEST['id'],'song'); - break; - } // end switch + $results['rightbar'] = UI::ajax_include('rightbar.inc.php'); + break; + // Handle the users basketcases... + case 'basket': + switch ($_REQUEST['type']) { + case 'album': + case 'artist': + case 'tag': + $object = new $_REQUEST['type']($_REQUEST['id']); + $songs = $object->get_songs(); + foreach ($songs as $song_id) { + $GLOBALS['user']->playlist->add_object($song_id,'song'); + } // end foreach + break; + case 'browse_set': + $browse = new Browse($_REQUEST['browse_id']); + $objects = $browse->get_saved(); + foreach ($objects as $object_id) { + $GLOBALS['user']->playlist->add_object($object_id,'song'); + } + break; + case 'album_random': + case 'artist_random': + case 'tag_random': + $data = explode('_',$_REQUEST['type']); + $type = $data['0']; + $object = new $type($_REQUEST['id']); + $songs = $object->get_random_songs(); + foreach ($songs as $song_id) { + $GLOBALS['user']->playlist->add_object($song_id,'song'); + } + break; + case 'playlist': + $playlist = new Playlist($_REQUEST['id']); + $items = $playlist->get_items(); + foreach ($items as $item) { + $GLOBALS['user']->playlist->add_object($item['object_id'], $item['object_type']); + } + break; + case 'playlist_random': + $playlist = new Playlist($_REQUEST['id']); + $items = $playlist->get_random_items(); + foreach ($items as $item) { + $GLOBALS['user']->playlist->add_object($item['object_id'], $item['object_type']); + } + break; + case 'smartplaylist': + $playlist = new Search('song', $_REQUEST['id']); + $items = $playlist->get_items(); + foreach ($items as $item) { + $GLOBALS['user']->playlist->add_object($item['object_id'],$item['object_type']); + } + break; + case 'clear_all': + $GLOBALS['user']->playlist->clear(); + break; + case 'live_stream': + $object = new Radio($_REQUEST['id']); + // Confirm its a valid ID + if ($object->name) { + $GLOBALS['user']->playlist->add_object($object->id,'radio'); + } + break; + case 'dynamic': + $random_id = Random::get_type_id($_REQUEST['random_type']); + $GLOBALS['user']->playlist->add_object($random_id,'random'); + break; + case 'video': + $GLOBALS['user']->playlist->add_object($_REQUEST['id'],'video'); + break; + default: + case 'song': + $GLOBALS['user']->playlist->add_object($_REQUEST['id'],'song'); + break; + } // end switch - $results['rightbar'] = UI::ajax_include('rightbar.inc.php'); - break; - /* Setting ratings */ - case 'set_rating': - ob_start(); - $rating = new Rating($_GET['object_id'], $_GET['rating_type']); - $rating->set_rating($_GET['rating']); - Rating::show($_GET['object_id'], $_GET['rating_type']); - $key = "rating_" . $_GET['object_id'] . "_" . $_GET['rating_type']; - $results[$key] = ob_get_contents(); - ob_end_clean(); - break; - default: - $results['rfc3514'] = '0x1'; - break; + $results['rightbar'] = UI::ajax_include('rightbar.inc.php'); + break; + /* Setting ratings */ + case 'set_rating': + ob_start(); + $rating = new Rating($_GET['object_id'], $_GET['rating_type']); + $rating->set_rating($_GET['rating']); + Rating::show($_GET['object_id'], $_GET['rating_type']); + $key = "rating_" . $_GET['object_id'] . "_" . $_GET['rating_type']; + $results[$key] = ob_get_contents(); + ob_end_clean(); + break; + default: + $results['rfc3514'] = '0x1'; + break; } // end switch action // Go ahead and do the echo |