function getWindowHeight()
{
    var xScroll, yScroll;
    if (window.innerHeight && window.scrollMaxY) {	
        xScroll = window.innerWidth + window.scrollMaxX;
        yScroll = window.innerHeight + window.scrollMaxY;
    } else if (document.body.scrollHeight > document.body.offsetHeight){ // all but Explorer Mac
        xScroll = document.body.scrollWidth;
        yScroll = document.body.scrollHeight;
    } else { // Explorer Mac...would also work in Explorer 6 Strict, Mozilla and Safari
        xScroll = document.body.offsetWidth;
        yScroll = document.body.offsetHeight;
    }
    var windowWidth, windowHeight;
    if (self.innerHeight) {	// all except Explorer
        if(document.documentElement.clientWidth){
            windowWidth = document.documentElement.clientWidth; 
        } else {
            windowWidth = self.innerWidth;
        }
        windowHeight = self.innerHeight;
    } else if (document.documentElement && document.documentElement.clientHeight) { // Explorer 6 Strict Mode
        windowWidth = document.documentElement.clientWidth;
        windowHeight = document.documentElement.clientHeight;
    } else if (document.body) { // other Explorers
        windowWidth = document.body.clientWidth;
        windowHeight = document.body.clientHeight;
    }	
    // for small pages with total height less then height of the viewport
    if(yScroll < windowHeight){
        pageHeight = windowHeight;
    } else { 
        pageHeight = yScroll;
    }
    // for small pages with total width less then width of the viewport
    if(xScroll < windowWidth){	
        pageWidth = xScroll;		
    } else {
        pageWidth = windowWidth;
    }
    return windowHeight;
}

function setHeight()
{
  var maxH = 0;
  if(document.getElementById)
  {
    if (elem = document.getElementById('Menu')) {
      maxH = Math.max(maxH, elem.offsetHeight);
    }
    if (elem = document.getElementById('Text')) {
      maxH = Math.max(maxH, elem.offsetHeight);
    }
    if (elem = document.getElementById('Content')) {
      maxH = Math.max(maxH, elem.offsetHeight);
    }
    if (elem = document.getElementById('Thumbnails')) {
      maxH = Math.max(maxH, elem.offsetHeight);
    }
    if (elem = document.getElementById('Thumbs')) {
      maxH = Math.max(maxH, elem.offsetHeight);
    }
    if (elem = document.getElementById('jquery-overlay')) {
      maxH = Math.max(maxH, $(elem).height()-550);
    }
    var newH = Math.max(getWindowHeight(), maxH + 550);
    var box = document.getElementById('Spacer');
    box.style.height = newH + 'px';
  }
  
}

var tt = null;
$(function () {
  $(window).scroll(function () { if (tt) clearTimeout(tt); $('#qlinks').hide(); tt = setTimeout('setTop()', 200); });
  if ($('#Content').height() < 800) {
    $('#ql_top').hide();
  }
  setTop();
});

function setTop()
{
  $('#qlinks').stop(true, true);
  var topMin = 740 + $('#Comment').height();
  var topMax = 315 + $('#Content').height();
  var topCurr = $(window).scrollTop()+$(window).height()-45;
  var top = topCurr;
  if (top > topMax) top = topMax;
  if (top < topMin) top = topMin;
  $('#qlinks').css( {top: top} ).show();
}

window.onload = window.onresize = setHeight;