has_access()) { access_denied(); break; } $playlist->add_dyn_song(); $_SESSION['data']['playlist_id'] = $playlist->id; show_playlist($playlist); break; case 'create_playlist': /* Check rights */ if (!$GLOBALS['user']->has_access(25)) { access_denied(); break; } $playlist_name = scrub_in($_REQUEST['playlist_name']); $playlist_type = scrub_in($_REQUEST['type']); $playlist->create($playlist_name,$playlist_type); $_SESSION['data']['playlist_id'] = $playlist->id; show_confirmation(_('Playlist Created'),$playlist_name . ' (' . $playlist_type . ') ' . _(' has been created'),'playlist.php'); break; case 'remove_song': /* Check em for rights */ if (!$playlist->has_access()) { access_denied(); break; } $playlist->remove_songs($_REQUEST['song']); show_playlist($playlist); break; case 'show_playlist': $playlist = new Playlist($_REQUEST['playlist_id']); $playlist->format(); $object_ids = $playlist->get_items(); require_once Config::get('prefix') . '/templates/show_playlist.inc.php'; break; case 'show_import_playlist': show_import_playlist(); break; case 'import_playlist': /* first we rename the file to it's original name before importing. Otherwise the playlist name will have the $_FILES['filename']['tmp_name'] which doesn't look right... */ $dir = dirname($_FILES['filename']['tmp_name']) . "/"; $filename = $dir . basename($_FILES['filename']['name']); move_uploaded_file($_FILES['filename']['tmp_name'], $filename ); $catalog = new Catalog(); $catalog->import_m3u($filename); $url = conf('web_path') . '/playlist.php'; $title = _('Playlist Imported'); $body = basename($_FILES['filename']['name']); show_confirmation($title,$body,$url); break; case 'set_track_numbers': /* Make sure they have permission */ if (!$playlist->has_access()) { access_denied(); break; } $song_ids = scrub_in($_REQUEST['song']); foreach ($song_ids as $song_id) { $track = scrub_in($_REQUEST['tr_' . $song_id]); $changes[] = array('song_id' => $song_id, 'track' => $track); } $playlist->update_track_numbers($changes); show_playlist($playlist); break; case 'prune_empty': /* Make sure they have permission */ if (!$GLOBALS['user']->has_access(100)) { access_denied(); break; } prune_empty_playlists(); $url = conf('web_path') . '/playlist.php'; $title = _('Empty Playlists Deleted'); $body = ''; show_confirmation($title,$body,$url); break; case 'normalize_tracks': $playlist = new Playlist($_REQUEST['playlist_id']); /* Make sure they have permission */ if (!$playlist->has_access()) { access_denied(); break; } /* Normalize the tracks */ $playlist->normalize_tracks(); default: require_once Config::get('prefix') . '/templates/show_playlist.inc.php'; break; } // switch on the action show_footer(); ?>