﻿var AjaxWaiting = false;


$(document).ready(function () {

    SetupGlobalAjaxHandlers();

    if (typeof (OnInitialize) != "undefined")
        OnInitialize();

    if (typeof (OnPageLoad) != "undefined")
        OnPageLoad();

});
function initHeartbeat(intervalInMilliseconds) {
    $(document).everyTime(intervalInMilliseconds, doHeartbeat)
}
function doHeartbeat() {
    $.ajax({
        type: "POST",
        url: "/ScriptService.asmx/DoHeartbeat",
        data: "{}",
        dataType: "json",
        contentType: "application/json; charset=utf-8",
        success: heartbeatCallback
    });
}
function heartbeatCallback(msg) {
    if (typeof (OnHeartBeat) != "undefined")
        OnHeartBeat(msg.d);

}
function GET$(id) {
    return document.getElementById(id);
}
function SetupGlobalAjaxHandlers() {
    var prm = Sys.WebForms.PageRequestManager.getInstance();
    prm.add_initializeRequest(InitializeRequest);
    prm.add_endRequest(EndRequest);
}
function InitializeRequest(sender, args) {
    var res = null;
    if (typeof (OnPageInitRequest) != "undefined")
        res = OnPageInitRequest();
    if (res != false)
        AjaxWaiting = true;
}
function EndRequest(sender, args) {
    var res = null;
    if (typeof (OnPageEndRequest) != "undefined")
        res = OnPageEndRequest();
    if (res != false)
        AjaxWaiting = false;
}  
