var _minHeight;

function initPage(basePath, pathToTheme, minHeight){
	// Show page now that CSS files have loaded (prevent FOUC)
	$('#page').show();

  // Create title fonts
  if(typeof sIFR == "function"){
  		sIFR.bHideBrowserText = true;
      sIFR.replaceElement(".title", named({sFlashSrc: basePath + pathToTheme + "/css/teenage.swf", 
      	sColor: "#ffe894", sBgColor: "#f37736", sCase: "upper", sWmode: "transparent", sFlashVars: "textalign=center"}));
      sIFR();
  };
  
  // Finish Suckerfish & Nav menu class setup
  $("#suckerfishmenu .content > UL.menu > LI")
    .filter(":even")
      .filter(":even").addClass("sfmnu1").end()
      .filter(":odd").addClass("sfmnu3").end()
    .end()
    .filter(":odd")
      .filter(":even").addClass("sfmnu2").end()
      .filter(":odd").addClass("sfmnu4");

  $("#sidebar-right .content > UL.menu > LI, #sidebar-left .content > UL.menu > LI")
    .filter(":even").addClass("navmnu1").end()
    .filter(":odd").addClass("navmnu2");

	$("#sidebar-left, #sidebar-right, #suckerfishmenu, #header").addClass("suckerfishmenu");

	// Add "special" classes
	$("tr td:first-child").addClass("first-child");

	_minHeight = minHeight;
	window.onresize = onResizeContent;
	onResizeContent(null);
	
  // Fix for no LI:hover in IE
  if( $.browser.msie ){
	  if ($.browser.version < "7.0") {
	    $("#header LI, #suckerfishmenu LI").hover(function(){ $(this).addClass("sfhover"); }, function(){ $(this).removeClass("sfhover"); });
	    $("#sidebar-right .content > UL.menu  LI, #sidebar-left .content > UL.menu LI").hover(
	  	  function() { $(this).addClass("sfhover"); }, function() { $(this).removeClass("sfhover"); });

	    // Fix transparent PNGs
      $.ifixpng(basePath + pathToTheme + "/images/pixel.gif"); 
      $(".imgFix").ifixpng();

      // Fix for IE6's inablility to deal with chained classes
      $(".navmnu1").removeClass("navmnu1").wrap("<span class='navmnu1'></span>");
      $(".navmnu2").removeClass("navmnu2").wrap("<span class='navmnu2'></span>");
      $(".sfmnu1").removeClass("sfmnu1").wrap("<span class='sfmnu1'></span>");
      $(".sfmnu2").removeClass("sfmnu2").wrap("<span class='sfmnu2'></span>");
      $(".sfmnu3").removeClass("sfmnu3").wrap("<span class='sfmnu3'></span>");
      $(".sfmnu4").removeClass("sfmnu4").wrap("<span class='sfmnu4'></span>");
	  }
  }
}

function onResizeContent(ev){
	$("#sidebar-right").css("height", "auto");
	$("#content-center").css("height", "auto");

	// Grow sidebar to fit content
  var h = Math.max(_minHeight, $("#content-wrapper").height() + $("#content-bottom").height());
  h = Math.max(h, $("#content-content").height());
  h = Math.max(h, $("#sidebar-right").height());

  $("#content-center").height(h);
	$("#content-bottom").css("top", (h - $("#content-wrapper").height() - $("#content-bottom").height()) + "px");
	$("#sidebar-right").css("height", h + "px");
}

function setOpacity(elm, alpha){
  elm.css("opacity", alpha);
  alpha *= 100;
  elm.css("-ms-filter", "progid:DXImageTransform.Microsoft.Alpha(Opacity=" + alpha +")").
    css("filter", "alpha(opacity=" + alpha +")");
}

var overlayMask = 
"<div id='overlayMask' title='Click background to close' style='left:0;top:0;background-color:#000;display:none;position:absolute;z-index:10000;'>&nbsp;</div>";

var overlayContent = 
"<div id='overlayContent' style='background-color:Transparent;display:none;position:absolute;z-index:10001;'></div>";

function showOverlay(content){
  var h = $(window).height(), w = $(window).width();

  window.scrollTo(0, 0);
  
  $("#page").prepend(overlayMask);
  $("#overlayMask")
    .click(hideOverlay)
    .width(w)
    .height($("#page").height())
    .show();
  setOpacity($("#overlayMask"), .5);
  
  $("#page").prepend(overlayContent);
  $("#overlayContent").append(content)
  $("#overlayContent")
    .css({left:((w-$("#overlayContent").width())/2), top:((h-$("#overlayContent").height())/2)})
    .show();
}

function hideOverlay(){
  $("#overlayContent").empty().remove();
  $("#overlayMask").remove();
}
