/**
 * Audio Player Manager
 *
 * Copyright: (c)2007 CK Web Technologies
 * Author:    Chris Knowles <chris.knowles@ckweb.com.au>
 * Version:   $Id: Player.js 20 2007-11-12 07:21:13Z Chris $
 */

var Player = function(app)
{
    this.app = app;
    this.player = $D.id('player');
    this.artist = $D.id('player-artist');
    this.title  = $D.id('player-title');
    
    this.load = function(songlistId, trackId)
    {
        var track = null;
        var songlist = this.app.Songlist.songlists.get(songlistId).songlist;

        if (songlist && songlist != undefined) {
            var songlist = this.app.Songlist.songlists.get(songlistId).songlist;
            var track = songlist[trackId];
            if (track) {
                this.set(track);
                return;
            } else {
                this.fetchTrack(trackId);
                return;
            }   
            
        } else if (trackId != undefined) {
            this.fetchTrack(trackId);
            return;
        }
        this.set();
    };
    
    this.fetchTrack = function(trackId)
    {
        var http = new $H;
        var self = this;
        if (trackId != undefined) {
            url = 'get_track/' + trackId + '/';
        } else {
            url = 'get_track/';
        }
        http.get(url, false, function(){self.loadPlayer(http)});
    };
    
    this.loadPlayer = function(http)
    {
        var data = http.text.split("|");
        var track = {};
        track.artist = data[0];
        track.title = data[1];
        this.set(track);
    };
    
    this.set = function(track)
    {
        if (track) {
            var mp3 = "mp3/" + track.title + ' - ' + track.artist + "/";
            if (track.artist) {
                $D.setContent(this.artist, "");
                $D.setContent(this.artist, track.artist);
            }
            if (track.title) {
                $D.setContent(this.title, "");
                $D.setContent(this.title, track.title);
            }
        } else {
            var mp3 = null;
        }
               
        if (navigator.userAgent.toLowerCase().indexOf("windows") != -1) {
        	var type = "application/x-mplayer2";
        } else {
            var type = "audio/mpeg"
        }
        
        var player = "";
        player += "<param name='type' value='" + type + "'>";
        player += "<param name='src' value='" + mp3 + "'>";
        player += "<param name='showstatusbar' value='1'>";
        player += "<param name='autostart' value='true'>";
        player += "<param name='showcontrols' value='1'>";
        player += "<embed id='audio-player' src =\"" + mp3 + "\" type='" + type + "' showcontrols='1' autoplay='true' autostart='true' width='200' height='70' controller='1' showstatusbar='1'></embed>";

        CKW.DOM.setContent('player', player);
    };
    
}