/* Script by: www.jtricks.com

 * Version: 20070301

 * Latest version:

 * www.jtricks.com/javascript/window/box_alone.html

 */

// Moves the box object to be directly beneath an object.

function move_box(an, box)

{

    var cleft = 60;

    var ctop = -110;

    var obj = an;



    while (obj.offsetParent)

    {

        cleft += obj.offsetLeft;

        ctop += obj.offsetTop;

        obj = obj.offsetParent;

    }



    box.style.left = cleft + 'px';



    ctop += an.offsetHeight + 8;



    // Handle Internet Explorer body margins,

    // which affect normal document, but not

    // absolute-positioned stuff.

    if (document.body.currentStyle &&

        document.body.currentStyle['marginTop'])

    {

        ctop += parseInt(

            document.body.currentStyle['marginTop']);

    }



    box.style.top = ctop + 'px';

}



// 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_box(an, width, height, borderStyle)

{

    var href = an.href;
	
    var boxdiv = document.getElementById(href);
	



    if (boxdiv != null)

    {

        if (boxdiv.style.display=='none')

        {

            hide_other_alone(boxdiv);

            // Show existing box, move it

            // if document changed layout

            move_box(an, boxdiv);

            boxdiv.style.display='block';



            // Workaround for Konqueror/Safari

            if (!boxdiv.contents.contentWindow)

                boxdiv.contents.src = href;

        }

        else

            // Hide currently shown box.

            boxdiv.style.display='none';

        return false;

    }



    hide_other_alone(null);



    // Create box object through DOM

    boxdiv = document.createElement('div');



    // Assign id equalling to the document it will show

    boxdiv.setAttribute('id', href);



    // 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.padding = '4px';

    boxdiv.style.background = '#FFFFFF';

    document.body.appendChild(boxdiv);



    var offset = 0;



    // Remove the following code if 'Close' hyperlink

    // is not needed.

    var close_href = document.createElement('a');

    close_href.href = 'javascript:void(0);';

    close_href.onclick = function()

        { show_hide_box(an, width, height, borderStyle); }

    close_href.appendChild(document.createTextNode('Close'));

    boxdiv.appendChild(close_href);

    offset = close_href.offsetHeight;

    // End of 'Close' hyperlink code.



    var contents = document.createElement('iframe');

    //contents.scrolling = 'no';

    contents.overflowX = 'hidden';

    contents.overflowY = 'scroll';

    contents.frameBorder = '0';

    contents.style.width = width + 'px';

    contents.style.height = (height - offset) + 'px';
	
	contents.href = href;



    boxdiv.contents = contents;

    boxdiv.appendChild(contents);



    move_box(an, boxdiv);



    if (contents.contentWindow) {

        contents.contentWindow.document.location.replace(href);

	} else {

        contents.src = href;
	}


    // The script has successfully shown the box,

    // prevent hyperlink navigation.

    return false;

}

//-->