var NTPlayerCount = 0;
function makeNTPlayer(spanID, showID) {
    $("#"+spanID).append("<a class=\"NTPlay-buttons\" href=\"javascript:NTPlay('"+showID+"');\">Play in browser</a>");
    //$("#"+spanID).css("visibility","hidden");
}

function close_ntplayer() {
    $("#NTPlayer-real").css("display","none");
    NTPlayer_sound.stop();
}

function pause_ntplayer() {
    if(!NTPlayer_sound.paused) {
        NTPlayer_sound.pause();
        $("#NTPlayer-control").html("<img src=\"/ntplayer/fullplay.png\" />");
    }
    else {
        NTPlayer_sound.resume();
        $("#NTPlayer-control").html("<img src=\"/ntplayer/pause.png\" />");
    }
}

function NTPlayer_seek(place,showID) {
    NTPlayer_sound.setPosition(place);
    NTPlayer_IRC_text = original_NTPlayer_IRC_text.slice();
    $("#NTPlayer-IRC-list").html("");
}

var lineDate;
var presentDate;
var lineDays = 0;
function NTPlayer_update() {
    if(!NTPlayer_sound) { return; }
    $("#NTPlayer-progress-loading").css("width",""+((NTPlayer_sound.bytesLoaded/NTPlayer_sound.bytesTotal)*100)+"%");
    $("#NTPlayer-progress-playing").css("width",""+((NTPlayer_sound.position/NTPlayer_sound.durationEstimate)*100)+"%");
    if(NTPlayer_IRC_text && NTPlayer_IRC_text.length) {
        if(NTPlayer_IRC_text[0].substr(0,2) == "--") { lineDays = lineDays+1; NTPlayer_IRC_text.shift(); return; }
        lineDate = new Date(); lineDate.setTime(NTPlayer_showID_date.getTime() + 24*60*60*1000*lineDays);
        presentDate = new Date(); presentDate.setTime(NTPlayer_showID_date.getTime());
        presentDate.setTime(presentDate.getTime() + parseInt(NTPlayer_sound.position));
        lineDate.setHours(parseInt(NTPlayer_IRC_text[0].substr(0,2)));
        lineDate.setMinutes(parseInt(NTPlayer_IRC_text[0].substr(3,2)));
        if(lineDate < presentDate) {
            $("#NTPlayer-IRC-list").append("<li>"+NTPlayer_IRC_text.shift()+"</li>");
            $("#NTPlayer-IRC-over").get(0).scrollTop = $("#NTPlayer-IRC-over").get(0).scrollHeight;
        }
    }
}

var NTPlayer_update_interval;
var NTPlayer_sound;
var NTPlayer_current_showID;
var NTPlayer_showID_date;
var NTPlayer_IRC_text;
var original_NTPlayer_IRC_text;


