function displayPopup(elementId, sender) {

    if (document.getElementById('simplemodal-overlay')) {
        document.getElementById('simplemodal-overlay').click();
        $.modal.close();
    }

    var popup = document.getElementById(elementId);
    var contentArea = document.getElementById('top');

    $.modal.close();

    if (document.getElementById('simplemodal-overlay')) {
        document.getElementById('simplemodal-overlay').style.display = 'none';
    }
    if (document.getElementById('simplemodal-container')) {
        document.getElementById('simplemodal-container').style.display = 'none';
    }

    // var modalDivs = new Array();
    // Hiding all on click, then redisplay the correct one... was causing problems otherwise...

    // console.log('popupMenuLink length - ' + $(".popupMenuLink").length);

    jQuery.each(
        $(".popupMenuLink"),
        function (index, menuLinkElement) {
            // debugger;
            // console.log('index: ' + index + ' - elementId:' + menuLinkElement.id + ' applied classes: ' + menuLinkElement.className);
            $(menuLinkElement).removeClass('selected');
            // console.log('index: ' + index + ' - elementId:' + menuLinkElement.id + ' applied classes: ' + menuLinkElement.className);
            hidePopup('modal' + menuLinkElement.id);
        });

    var y = 96;
    var x = 110;

    popup.style.display = 'block';

    $(sender).addClass('selected');

    sender.style.zindex = '10000';

    var leftOffSet = 0;

    // if offsetLeft is 0, calculate distance form left another way.
    if (!contentArea.offsetLeft || contentArea.offsetLeft === 0) {

        var width = 0;

        // Get the inner width of the window:
        if (document.body.clientWidth) {
            width = document.body.clientWidth;
        }
        else if (window.innerWidth) {
            width = window.innerWidth;
        }        
        
        leftOffSet = (width - contentArea.offsetWidth) / 2;
    }
    else {
        leftOffSet = contentArea.offsetLeft;
    }

    x = (contentArea.offsetWidth + leftOffSet) - popup.offsetWidth;
    // alert(elementId);
    $("#" + elementId).modal({
        position: [y, x],
        overlayClose: true,
        persist: false,
        onClose: function (dialog) {
            // debugger;
            // dialog.style.display = 'none';
            dialog.orig[0].style.display = 'none';
            $.modal.close();
            $(sender).removeClass('selected');

            jQuery.each($(".menuPopout"),
                function (index, menuPopout) {
                    hidePopup(menuPopout.id);
                });
        }
    });
}

function hidePopup(popupId) {
    // alert(popupId);
    document.getElementById(popupId).style.display = 'none';
}

function SubscribeToNewsLetter() {
    jQuery.ajax({
        type: "POST",
        url: "/Services/Subscribe.aspx",
        data: "email=" + document.getElementById('txtSubscribeEmail').value,
        success: function (msg) {
            alert(msg);
        }
    });
}

function ClearField(field) {
    if (field.value === '(dd/mm/yyyy)') {
        field.value = '';
    }
}

function StopPropagation(e) {
    // debugger;
    if (!e)
        e = window.event;

    if (e.cancelBubble != undefined)
        e.cancelBubble = true;
    else
        e.stopPropagation();
}
