
// See http://www.safalra.com/web-design/javascript/window-onload-scheduler/
var OnloadScheduler=new function(){var _1=new Array();var _2=new Array();window.onload=function(){for(var i=_1.length-1;i>0;i--){execute(_1[i]);}for(var i=0;i<_2.length;i++){execute(_2[i]);}OnloadScheduler=null;};function execute(_5){if(_5){for(var i=0;i<_5.length;i++){_5[i]();}}}this.schedule=function(_7,_8){if(_7 instanceof Function){if(!_8){_8=0;}if(_8<0){if(_1[-_8]){_1[-_8].push(_7);}else{_1[-_8]=[_7];}}else{if(_2[_8]){_2[_8].push(_7);}else{_2[_8]=[_7];}}}else{this.schedule(function(){eval(_7);},_8);}};};

// functions for positioning dockBar
var dockBarNode;
function initialiseDockBar(){
  dockBarNode = document.getElementById('dockBar');
  if (window.addEventListener){
    window.addEventListener('scroll', updateDockBar, false);
  }else if (window.attachEvent){
    window.attachEvent('onscroll', updateDockBar);
  }
}
function updateDockBar(){
  if (window.XMLHttpRequest){
    var offset = 0;
    if (window.pageYOffset){
    	offset = window.pageYOffset;
    }else if (document.documentElement && document.documentElement.scrollTop){
    	offset = document.documentElement.scrollTop;
    }else if (document.body){
    	offset = document.body.scrollTop;
    }
    if (offset > 500){
      var top = offset;
    }else{
      var top = 55;
    }
    //debug('offset->' + offset);
   // dockBarNode.style.top = top + 'px';
  }
}

function load()
{
	try {	
		window.parent.scrollTo(0,0);
	} catch(err)
	{
		debug(err.message);
	}
}

function uniLogoClicked() {
   window.open('http://www.materials.manchester.ac.uk');
}

function uniLogoMove(evt) {
	try {
		if (document.all)
		{
			document.getElementById('uniLogoLabel').style.left=window.event.clientX+10+'px';
			document.getElementById('uniLogoLabel').style.top=window.event.clientY+'px';
		}
		else
		{
			//debug(document.getElementById('uniLogoLabel').style.top);
			parent.document.getElementById('uniLogoLabel').style.left=evt.pageX+10+'px';
			parent.document.getElementById('uniLogoLabel').style.top=evt.pageY+'px';
			//debug('left->' + parent.document.getElementById('uniLogoLabel').style.left + ' top-> ' + parent.document.getElementById('uniLogoLabel').style.top +
			//'mouse left->' + evt.pageX + ' mouse top->' + evt.pageY);
		}
	}
	catch(err)
	{
		debug(err.message);
	}
}

var dwin = null; 
function debug(msg) { 
	if ((dwin == null) || (dwin.closed)) { 
		dwin = window.open('','debugconsole','scrollbars=yes,resizable=yes,height=150,width=300'); 
		dwin.document.open('text/html', 'replace'); 
		dwin.document.writeln('<html><head><title>Javascript debug console</title><style type="text/css">');
		dwin.document.writeln('body {font-size: 8pt; font-family: "Tahoma"; background-color: white; margin: 0px; overflow: hidden;}');
		dwin.document.writeln('input {font-size: 8pt; font-family: "Tahoma";}');
		dwin.document.writeln('div#actions {background-color: #e5e5e5;border-bottom: 1px solid grey; padding: 5px;}');	
		dwin.document.writeln('div#debug {padding: 5px; width:100%; overflow:auto; height:120px; }');		
		dwin.document.writeln('</style></head><body><div id="actions"><input type="button" value="Clear" onClick="document.getElementById(\'debug\').innerHTML=\'\'"/> <input type="button" value="Close" onClick="self.close()"/></div><div id="debug">');
	}
	dwin.document.writeln(msg+'<br/>'); 
	var objDiv = dwin.document.getElementById('debug');
	objDiv.scrollTop = 10000;
	dwin.focus();
}

