Set up playlist functionality
Normal
General Task
1 year 1 week ago
This site again provides a good example of what we want to accomplish - http://www.gettyimages.com/Music/search
Library
- add tracks to a playlist(s) from the library
Playlist
- rearrange tracks by dragging them up or down in the list.
- also add notes to each song
- rate songs based on your preferences.
- share your playlists via email with one or more colleagues or clients.
- package up and download the playlist as a single file
I've posted this issue in Drupal groups (http://groups.drupal.org/node/145189).


#1
Once of the closest examples of this type of functionality is the Media Gallery which comes with Drupal Gardens. As it seems like this would be a good feature for Drupal Gardens, I posted a question on their forums - http://www.drupalgardens.com/content/add-gallery-individual-video-or-pho...
#2
SoundCloud also provides some great examples of the functionality we're looking for:
Add to Set/Playlist
Add to or create new set/playlist from the track
Create new set/playlist
This is what comes up when you create a new set.
Edit set
#3
Gusaus, Just wanted to let you know I am very excited to see this going on, and will contribute as I can. When you told me about this yesterday, Barry and I were in the midst of discovering we used to live in the same artist's co-op in St. Paul 15 years ago, and I was simultaneously trying to learn how to use Colloquy on an ipad, so it was totally crazy. I really appreciate you letting me in on this, and am very excited about what you're up to.
Thank you again for letting me in on it.
Cheers, Kelly
#4
Thanks Kelly - Building music specific sites and features has definitely been something of interest in the community. Would love your participation. Anything particular you could do?
Cheers!
#5
It's mainly blind experimentation, but I'm getting closer to something that resembles multiple playlists (demo/demo) -
http://drupal7media.sandbox.drupalkata.com/playlists
Still need to implement much of the functionality listed here, but it's a start!
http://drupalkata.com/music/node/1796
#6
What about the possibility of utilizing flag(flag weights + draggable views,flag notes,flag lists) or OG for D7(even use taxonomy groups for site and group admin generated playlists with hierarchy)? I realize that a lot of flag modules need ported to D7 and everything in general is in heavy development, but it's just a thought. I am waiting on the development of the media module a bit more(with the media browser overhaul and views support going on), so I haven't taken a super deep look at it yet(although it's very exciting:) in terms of how it will/can work with other modules(such as og or flag in this instance). Workbench suite also looks awesome too for content/access management and workflow.
If I am off base here, and am throwing in my two cents with lack of info, just let me know:)
#7
forgot to add in, the site fully panels. I build everything with panels, so it's a given for me, I forget to specify:).
#8
Great suggestions - I think all of the modules you suggest we have installed on the sandbox - http://drupal7media.sandbox.drupalkata.com/playlists
At this point the biggest challenge is to provide the easy, obvious way to add tracks to playlists. Any thoughts on how to do this without custom programming?
#9
do you mean adding existing tracks, new ones, both? just want to make sure I understand correctly. I would think OG would be a great way. I have this crazy idea, but I need to take some time to lay things out so I explain properly. Give me a day or so to get my thoughts into some kind of legible form:)
#10
The original issue and subsequent screenshots should still provide a pretty good description (http://drupalkata.com/music/node/1666). We're actually working on something similar for a client so hopefully there will be some progress to report and share.
#11
Hi, sorry for the delay. life has been crazy:). I posted on your gdo issue in regards to using references with corresponding node references. I think that would work great.
For my idea on using groups there are several things blocking it without custom contrib modules for og7. I have a mindmap up if you are interested. If you would like to see it, just email me: gideon@gideon76.com so I can add you as a contributor with your email address. The whole thing is very rough. I know you are busy and the references should work off hand, so no rush or don't feel obligated to look into the og idea I have. I have actually put it on hold as there is no way to currently implement it without a huge amount of help from developers.
Let me know how everything is going:)
Jen
#12
Appreciate it Jen! Feel free to post any idea/files in this space. Rough around the edges is the way we roll!
#14
Playlist functionality is 'generally working' on the following demo site -
http://dev.musiclibrary.gotpantheon.com/
Still working on some issues which we'lll document in this thread.
#15
One current glitch is that newly created playlists (from http://dev.musiclibrary.gotpantheon.com/playlists) do not appear until there are tracks associated with the playlists (see an example - http://screencast.com/t/S2KYPvKVitm).
The problem recently occurred after upgrading views from 7.x-3.0-rc1 to a later version. When updating views we get an error message as described in this issue (http://drupal.org/node/1344350), but why it broke and the fix is not obvious. Possibly there needs to be a little tweak to the hook_views_query_alter in sites/all/modules/custom/mp_custom/views/mp_custom.views.inc (see code - http://pastebin.com/Eq41qDRw).
Any hook_views_query_alter wizards see the problem?
#28
It looks like disabling the nodeaccess module resolved the root of the problem. The new playlists still do not appear (‘create a new playlist’ from the playlist page) until the page is refreshed. It looks like the $form['submit'] happens around line 152 of playlists.inc
A new playlist should appear in the same fashion as it does when adding an existing track to a new playlist. That $form['submit'] I believe happens around line 68 of the same file. Not sure what triggers the ajaxyness there... but that's what we want.
#29
applied to the pushtape context that means:
in this file: https://github.com/discipolo/pushtape_features/blob/7.x-1.x/pushtape_playlists/includes/playlists.inc
the file should be the same only with a different namespace for the functions (mp_custom)
#30
i don't see any of these changes in the file you referenced above. am i missing something?
#31
uncomment lines
from mp_custom/includes/menu.inc lines 127 & 128
even gives feedback!
figured out through http://zroger.com/2009/12/ajax-modal-windows/
#16
After moving / adding a track to a NEW playlist the newly created playlist appears on the top and not in proper order (http://screencast.com/t/gfabJYSQ) -- Looks like the sort needs to be adjusted in mp_custom.playlists.view.inc (see code - http://pastebin.com/Eq41qDRw).
#27
this really isn't a bug. we've been going on the assumption that 'title' is default sort order for playlists, but in looking at other sites (such as soundcloud) playlists are usually sorted by most recent on top. and really this would make the most sense to have new playlists appear on top.
#17
When a playlist is deleted in an expanded state, the associated tracks remain (see http://screencast.com/t/s0bjAgTkBNTr) until the page is refreshed. I think this issue came up after we customized the default delete to something ajaxy. If there's no easy fix, we could put in a hard refresh as that was the default behavior?
#32
add a hard refresh back in using the line
drupal_set_message('Your playlist has been deleted.'); $output[] = ctools_ajax_command_reload();
mp_custom/includes/menu.inc line 178 so that it looks like this
$output[] = ctools_ajax_command_reload();
drupal_set_message('Your playlist has been deleted.');
$output[] = musiclibrary_playlist_inline_command_dismiss();
#18
Couple issues with empty playlist text
#26
the empty text comes from line 73 of views-view-table--playlists.tpl.php (wherever that file currently resides)
apparently we need to add this manually in jquery cuz we cannot make views automagically render the No Data text (it only does so on load)
that said, i have no idea how/where the magical ajax code should go
#19
Moving a track to another playlist and then editing that track (in the new playlist) throws some errors (see http://screencast.com/t/NsgggG5D3).
#20
'download entire playlist' current brings up the following error - http://screencast.com/t/FAOMtIrxlmx
I believe this is cuz the module is using a "Configure Command" block in the phpinfo() that includes '--enable-zip...', meaning that php was compiled with support for the zip functions of php. http://www.php.net/manual/en/zip.installation.php
At this point this feature will not work if the host does not support this. Not the best case scenario.
#21
here is a feature that combines contenttypes track and playlist with stuff from mp_custom.
please test and commit to some git repository so we can fix bugs in code
0.9 is still missing the download_zip stuff
#22
now i want to try http://drupal.org/project/soundcloudfield
#23
please test and if working commit to some repo so we can fix other stuff
#24
Looks like you're still in the process of moving things from the custom modules and theme. Once that's sorted out, we then need to work thru the issues logged above - http://drupalkata.com/music/node/1666#comment-1766
Think you'll be able to handle?
#25
now that i feel i have the existing functionality complete in code i can investigate those issues. (after verifying that everything actually works)