this is still a day or two away from being an
"official" patch, but i wanted to share my progress
so far. plus, i haven't yet set up channels or
icecast, which i'll need to do in order to test and
make sure i haven't broken anything...
CHANGELOG
---------------------------------------------------
wbniv, week of 30 September 2001
---------------------------------------------------
* in request, made "list all albums" the default
[instead of info]
* fixed a few incorrect <td><td> -> <tr><td> in the
perl code
* created link to otto homepage from banner image
TODO: need powered by otto button; could use icon for
now because i
think people would want to put their own banner
graphic up,
but it would still be nice to acknowledge otto in
some way
* made list frame refresh when a new list is created.
in general, frames aren't refreshed when the user
performs an action in
another frame, which is a much bigger issuer and
needs some thought
* add play [all] for lists
* removed trailing ; from sql statements in otto.cgi
and action.cgi
[they're not supposed to be there in embedded sql,
and they can
cause problems]
* needed to chmod a+x `which mkisofs`
* in request mode, moved home button to left of menu
* added "browse cd's" from artist list, which
displays album covers
+ sql: alter table albums add disccover varchar(255);
+ coverart is "data mined" from cdnow and/or google
image search using the bin/findcovers perl script
+ requires mkdir images/disccovers,
images/disccovers/web-cache,
images/disc-covers/src,
images/disc-covers/thumbnails,
with src and thumbnails being world-writeable [or
owned by apache, i guess?]
* home page [queue display] shows album cover for
current playing song, if availabl\e
* kill [current] song if user trashes it
* css -- removed much html formatting code in the
perl code.
using css now, which will allow, to a large degree,
themes
* added "burn cd" option from list display
* preliminary attempt at creating cd's from otto
completed.
much work still needed. in particular,
- check task priorities issues so that burn is ok and
music playback
is uninterrupted [cd is burned correctly, but music
during record is
glitchy--although cd doesn't burn correctly when
using
mkisofs ... | cdrecord ... ] -- at least not only my
pentium pro 200
- split up songlist on multiple cd's if necessary
[reflected in list display]
- cdrw settings issues [don't bother with autodetect
since i'm
putting this in an "embedded" system]
- progrss bar sort of thing, ui design/cleanup, in
general
- error checking, including capturing the output from
mkisofs and
cdrecord and parsing the output text
- cancel
- produce red book audio cd's [using cd record]
-- multiple copies of same track on audio cd [but
lists don't handle this]
- create cd labels
* changed alt tags to title tags [kept, and
duplicated some alt text, too]
because title is the standard tag for tooltips
ottolib.pm:
* moved killcurrentsong() and loadentry() here. not
quiet happy with results, thou\gh
BUGS
* finish css in home [queue list]
* clean up css [both in terms of creating a
nice-looking template as well as restructuring some
of the css id/class selectors, and especially
inheritance]
BUGS - FIXED - NEED TESTING
* browse album display layout [css]
-- having problems with this css layout as all disc
images get placed left-to-right all the way accross
the page [and beyond]. usually a refresh frame or two
will do the trick, but that's hardly the solution
i'm looking for.
* burn cd should use --graft-points to create a
proper hierarchy
TODO
* after selecting a list, the list window should go
to something useful
[say all]. but really, shouldn't the list selection
be a drop down
box [with new list...] at the bottom? or something
like that?
* when selecting a song to add to the queue, and the
only things in
the queue are the randomly-selected songs, kill the
currently
playing song, and start playing the user-requested
song
* browse another otto database, import
songs/albums/lists
- ottos register with mother ship / network together?