/*
docTools2.js v2.0 by Kristoffe Brodeur. ©2010 All Rights Reserved
04-19-2010 good for even IE6
03-29-2011 added function call
06-27-2011 pinpoint img version, no draw submenu

only works with a doctype declared, otherwise it doesn't measure the height properly
without doctype declared, measuring the document.clientHeight works better
*/
var docW=-1;
var docH=-1;
setupDT();
var subMenuId=-1;
var footer=document.getElementById('footer');
var wrap=document.getElementById('wrap');
//var debug=document.getElementById('debug');
var bodycopy=document.getElementById('bodycopy');
var wrap=document.getElementById('wrap');
//debug.style.visibility="hidden";
//footer.style.visibility="hidden";
var wait_draw;
//-----
document.body.onresize=function()
	{
	recenterPage();
	}
//-----
function setupDT()
	{
	// 
	if(typeof window.innerWidth !='undefined')
		{
		docW=window.innerWidth,
		docH=window.innerHeight
		}
	//IE6 in standards compliant mode (i.e. with a valid doctype as the first line in the document)
	else if(typeof(document.documentElement)!='undefined' && typeof(document.documentElement.clientWidth)!='undefined' && document.documentElement.clientWidth !=0)
		{
		docW=document.documentElement.clientWidth,
		docH=document.documentElement.clientHeight
		}
	 // older versions of IE
	else
		{
		docW=document.getElementsByTagName('body')[0].clientWidth;
		docH=document.getElementsByTagName('body')[0].clientHeight;
		}
	}
//-----
function draw_subMenu()
	{
	debug.innerHTML="draw_subMenu"+subMenuId;
	footer.style.visibility="hidden";
	var page_request=false;
	if(window.XMLHttpRequest)//ff
		{
		page_request=new XMLHttpRequest();
		}
	else if(window.ActiveXObject)//ie
		{
		try
			{
			page_request=new ActiveXObject("Msxml2.XMLHTTP");
			}
			catch(e){}
		}
	else
		{
		return false;
		}
	page_request.onreadystatechange=function()
		{
		//
		switch(page_request.readyState)
			{
			case 0:
				//uninitialized
				break;
			case 1:
				//loading
				break;
			case 2:
				//loaded
				break;
			case 3:
				//interactive
				break;
			case 4: 
				//done
				bodycopy.innerHTML=page_request.responseText;
				break;
			default:
				break;
			}			
		}
	page_request.open('GET',to_root+"php/change_submenu.php?area="+area+"&subArea="+subMenuId,true);
	page_request.send(null);
	}
//-----
function load_subMenu(sFile,sArea)
	{
	var likeAddy="http://www.supercala.net/mS/"+areaStr+"/"+areaStr+".php?sub="+sArea;
	var fbLikeStr='<div id="fb-root"></div><script src="http://connect.facebook.net/en_US/all.js#xfbml=1"></script><fb:like href="'+likeAddy+'" send="true" width="400" show_faces="true" font="arial"></fb:like>';
	subMenuId=sArea;
	//debug.innerHTML=subMenuId;
	//footer.style.visibility="hidden";
	var page_request=false;
	if(window.XMLHttpRequest)//ff
		{
		page_request=new XMLHttpRequest();
		}
	else if(window.ActiveXObject)//ie
		{
		try
			{
			page_request=new ActiveXObject("Msxml2.XMLHTTP");
			}
			catch(e){}
		}
	else
		{
		return false;
		}
	page_request.onreadystatechange=function()
		{
		//
		switch(page_request.readyState)
			{
			case 0:
				//uninitialized
				break;
			case 1:
				//loading
				break;
			case 2:
				//loaded
				break;
			case 3:
				//interactive
				break;
			case 4:
				//done
				//bodycopy.innerHTML=fbLikeStr+page_request.responseText;
				bodycopy.innerHTML=page_request.responseText;
				var absWrap=absPos(wrap);
				//debug.innerHTML+=absWrap.y+wrap.clientHeight+"[done]";				
				//wait_draw=setInterval(setup_menuBot,1000);
				//draw_subMenu();
				//draw_submenu is only for text only submenus taht change, not images like here in pinpoint
				break;
			default:
				break;
			}			
		}
	page_request.open('GET',sFile,true);
	page_request.send(null);
	}
//-----
function setup_menuBot()
	{
	clearInterval(wait_draw);
	//debug.innerHTML+="[setup_menuBot]";
	var absWrap=absPos(wrap);
	//
	if(docH<wrap.offsetHeight)
		{
		//debug.innerHTML="docH &lt; "+wrap.offsetHeight+"||"+wrap.clientHeight;
		//footer.style.top=wrap.offsetHeight+"px";
		footer.style.top=absWrap.y+wrap.offsetHeight+"px";
		}
	else
		{
		//debug.innerHTML="docH &gt; "+wrap.offsetHeight;
		//footer.style.top=docH-footer.offsetHeight+"px";
		footer.style.top=absWrap.y+wrap.offsetHeight+"px";
		}
	footer.style.left=((docW-footer.offsetWidth)/2)+"px";
	footer.style.visibility="visible";
	}
//-----where is the real absolute position of a nested element?
function absPos(el)
	{
	//
	for(var lx=0,ly=0;el!=null;lx+=el.offsetLeft,ly+=el.offsetTop,el=el.offsetParent);
	return {x:lx,y:ly};
	}	
//-----
function recenterPage()
	{
	setupDT();
	wrap.style.left=(docW-wrap.clientWidth)/2+"px";
	}
//-----
