window.quicktime = window.quicktime || {};
quicktime = {
    currentTime : "0:00",
    totalTime : "",
    handlePlayPause : function()
    {
        var div = $(this).parent().attr("id").split('_').pop();

        if ($(this).hasClass("play")) {
            $(this).children().animate({backgroundPosition: "-38px"});
            quicktime.play(div);
            $(this).removeClass("play");
            $(this).addClass("stop");
            return false
        }
        
        $(this).children().animate({backgroundPosition: "0px"});
        quicktime.stop(div);
        $(this).removeClass("stop");
        $(this).addClass("play");
        
        return false;
    },
    play : function(div)
    {
        var movie = document[div];
        if (movie.GetTime() == 0) {
            var time = movie.GetEndTime() / movie.GetTimeScale();
            var totalTime = quicktime.formatTime(time);
            quicktime.totalTime = totalTime;
        
            $("." + div + "Time").slideDown(500);
            quicktime.writeTime("." + div + "Time");
            $("." + div + "Time" + " span.totalTime").html(totalTime);        
        }
        quicktime.startLoop(div);
        movie.Play();
    },
    startLoop : function(div)
    {
        quicktime.div = setInterval("quicktime.updateTime(\"" + div + "\");", 100);
    },
    endLoop : function(div)
    {
        clearInterval(quicktime.div);
    },
    updateTime : function(div, movie)
    {
        var movie = document[div];
        var time = movie.GetTime() / movie.GetTimeScale();
        var time = quicktime.formatTime(time);
        quicktime.currentTime = time;
        quicktime.writeTime("." + div + "Time");
    },
    timeChanged : function()
    {
        console.log('time changed');
    },
    stop : function(div)
    {
        quicktime.endLoop(div);
        document[div].Stop();
    },
    formatTime : function(seconds)
    {
        var minutes = Math.floor(seconds / 60);
        var seconds = Math.floor(seconds % 60);
        
        if (seconds < 10) {
            seconds = "0" + seconds;
        }
        
        return minutes + ":" + seconds;
    },
    writeTime : function(div)
    {
        $(div + " span.currentTime").html(this.currentTime);
    }
}

$(document).ready(function() {
    $(".playPause").click(quicktime.handlePlayPause);
    if (jQuery.browser.msie) {
        $("#song1Hidden").css({"height" : "20px"});
        $("#song2Hidden").css({"height" : "20px"});
        $("#song3Hidden").css({"height" : "20px"});
    }
})
