window.onresize = resizeDetailbox;

function resizeDetailbox()
{
	setDetailbox (false);
}

function correctDetailbox()
{
	setDetailbox (true);
}

function setDetailbox(fixsubmenu)
{
	if (!window.opera)
	{
		var varSubmenu = null;
		var varDetailbox = null;
		var ie4 = (document.all) ? true : false;
		var ie7 = (window.XMLHttpRequest) ? true : false;
		var ns4 = (document.layers) ? true : false;
		var ns6 = (document.getElementById && !document.all) ? true : false;
		var xoffset = ((ie4) && !(ie7)) ? 170 : 180; /* 170 for ie<7, sets scrollbar inside !!! */
		var yoffset = ((ie4) && !(ie7)) ? 120 : 130; /* 120 for ie<7, sets scrollbar inside !!! */
		var xdelta = 0;
		var xpaddingleft = 0;
		var xpaddingright = 0;
		
		if (ie4)
		{
			x = document.body.clientWidth;
			y = document.body.clientHeight;
		}
		else
		{
			x = window.innerWidth;
			y = window.innerHeight;
		}
		if (ns4)
		{
			varSubmenu = document.backgroundsubmenu;
			varDetailbox = document.detailbox;
		}
		else
		{
			varSubmenu = document.getElementById("backgroundsubmenu");
			varDetailbox = document.getElementById("detailbox").style;
		}
		if (varDetailbox != null)
		{
			if (varSubmenu != null)
			{
				xdelta = getNumValue("backgroundsubmenu","width");
				xpaddingleft = getNumValue("backgroundsubmenu","paddingLeft");
				xpaddingright = getNumValue("backgroundsubmenu","paddingRight");
				xdelta = xpaddingleft + xdelta + xpaddingright;
			}
			if (fixsubmenu)
			{
				xleft = getNumValue("detailbox","left");
				varDetailbox.left = (xleft + xdelta) + "px";
			}
			if (x > xoffset)
			{
				varDetailbox.width = (x - xoffset - xdelta) + "px";
			}
			if (y > yoffset)
			{
				varDetailbox.height = (y - yoffset) + "px";
			}
		}
	}
}

function getNumValue(strElm, strStyle)
{
	var strStyle;

	strStyle = getStyle(document.getElementById(strElm),strStyle);
	return Number(strStyle.substring(0,strStyle.indexOf("px")));
}

function getStyle(aElm, aStyle)
{
   var lStyle;
   try
	 {
     if (aElm && typeof aElm.style != "undefined")
       lStyle = aElm.style[aStyle];
   }
   catch(e) {}

   var retVal;

   if (lStyle)
     return lStyle;
   else
	 {
     // Mozilla
     if (document.defaultView)
		 {
       aStyle = aStyle.replace(/([A-Z])/g, "-$1").toLowerCase();
       retVal = aElm.ownerDocument.defaultView.getComputedStyle(aElm,"").getPropertyValue(aStyle);

       // some elements might not have a defined value (eg. images)
       if (retVal == "auto")
			 {
         if (aStyle == "width")
           retVal = aElm.offsetWidth;
         else if (aStyle == "height")
           retVal = aElm.offsetHeight;
       }
     }
     // IE
     else if (aElm.currentStyle)
		 {
       retVal = aElm.currentStyle[aStyle];
     }
     else
       return null;
   }
	 return retVal;
}