$(document).ready(function() { 
        var links = $("a");
        for(i in links) {
            if(!(links[i].href)) { continue; }
            if(links[i].href.substr(links[i].href.length-3) == "mp3") {
                $(links[i]).before("<div id=\"NTPlayer-"+NTPlayerCount+"\" class=\"NTPlayer\"></div>");
                var showID = links[i].href;
                showID = showID.substr(showID.lastIndexOf("/")+1);
                showID = showID.substr(0,showID.indexOf("."));
                makeNTPlayer("NTPlayer-"+NTPlayerCount, showID);
                NTPlayerCount+=1;
            }
        }
        $("body").append("<script type=\"text/javascript\" src=\"/ntplayer/soundmanager2/script/soundmanager2-nodebug-jsmin.js\"></script>");
        soundManager.url = "/ntplayer/soundmanager2/swf/";
        soundManager.reboot();
        $("body").append("<div id=\"NTPlayer-real\"></div>");
        $("#NTPlayer-real").css("display","none");
        $("#NTPlayer-real").css("position","fixed");
        $("#NTPlayer-real").css("bottom","0px");
        $("#NTPlayer-real").css("left","0px");
        $("#NTPlayer-real").css("width","100%");
        $("#NTPlayer-real").css("padding","0px");
        $("#NTPlayer-real").css("margin","0px");
        $("#NTPlayer-real").css("border","0px");
        $("#NTPlayer-real").css("border-spacing","0px");
        $("#NTPlayer-real").css("background-color","blue");
        $("#NTPlayer-real").css("height","150px");
        $("#NTPlayer-real").append("<a id=\"close-NTPlayer\" href=\"javascript:;\">x</a>");
        $("#NTPlayer-real").append("<a id=\"NTPlayer-control\" href=\"javascript:;\"><img src=\"/ntplayer/pause.png\" /></a>");
        $("#NTPlayer-control").click(pause_ntplayer);
        $("#NTPlayer-control").css("float","left");
        $("#close-NTPlayer").click(close_ntplayer);
        $("#close-NTPlayer").css("float","right");
        $("#close-NTPlayer").css("font-size","large");
        $("#close-NTPlayer").css("color","white");
        $("#NTPlayer-real").append("<div id=\"NTPlayer-progress-container\"></div>");
        $("#NTPlayer-progress-container").append("<div id=\"NTPlayer-progress-loading\"></div>");
        $("#NTPlayer-progress-container").append("<div id=\"NTPlayer-progress-playing\"></div>");
        $("#NTPlayer-progress-container").css("width", "1000px");
        $("#NTPlayer-progress-container").css("height", "10px");
        $("#NTPlayer-progress-container").css("background-color", "#0000DD");
        $("#NTPlayer-progress-container").css("margin-left", "auto");
        $("#NTPlayer-progress-container").css("margin-top", "5px");
        $("#NTPlayer-progress-container").css("margin-right", "auto");
        $("#NTPlayer-progress-container").css("position", "relative");
        $("#NTPlayer-progress-loading").css("width", "0px");
        $("#NTPlayer-progress-loading").css("position", "absolute");
        $("#NTPlayer-progress-loading").css("left", "0px");
        $("#NTPlayer-progress-loading").css("top", "0px");
        $("#NTPlayer-progress-loading").css("height", "100%");
        $("#NTPlayer-progress-loading").css("background-color", "#0000AA");
        $("#NTPlayer-progress-playing").css("width", "0px");
        $("#NTPlayer-progress-playing").css("position", "absolute");
        $("#NTPlayer-progress-playing").css("left", "0px");
        $("#NTPlayer-progress-playing").css("top", "0px");
        $("#NTPlayer-progress-playing").css("height", "100%");
        $("#NTPlayer-progress-playing").css("background-color", "#000055");
        $("#NTPlayer-progress-container").click(function(event) {
                NTPlayer_sound.setPosition(NTPlayer_sound.durationEstimate * ((event.clientX - this.offsetLeft)/this.offsetWidth));
                NTPlayer_IRC_text = original_NTPlayer_IRC_text.slice();
                $("#NTPlayer-IRC-list").html("");
            });
        $("#NTPlayer-real").append("<div id=\"NTPlayer-IRC-over\"><ul id=\"NTPlayer-IRC-list\"></div><a name=\"IRCAnchor\" id=\"IRCAnchor\" href=\"#IRCAnchor\">&nbsp</a></div>");
        $("#NTPlayer-IRC-over").css("background-color","white");
        $("#NTPlayer-IRC-over").css("color","black");
        $("#NTPlayer-IRC-over").css("height","100px");
        $("#NTPlayer-IRC-over").css("width","75%");
        $("#NTPlayer-IRC-over").css("margin-left","auto");
        $("#NTPlayer-IRC-over").css("margin-right","auto");
        $("#NTPlayer-IRC-over").css("margin-top","1em");
        $("#NTPlayer-IRC-over").css("overflow-x","auto");
        $("#NTPlayer-IRC-over").css("overflow-y","scroll");
        $("head").append("<style type=\"text/css\"> .NTPlay-buttons { background: url(\"/ntplayer/play.png\"); background-repeat: no-repeat; min-height: 25px; display: block; padding-left: 30px; }</style>");
});

function getMonthNumber(month) {
    if(month == "January") return 1;
    if(month == "Febuary") return 2;
    if(month == "March") return 3;
    if(month == "April") return 4;
    if(month == "May") return 5;
    if(month == "June") return 6;
    if(month == "July") return 7;
    if(month == "August") return 8;
    if(month == "September") return 9;
    if(month == "October") return 10;
    if(month == "November") return 11;
    if(month == "December") return 12;
}

var tmpshowID;
function NTPlay(showID) {
    $("#NTPlayer-real").css("display","block");
    if(NTPlayer_current_showID == showID) {
        NTPlayer_sound.play();
        return;
    }
    clearInterval(NTPlayer_update_interval);
    NTPlayer_current_showID = showID;
    tmpshowID = showID;
    tmpshowID = tmpshowID.replace(/_/g,' ');
    tmpshowID = tmpshowID.substr(0,tmpshowID.length-4)+':'+tmpshowID.substr(tmpshowID.length-4,2)+':'+tmpshowID.substr(tmpshowID.length-2);
    NTPlayer_showID_date = new Date(Date.parse(tmpshowID));
    if(NTPlayer_sound) { NTPlayer_sound.destruct(); }
    var url = "/shows/"+showID+".mp3";
    if(showID.substr(0,5) == "Track") { url = "http://nerdtalk.s3.amazonaws.com/trackthursday/"+showID.substr(13)+"/"+showID+".mp3";}
    NTPlayer_sound = soundManager.createSound({id:"NTPlayer-sound", url: url, autoPlay: true});
    NTPlayer_update_interval = setInterval(NTPlayer_update,50);
    $.get("/irclogs/"+showID+".irc.txt", 
          function(result) { 
              NTPlayer_IRC_text = result.split("\n");
              original_NTPlayer_IRC_text = result.split("\n");
          });
}
