﻿//*********************** Event Handler Creation ***************************
function AddHandler(object, eventName, handler) {
    if (object.addEventListener) { object.addEventListener(eventName, handler, false); }
    else { object.attachEvent("on" + eventName, handler); }
}

function RemoveHandler(object, eventName, handler) {
    if (object.removeEventListener) { object.removeEventListener(eventName, handler, false); }
    else { object.detachEvent("on" + eventName, handler); }
}

function AddWheelHandler(handler) {
    if (document.addEventListener) { document.addEventListener('DOMMouseScroll', handler, false); }
    else {
        document.attachEvent("onmousewheel", handler);
    }
}

function RemoveWheelHandler(handler) {
    if (document.removeEventListener) { document.removeEventListener('DOMMouseScroll', handler, false); }
    else {
        document.detachEvent("onmousewheel", handler);
    }
}

function CreateDelegate(object, method) {
    return (function() { return method.apply(object, arguments); })
}

function ForceEvent(element, eventName) {
    var newEvent = null;
    if (document.createEvent) {
        newEvent = document.createEvent("HTMLEvents");
        newEvent.initEvent(eventName, true, true);
        element.dispatchEvent(newEvent);
    }
    else if (document.createEventObject) {
        newEvent = document.createEventObject();
        element.fireEvent('on' + eventName, newEvent);
    }
}

function TriggerInputClick(inputName) {
    $("input[name=" + inputName + "]").trigger('click');
}
