Demogogue, day... what day is it?
Today was epic.. lets take a gander at the git log (not nearly enough commits today).
Its a bad excuse, but I was super focused on knocking out the media player today. I employed the use of SoundManager2 which is a really nice clean interface for getting exactly what you want from streaming audio. So far I am just getting position (time elapsed in millis) and duration (also in millis) to calculate a progress bar. It also has handy callbacks like whilebuffering, onfinish, whileplaying, etc that help me keep my views and models responsive to the state of the player. I set the player as a globally accessable object since it is meant to be a ubiquitous feature of the app, no matter what page you're browsing. It gets initialized by the router and added to the page, and after that it is autonomous, just taking to Demo models and the playbuttons on the demo index item views. Having the player object globally accessible also makes it really easy to reference various methods and variables of the player object from deep within nested object callbacks. Yeeeee.
Some of the fanciest stuff I did today was knocked out in the first try with javascript/css, like the hide/show animation of the player, and the popup volume control. Of course the flipside is lots of time sunk into stupid things like getting jquery-ui to work in my rails app for the tiny volume slider, which I had to completely restyle to make work (missing assets, weird. Would have had to restyle anyway.
My big focus the next two days is trying my damndest to stay off of CSS minutia. I've got a full day of functionality to add tomorrow- comments, comment form, demo show (which will be mostly a show page for the comments). Following this will be playlists. A simple enough object, just a collection of demo ids. But it will require a modal to choose whether to add to an existing playlist or create a new one. This will tie in nicely to adding the button row to the demo index view.