
/* Script by: www.jtricks.com
 * Version: 20070703
 * Latest version:
 * www.jtricks.com/javascript/window/box_centered.html
 */
var has_inner = typeof(window.innerWidth) == 'number';
var has_element = document.documentElement
    && document.documentElement.clientWidth;

// Moves the box object to be centered on current
// viewable area of the page
function center_box(box, width, height)
{
    cleft = has_inner
        ? pageXOffset + 
          (window.innerWidth - width)/2
        : has_element
          ? document.documentElement.scrollLeft + 
            (document.documentElement.clientWidth - width)/2
          : document.body.scrollLeft + 
            (document.body.clientWidth - width)/2;

    ctop = has_inner
        ? pageYOffset + (window.innerHeight - height)/2
        : has_element
          ? document.documentElement.scrollTop + 
            (document.documentElement.clientHeight - height)/2
          : document.body.scrollTop + 
            (document.body.clientHeight - height)/2;

    box.style.left = cleft > 0 ? cleft + 'px' : '0px';
    box.style.top = ctop > 0 ? ctop + 'px' : '0px';
}

// Hides other alone popup boxes that might be displayed
function hide_other_alone(obj)
{
    if (!document.getElementsByTagName)
        return;

    var all_divs = document.body.getElementsByTagName("DIV");

    for (i = 0; i < all_divs.length; i++)
    {
        if (all_divs.item(i).style.position != 'absolute' ||
            all_divs.item(i) == obj ||
            !all_divs.item(i).alonePopupBox)
        {
            continue;
        }

       // all_divs.item(i).style.display = 'none';
    }
    return;
}

// Shows a box if it wasn't shown yet or is hidden
// or hides it if it is currently shown
function show_hide_centered_box(an, width, height, borderStyle, closeh, scrolling, divname)
{
    show_hide_centered_href(an.href, width, height, borderStyle, closeh, scrolling, divname);
    return false;
}

// Shows a box if it wasn't shown yet or is hidden
// or hides it if it is currently shown
function show_hide_centered_href(href, width, height, borderStyle, closeh, scrolling, divname)
{

	if(divname == "") divname = href;

    var boxbgc = document.getElementById('dpbr');
    if (boxbgc == null){	
		var ibh = document.body.offsetHeight;
	    boxbgc = document.createElement('div');
	    boxbgc.setAttribute('id', 'dpbr');
		if(ibh >10) boxbgc.style.height = ibh + 'px';
	    document.body.appendChild(boxbgc);	
	}
	
    var boxdiv = document.getElementById(divname);
	boxbgc.style.display='';
    if (boxdiv != null){
        if (boxdiv.style.display=='none'){
            hide_other_alone(boxdiv);
            // Show existing box, move it
            // if document changed layout
            center_box(boxdiv, width, height);
            boxdiv.style.display='block';

            // Workaround for Konqueror/Safari
            if (!boxdiv.contents.contentWindow) boxdiv.contents.src = href;
        }else{
            // Hide currently shown box.
			boxbgc.style.display='none';
            boxdiv.style.display='none';
		}
        return false;
    }

    // hide_other_alone(null);
    // Create box object through DOM

    // Create box object through DOM
    boxdiv = document.createElement('div');

    // Assign id equalling to the document it will show
    //boxdiv.setAttribute('id', href);
	boxdiv.setAttribute('id', divname);
    // Add object identification variable
    boxdiv.alonePopupBox = 1;

    boxdiv.style.display = 'block';
    boxdiv.style.position = 'absolute';
    boxdiv.style.width = width + 'px';
    boxdiv.style.height = height + 'px';
    boxdiv.style.border = borderStyle;
    boxdiv.style.textAlign = 'right';
    boxdiv.style.zIndex = '999';	
    boxdiv.style.padding = '4px';
    boxdiv.style.backgroundImage = 'url(/img/bgpbox.gif)';
    document.body.appendChild(boxdiv);

    var offset = 0;

	if(closeh == 1){
	    var close_href = document.createElement('a');
	    close_href.href = 'javascript:void(0);';
	    close_href.onclick = function()
	    {
	        show_hide_centered_href(href, width, height, borderStyle);
	    }

	    close_href.appendChild(document.createTextNode('Zamknij'));
	    boxdiv.appendChild(close_href);
	    offset = close_href.offsetHeight;
	    // End of 'Close' hyperlink code.
	}

    var contents = document.createElement('iframe');
    //contents.scrolling = 'no';
    contents.overflowX = 'hidden';
    if(scrolling == 1) contents.overflowY = 'scroll';
	else contents.scrolling = 'no';
    contents.frameBorder = '0';
    contents.style.width = width + 'px';
    contents.style.height = (height - offset) + 'px';

    boxdiv.contents = contents;
    boxdiv.appendChild(contents);

    center_box(boxdiv, width, height);

    if (contents.contentWindow)
        contents.contentWindow.document.location.replace(
            href);
    else
        contents.src = href;

    // The script has successfully shown the box,
    // prevent hyperlink navigation.
    return;
}