def serve(request):

    c = Collection()
    p = Playlist()
    player = Player()

    doc = CGI.httpHeaders()
    doc += CGI.htmlHead({"style": ["../playlist.css"]})

    if request.command == "POST":
        form = request.form
        if form.has_key("addSongs"):
            for e in makeList(form.getvalue("song")):
                if e is not None:
                    doc += addSong(p, c, e)
        elif form.has_key("addAlbums"):
            for e in makeList(form.getvalue("album")):
                if e is not None:
                    doc += addAlbum(p, c, e)
        elif form.has_key("clear"):
            p.clear()
        elif form.has_key("clearAndStop"):
            p.clear()
            request.state.stop()
            player.stop()

    f = p.update()
    doc += playlistToHtml(f, p)
    doc += CGI.htmlTail()

    request.serve_string(doc)
def serve(request):

    p = Playlist()
    player = Player()

    doc = CGI.httpHeaders()
    doc += CGI.htmlHead({ 'style':['../playlist.css'] })

    if request.command == "POST":
        form = request.form
        if form.has_key('addSongs'):
            for e in makeList(form.getvalue('song')):
                if e is not None:
                    doc += addSong(p, e)
        elif form.has_key('addAlbums'):
            for e in makeList(form.getvalue('album')):
                if e is not None:
                    doc += addAlbum(p, e)
        elif form.has_key('clear'):
            p.clear()
        elif form.has_key('clearAndStop'):
            p.clear()
            request.state.stop()
            player.stop()

    f = p.update()
    doc += playlistToHtml(f, p)
    doc += CGI.htmlTail()

    request.serve_string(doc)
def main():

    form = cgi.FieldStorage()

    c = Collection()
    p = Playlist()
    player = Player()

    CGI.httpHeaders()

    CGI.htmlHead({ 'style':['../playlist.css'] })
        
    if os.environ['REQUEST_METHOD'] == "POST":
        if form.has_key('addSongs'):
            for e in makeList(form.getvalue('song')):
                if e is not None:
                    addSong(p, c, e)
        elif form.has_key('addAlbums'):
            for e in makeList(form.getvalue('album')):
                if e is not None:
                    addAlbum(p, c, e)
        elif form.has_key('clear'):
            p.clear()
        elif form.has_key('clearAndStop'):
            p.clear()
            player.stop()

    f = p.update()
    playlistToHtml(f, p)
    CGI.htmlTail()