﻿var Event = {
    addEvent: function(obj, evType, fn) {
        if (obj.addEventListener) {
            obj.addEventListener(evType, fn, false);
            return true;
        }
        else {
            if (obj.attachEvent) {
                var r = obj.attachEvent("on" + evType, fn);
                EventCache.add(obj, evType, fn);
                return r;
            }
            else {
                return false;
            }
        }
    },
    removeEvent: function(obj, evType, fn) {
        if (obj.removeEventListener) {
            obj.removeEventListener(evType, fn, false);
            return true;
        }
        else {
            if (obj.detachEvent) {
                var r = obj.detachEvent("on" + evType, fn);
                return r;
            }
            else {
                return false;
            }
        }
    },
    getEvent: function(e) {
        e = window.event || e;
        e.leftButton = false;
        if (e.srcElement == null && e.target != null) {
            e.srcElement = e.target;
            e.leftButton = (e.button == 1);
        }
        else {
            if (e.target == null && e.srcElement != null) {
                e.target = e.srcElement;
                e.leftButton = (e.button == 0);
            }
            else {
                if (e.srcElement != null && e.target != null) {
                }
                else {
                    return null
                }
            }
        }
        if (document.body && document.documentElement) {
            e.mouseX = e.pageX || (e.clientX + Math.max(document.body.scrollLeft, document.documentElement.scrollLeft));
            e.mouseY = e.pageY || (e.clientY + Math.max(document.body.scrollTop, document.documentElement.scrollTop));
        }
        else {
            e.mouseX = -1;
            e.mouseY = -1;
        }
        return e;
    },
    stopEvent: function(e) {
        if (e && e.cancelBubble != null) {
            e.cancelBubble = true;
            e.returnValue = false;
        }
        if (e && e.stopPropagation && e.preventDefault) {
            e.stopPropagation();
            e.preventDefault();
        }
        return false;
    }
};
var EventCache = function() {
    var listEvents = [];
    return {
        listEvents: listEvents,
        add: function(node, sEventName, fHandler, bCapture) {
            listEvents[listEvents.length] = arguments;
        },
        flush: function() {
            var i, item;
            for (i = listEvents.length - 1; i >= 0; i = i - 1) {
                item = listEvents[i];
                if (item[0].removeEventListener) {
                    item[0].removeEventListener(item[1], item[2], item[3]);
                };
                if (item[1].substring(0, 2) != "on") {
                    item[1] = "on" + item[1];
                };
                if (item[0].detachEvent) {
                    item[0].detachEvent(item[1], item[2]);
                };
                item[0][item[1]] = null;
            };
        }
    };
} ();

Event.addEvent(window, "unload", EventCache.flush);

function error_handler(a, b, c) {
    window.status = (c + "\n" + b + "\n\n" + a + "\n\n" + error_handler.caller);
    return true;
}

function OpenNewWindow(url)
{
    if (document.all)
        window.open(url, "doc", "width:760px, height:650px, toolbar = no, menubar = no, resizable = yes,scrollbars = yes");
    else
        window.showModalDialog(url, window, "dialogWidth:620px;dialogHeight:650px;");
}

function OpenFullDataList(url) {
    if (document.all)
        window.open(url, "doc", "width:760px, height:650px, toolbar = no, menubar = no, resizable = yes,scrollbars = yes");
    else
        var ret = window.showModalDialog(url, window, "dialogWidth:660px;dialogHeight:650px;");
}

function OpenReleaseWindow(url) {
    if (document.all) {
        if (url.indexOf('.pdf') > -1) {
            window.open(url, "doc", "width=760px, height=650px, toolbar = no, menubar = no, resizable = yes,scrollbars = yes");
        }
        else {
            window.showModalDialog(url, window, "dialogWidth:630px;dialogHeight:650px;");
        }
    }
    else {
        var ret = window.showModalDialog(url, window, "dialogWidth:580px;dialogHeight:650px;");
    }
}