function ToolsMouseMove(evt, id) {
	try {
		if (document.all)
		{
		    var offset = 0;
		    if (window.pageYOffset){
		    	offset = window.pageYOffset;
		    }else if (document.documentElement && document.documentElement.scrollTop){
		    	offset = document.documentElement.scrollTop;
		    }else if (document.body){
		    	offset = document.body.scrollTop;
		    }
			document.getElementById(''+id+'').style.left=window.event.clientX+10+'px';
			document.getElementById(''+id+'').style.top=window.event.clientY+offset+'px';
		}
		else
		{
			//debug(document.getElementById(''+id+'').style.top);
			parent.document.getElementById(''+id+'').style.left=evt.pageX+10+'px';
			parent.document.getElementById(''+id+'').style.top=evt.pageY+'px';
			//debug('left->' + parent.document.getElementById(''+id+'').style.left + ' top-> ' + parent.document.getElementById(''+id+'').style.top +
			//'mouse left->' + evt.pageX + ' mouse top->' + evt.pageY);
		}
	}
	catch(err)
	{
		debug(err.message);
	}
/*	try
	{
	    var offset = 0;
	    if (window.pageYOffset){
	    	offset = window.pageYOffset;
	    }else if (document.documentElement && document.documentElement.scrollTop){
	    	offset = document.documentElement.scrollTop;
	    }else if (document.body){
	    	offset = document.body.scrollTop;
	    }
	    
		if (document.all)
		{
//debug('ToolsMouseMove document.all offset->' + offset);
			document.getElementById(''+id+'').style.left=window.event.clientX+'px';
			document.getElementById(''+id+'').style.top=window.event.clientY-30+offset+'px';
		}
		else
		{
//debug('ToolsMouseMove else-> offset->' + offset + ' id->' + id + ' x->' + evt.pageX + ' y->' + evt.pageY);
			document.getElementById(''+id+'').style.left=evt.pageX+'px';
			document.getElementById(''+id+'').style.top=evt.pageY-30+offset+'px';
		}
	} catch (err)
	{
		debug('ToolsMouseMove err->' + err.message);
	}*/
}

function TopMenuMouseMove( evt, id) {
	try
	{
		if (document.all)
		{
//debug('TopMenuMouseMove document.all x->' + window.event.clientX + ' y->' + window.event.clientY);
			document.getElementById(''+id+'').style.left=window.event.clientX+'px';
			document.getElementById(''+id+'').style.top=window.event.clientY+20+'px';
		}
		else
		{
//debug('else id->' + id + ' x->' + evt.pageX + ' y->' + evt.pageY);
			document.getElementById(''+id+'').style.left=evt.pageX+'px';
			document.getElementById(''+id+'').style.top=evt.pageY+20+'px';
		}
	} catch (err)
	{
		debug('ToMenuMouseMove err->' + err.message);
	}
}

function toggleDiv(id,flagit) {
	try {
		//if (document.all) 
		//	debug('visibility->' + document.all[''+id+''].style.visibility );
		//else if (document.getElementById) 
		//	debug('visibility->' + document.getElementById(''+id+'').style.visibility );
		if (flagit=="1"){
			if (document.layers) document.layers[''+id+''].visibility = "show";
			else if (document.all) document.all[''+id+''].style.visibility = "visible";
			else if (document.getElementById) document.getElementById(''+id+'').style.visibility = "visible";
		}
		else
		{
			if (flagit=="0"){
				if (document.layers) document.layers[''+id+''].visibility = "hide";
				else if (document.all) document.all[''+id+''].style.visibility = "hidden";
				else if (document.getElementById) document.getElementById(''+id+'').style.visibility = "hidden";
			}
		}
	}catch(err)
	{
		debug(err.message);
	}
}


