﻿
var ERROR_CODE_UNHANDLED = 1;
var ERROR_CODE_BASE = 1000;
var ERROR_CODE_WEB_SERVICE = (ERROR_CODE_BASE + 1);
var ERROR_CODE_REGULAR = (ERROR_CODE_BASE + 2);
var ERROR_CODE_USER_DEFINED = (ERROR_CODE_BASE + 3);
var ERROR_CODE_UPDATE_PANEL = (ERROR_CODE_BASE + 4);

Sys.Application.add_load(applicationLoad)

function applicationLoad(sender, args) {
    var mgr = Ajax.Logging.ExceptionManager.getInstance();

    mgr.addListener(new Ajax.Logging.WebServiceTraceListener());

}

window.onerror = function(message, url, lineNumber) {
    //Since our framework only understand exception we have to convert it
    var e = Error.create(message, { description: message, name: 'UnhandledError', lineNumber: lineNumber, url: url });
    Ajax.Logging.ExceptionManager.getInstance().publishException(ERROR_CODE_UNHANDLED, e);

    return true;
}


Sys.WebForms.PageRequestManager.getInstance().add_endRequest(endRequest);

function endRequest(sender, args) {
    var e = args.get_error();

    if (e != null) {
        Ajax.Logging.ExceptionManager.getInstance().publishException(ERROR_CODE_UPDATE_PANEL, e);
        args.set_errorHandled(true);
    }
}








