/* ***********************************************************
Based on Example 13.7 Centering an Element in a Window or Frame
"Dynamic HTML:The Definitive Reference"
2nd Edition
by Danny Goodman
Published by O'Reilly & Associates  ISBN 1-56592-494-0
http://www.oreilly.com
Copyright 2002 Danny Goodman.  All Rights Reserved.
************************************************************ */
		
function showModalDiv(imgUrl) {
    var div = getRawObject('modalDiv');
	div.style.zIndex = "100";
	div.style.display = "block";
    var img = getRawObject('modalImg');
	img.src = imgUrl;
	centerModalDiv('container', 'modalDiv');
}

function showModalDivWide(imgUrl) {
    var div = getRawObject('modalDivWide');
	div.style.zIndex = "100";
	div.style.display = "block";
    var img = getRawObject('modalImgWide');
	img.src = imgUrl;
	centerModalDiv('container', 'modalDivWide');
}

function dismissModalDiv() {
	document.getElementById('modalDiv').style.zIndex = "-1";
	document.getElementById('modalDiv').style.display = "none";
}

function dismissModalDivWide() {
	document.getElementById('modalDivWide').style.zIndex = "-1";
	document.getElementById('modalDivWide').style.display = "none";
}

function centerModalDiv(parentID, elemID) {
    var parent = getRawObject(parentID);
    var obj = getRawObject(elemID);
    var scrollX = 0, scrollY = 0;
    if (document.body && typeof document.body.scrollTop != "undefined") {
        scrollX += document.body.scrollLeft;
        scrollY += document.body.scrollTop;
        if (document.body.parentNode && 
            typeof document.body.parentNode.scrollTop != "undefined") {
            scrollX += document.body.parentNode.scrollLeft;
            scrollY += document.body.parentNode.scrollTop;
        }
    } else if (typeof window.pageXOffset != "undefined") {
        scrollX += window.pageXOffset;
        scrollY += window.pageYOffset;
    }
    // calculate x relative to parent since it is positioned too
	var	x = (parent.offsetWidth - obj.offsetWidth) / 2 ;
	// calcuate y relative to whole window accounting for scroll
    var y = Math.round((getInsideWindowHeight()/2) - (getObjectHeight(obj)/2)) + scrollY;

    shiftTo(obj, x, y);
    scrollTo(0, scrollY);
    show(obj);
}

