﻿
function PopupLink(elementId, windowName, windowOptions) {
    this.Id = popupLinks.length;
    this.elementId = elementId;
    this.windowName = windowName;
    this.windowOptions = windowOptions;
    this.element = document.getElementById(elementId);
    addEvent(this.element, "click", this.click);
    
    this.click = function(e) {
        var element;
        if(e.srcElement)
            element = e.srcElement;
        else if(e.target)
            element = e.target;
        else
            element = null;
        if(element) {
            
            var oWin = window.open(element.href,"","width=350,height=400,scrollbars=no,resizable=no");
            if (oWin==null || typeof(oWin)=="undefined") 
                alert("You need to allow popups for this domain");
            
            stopProp(e);
            stopDef(e);
        }

        return false;
    }
}

function addEvent(el, eType, fn, uC) {
    if (el.addEventListener) {
        el.addEventListener(eType, fn, uC);
        return true;
    } else if (el.attachEvent) {
        return el.attachEvent('on' + eType, fn);
    } else {
        el['on' + eType] = fn;
    }
}
function stopProp(e) {
    if (e && e.stopPropogation) 
        e.stopPropogation();
    else if (window.event && window.event.cancelBubble)
        window.event.cancelBubble = true;
}
function stopDef(e) {
    if (e &&e.preventDefault) 
        e.preventDefault();
    else if (window.event && window.event.returnValue)
        window.event.returnValue = false;
}
function openPopup(e) {
    var element;
    if (e && e.srcElement)
        element = e.srcElement;
    else if (e && e.target)
        element = e.target;
    else
        element = null;
    if (element) {

        var oWin = window.open(element.href, "MC_POPUP", 'width=600,height=500,resizable=yes,scrollbars=yes,toolbar=no');
        if (oWin == null || typeof (oWin) == "undefined")
            alert("You need to allow popups for this domain");

        stopProp(e);
        stopDef(e);
    }

    return false;
}        