function autoIframe(){
	try{
		var minHeight = 530;
		if (document.all)
		{
			var frame = document.all['section_contents'];
			//debug(frame.style.height + '- height-' + document.frames.section_contents.document.all['sectionTable'].scrollHeight + ' -offsetSet-' + 
			//	document.all[frame.id].document.body.offsetHeight + 
			//	'- scrollHeight' + document.frames[frame.id].document.body.scrollHeight);
			//alert(document.frames.section_contents.document.all['sectionTable'].scrollHeight);
			if (frame != null)
			{
				if (document.frames.section_contents.document.all['sectionTable'].scrollHeight > minHeight)
					frame.style.height = document.frames.section_contents.document.all['sectionTable'].scrollHeight;
				else
				{
					frame.style.height = document.frames.section_contents.document.all['sectionTable'].height = minHeight;				
				}
			}
			else
			{
				//document.all['leftFrame'].height = document.all['rightFrame'].height = 0;
				//document.all['leftFrame'].height = document.all['rightFrame'].height = document.all['sectionTable'].scrollHeight-85-53;
				//alert(document.all['sectionTable'].scrollHeight);
			}
			//debug(frame.style.height + '- offsetSet-' + 
			//	document.all[frame.id].document.body.offsetHeight + 
			//'- scrollHeight' + document.frames[frame.id].document.body.scrollHeight);
		}
		else if (document.getElementById) //Mozilla-based
		{
		
//document.getElementById("section_contents").height=600 // required for Moz, value can be "", null, or integer 
//document.getElementById('section_contents').height=window.frames["section_contents"].document.body.scrollHeight 
		
			if (window.frames['section_contents'] != null)			
			{
				var frame = window.frames['section_contents'].document; //document.getElementById('section_contents');
				//frame.getElementById('rightFrame').height  = frame.getElementById('leftFrame').height = 0;
				//document.getElementById('section_contents').height = 0;
				if (frame.getElementById('sectionTable').clientHeight > minHeight)
				{
					document.getElementById('section_contents').height = frame.getElementById('sectionTable').clientHeight;
				}
				else
				{
					document.getElementById('section_contents').height = minHeight;
					frame.getElementById('sectionTable').height = minHeight;
				}
				
				
				
				//frame.getElementById('rightFrame').height  = frame.getElementById('leftFrame').height = frame.getElementById('sectionTable').clientHeight - 136;
			}
			//frame.getElementById('leftFrame').height = frame.getElementById('rightFrame').height = frame.getElementById('sectionText').scrollHeight
			//debug('bg-' + frame.getElementById('leftFrame').height + '-' + document.getElementById('section_contents').height + '-' + frame.getElementById('sectionTable').scrollHeight);
		}
		//var frame;
		//if (document.layers) frame=document.layers[''+frameId+''];
		//else if (document.all) frame=document.all[''+frameId+''];
		//else if (document.getElementById) frame=parent.document.getElementById(''+frameId+'');
/*		
		if (document.all) //IE
		{
			document.all['section_contents'].style.height = document.all['section_contents'].document.body.scrollHeight + 'px';
//			document.all['section_contents_cell'].style.height = document.all['section_contents'].style.height + 'px';
			//frameId.style.height = frameId.document.body.scrollHeight + 60 + 'px';
			debug("1.IE frame->" + document.all['section_contents'].style.height + "offsetHeight->" + document.all['section_contents'].contentWindow.document.body.offsetHeight );
		}
		else if (document.getElementById) //Mozilla-based
		{
			document.getElementById('section_contents').style.height = 
					document.getElementById('section_contents').contentWindow.document.body.scrollHeight  + 'px';
//			parent.document.getElementById('section_contents_cell').style.height = 800 + 'px';
//					parent.document.getElementById('section_contents').style.height + 'px';
			//frameId.style.height = frameId.contentWindow.document.body.scrollHeight + 'px';
			debug("2.Mozilla-based frame->" + document.getElementById('section_contents').style.height + 
				"offsetHeight->" + document.getElementById('section_contents').contentWindow.document.body.scrollHeight );
		}
		else if (document.layers)
		{
			parent.document.layers['section_contents'].style.height = parent.document.layers['section_contents'].contentDocument.height + 'px';
//			parent.document.layers['section_contents_cell'].style.height = document.layers['section_contents'].style.height;
			//frameId.style.height = frameId.contentWindow.document.body.scrollHeight + 'px';
		}
*/		
		//frame.style.height = frame.contentWindow.document.body.offsetHeight + 'px'
		
		//frame = document.getElementById(frameId);
		//innerDoc = (frame.contentDocument) ? frame.contentDocument : frame.contentWindow.document;
		//objToResize = (frame.style) ? frame.style : frame;
		//if (innerDoc.body.scrollHeight + 20 <500)
		//	objToResize.height = 500+'px';
		//else
		//	objToResize.height = innerDoc.body.scrollHeight + 20+'px';
		//debug('objToResize->');
		//sectionTextCell = parent.section_contents.document.getElementById('sectionText');
		//alert(sectionTextCell.style.background.width);
	}
	catch(err){
		debug(err.message);
		//alert(err.message);
	}
}

// schedule functions
//OnloadScheduler.schedule(initialiseDockBar);




















