﻿
var tester = 0;
var timeToEvent = 0;
document.observe("dom:loaded", initPage);

function initPage() {
    var params = {
        test: tester
    };
    ajaxWebRequest("/LIVE/GetNextEvent", 'post', true, params, returnNextevent, 'errLinkMessage', 'Orders List could not be Received');

}

function returnNextevent(data) {
    tester += 1;
    if (!data.Show){
        $('liveBanner').hide();
        $('liveBannerBottom').hide();
        window.setTimeout(initPage, 20*1000);
        return;
    }
    if (data.Expected == 0) {
        showLiveEvent(data);
    } else {
        showEventSoon(data);
    }
}

function showEventSoon(data) {
    timeToEvent = data.Expected;
    $('eventTitleSoon').update(data.Title);
    $('eventNote').update(' ');
    $('dvLiveNow').hide();
    $('livePlayer').update('');
    $('dvLiveSoon').show();
    $('liveBannerBottom').show();
    window.setTimeout(drawTimer, 1000);
}

function drawTimer() {
    timeToEvent = timeToEvent - 1;
    if (timeToEvent <= 0) {
        initPage();
        return;
    }
    var time = new String(shortSecondsToTime(timeToEvent));
    for (var i = 0; i < time.length; i++) {
        var d = time.substring(i, i + 1);
        if (d != ':') {
            $('digit_' + i).update(d);
        }
    }
    window.setTimeout(drawTimer, 1000);
}

function showLiveEvent(data){
    $('dvLiveSoon').hide();
    $('eventTitleLive').update(data.Title);
    $('eventNote').update(data.Note);
    Event.observe('btnWatchNow', 'click', function() {
        window.open(data.URL);
    });
    $('dvLiveNow').show();
    $('liveBannerBottom').show();
    if (data.Player == "wsj") {
        var so = new SWFObject('http://online.wsj.com/public/resources/documents/LivePlayerLoader.swf?DigitsLive',
            'DigitsLive', '571', '443', '8', '#000000');
        so.addVariable('autoPlay', 'true');
        so.addVariable('autoStartSound', 'true');
        //so.addVariable('configUrl', 'http://online.wsj.com/public/resources/documents/WSJ_LIVE_NEWSHUB_PLAYER_config.xml');
        so.addVariable('enableCaptions', 'true');
        //var so = new SWFObject('http://online.wsj.com/public/resources/documents/WSJ_LIVE_NEWSHUB_PLAYER_CAPTIONS.swf',
        //    'LIVEPLAYER_WSJ0902_F_', '571', '443', '8', '#000000');
        //so.addVariable('microMode', '0');
        //so.addVariable('marketDayEmbed', '0');
        //so.addVariable('showAd', '0');
        //so.addVariable('showPopupButton', '0');
        //so.addVariable('showFullScreenButton', '1');
        so.addParam('quality', 'high');
        so.addParam('wmode', 'opaque');
        so.addParam('allowfullscreen', 'true');
        so.addParam('allowscriptaccess', 'always');
        so.write('livePlayer');
    }
    window.setTimeout(initPage, data.Duration);
}

 

function shortSecondsToTime(seconds, returnMiliSec) {
        if (returnMiliSec == undefined) returnMiliSec = false;
        seconds = parseFloat(seconds);
        var value;
        var h, m, s, f;
        var dispH, dispM;
        h = (parseInt(seconds / 3600));
        dispH = (h < 10) ? "0" + h : h;
        secondsWithoutHours = seconds % 3600;
        m = (parseInt(secondsWithoutHours / 60));
        dispM = (m < 10) ? "0" + m : m;
        s = (Math.round((seconds % 60) * 100) / 100);
        s = (s < 10) ? "0" + s : s;
        f = "00";
        var arr = (s + "").split(".");
        if (arr.length > 1) {
            s = arr[0];
            f = (arr[1].length >= 2) ? arr[1].substring(0, 2) : arr[1] + "0";
        }
        value = (dispH + ":" + dispM + ":" + s + ((returnMiliSec) ? "." + f : ''));
        return value;
    }


//Data
var ajaxWebRequest = function(url, method, async, parms, func, msgbox, msg) {
    var retData = null;
    new Ajax.Request(url, {
        method: method,
        parameters: parms,
        asynchronous: async,
        onSuccess: function(transport) {
            retData = transport.responseText.evalJSON();
            func(retData);
        }
    });
}
