﻿function togglemenu(targetId) {
	target = document.getElementById(targetId);
	     if (target.style.display == "none"){
	          target.style.display="";
              } 
              
              else 
              	{
             		target.style.display="none";
                }
      }


function MSOLayout_GetRealOffset(StartingObject,OffsetType, EndParent)
{
	
	var realValue=0;
	if(!EndParent) EndParent=document.body;
	for (var currentObject=StartingObject; currentObject !=EndParent && currentObject && currentObject !=document.body; currentObject=currentObject.offsetParent)
	{
		realValue+=eval('currentObject.offset'+OffsetType)
	}
	return realValue;
}


function bookmarkthis(){

	var title = document.getElementsByTagName("title")[0].text; 
   var url = location.href; 


  if ((navigator.appName == "Microsoft Internet Explorer") && (parseInt(navigator.appVersion) >= 4)) {

  window.external.AddFavorite(url,title);

  } else if (navigator.appName == "Netscape") {

    window.sidebar.addPanel(title,url,"");

  } else {

    alert("Press CTRL-D (Netscape) or CTRL-T (Opera) to bookmark");

  }

}


function plusminus(obj) {
	
	var el = document.getElementById(obj);
	if 	(el.style.backgroundImage != 'url(/images/negative.gif)')
	{
		el.style.backgroundImage = 'url(/images/negative.gif)';
	}
	
	else {
		el.style.backgroundImage = 'url(/images/plus.gif)';
	
	}
}


function mailpage() 
{ 
	mail_str = "mailto:?subject= Recommended Edexcel Link"; 
	mail_str += "&body= " + document.title; 
	mail_str += "... at: " + location.href; 
	location.href = mail_str; 
} 	

function switchImage(obj) {
	
	var el = document.getElementById(obj);
	if 	(el.style.backgroundImage != 'url(/pages/files/expandcollapse_03.gif)')
	{
		el.style.backgroundImage = 'url(/pages/files/expandcollapse_03.gif)';
	}
	
	else {
		el.style.backgroundImage = 'url(/pages/files/expandcollapse_06.gif)';
	
	}
}

function switchImage1(obj) {
	
	var el = document.getElementById(obj);
	if 	(el.style.backgroundImage != 'url(/pages/files/expandcollapse_06.gif)')
	{
		el.style.backgroundImage = 'url(/pages/files/expandcollapse_06.gif)';
	}
	
	else {
		el.style.backgroundImage = 'url(/pages/files/expandcollapse_03.gif)';
	
	}
}


function switchMenu(obj) {
	var el = document.getElementById(obj);
	if ( el.style.display != "none" ) {
		el.style.display = 'none';
	}
	else {
		el.style.display = '';
	}
}


function switchMenu3(obj) {
	var el = document.getElementById(obj);
	if ( el.style.display != "inline" ) {

		el.style.display = 'inline';
	}
	else {
		el.style.display = 'none';
		
	}
}

function ExpGroupByNew(formObj,el)
{
// this is the part that prevents it working in Firefox!
//	if (browseris.nav) {
//		return;
//		}

	if ((browseris.w3c) && (!browseris.ie)) {
		docElts = document.getElementsByTagName("body")[0].getElementsByTagName("*")
	}
	else { docElts=document.all; }
	var numElts=docElts.length;
	switch(el)
	{
	case "img":
		parentNode=formObj.parentNode;
		if (parentNode.nodeName == "TD") {
		  paras=parentNode.getElementsByTagName("P");
		  titleP=paras[0];
		  }
		images=formObj.getElementsByTagName("IMG");
		img=images[0];
		break;
	case "p":
		titleP = formObj;
		parentNode=formObj.parentNode;
		if (parentNode.nodeName == "TD") {
		    imgLink = parentNode.firstChild;
		    if (imgLink.nodeName == "A") {
	    		images=imgLink.getElementsByTagName("IMG");
				img=images[0];
				}
			else { return; }
			}
		break;
	case "span":
		parentNode=formObj.parentNode;
		if (parentNode.nodeName == "P") {
			titleP = parentNode;
			parentNode=titleP.parentNode;
	 		imgLink = parentNode.firstChild;
			if (parentNode.nodeName == "TD") {
		    	imgLink = parentNode.firstChild;
		    	if (imgLink.nodeName == "A") {
	    			images=imgLink.getElementsByTagName("IMG");
					img=images[0];
					}
				else { return; }
				}
			else { return; }
			}
		break;
	default: 
		return;
		break;
	}
	srcPath=img.src;
	index=srcPath.lastIndexOf("/");
	imgName=srcPath.slice(index+1);
	if (imgName=='plus.gif')
	{
		fOpen=true;
		displayStr="";
		titleStyle = "openAZgroup";
		// value of displayStr changed from 'none' to prevent 'phantom rows' problem in Firefox
		img.src='/images/negative.gif';
	}
	else
	{
		fOpen=false;
		displayStr="none";
		titleStyle="";
		img.src='/images/plus.gif';
	}
	oldName=img.name;
	img.name=img.alt;
	img.alt=oldName;
	titleP.className = titleStyle;
	spanNode=img;

	while(spanNode !=null)
	{
		spanNode=spanNode.parentNode;
		if (spanNode !=null &&
			spanNode.id !=null &&
			spanNode.id.length > 5 &&
			spanNode.id.substr(0, 5)=="group")
			break;
	}
	parentNode=spanNode;
	while(parentNode !=null)
	{
		parentNode=parentNode.parentNode;
		if (parentNode !=null &&
			parentNode.nodeName=="TABLE")
			break;
	}
	lastNode=null;
	if (parentNode !=null)
	{
		lastNode=parentNode.lastChild;
		if (lastNode !=null && lastNode.nodeName=="TBODY")
			lastNode=lastNode.lastChild;
		if (lastNode !=null && lastNode.nodeName=="TR" && lastNode.lastChild !=null)
			lastNode=lastNode.lastChild;
	}
for(var i=0; i < numElts; i++) {
		var childObj=docElts[i];
		if (childObj==spanNode)
			break;
	}
	ID=spanNode.id.slice(5);
	for(var j=i+1; j<numElts; j++)
	{
		var childObj=docElts[j];
		if (childObj.id.length > 5 &&
			childObj.id.substr(0, 5)=="group")
		{
			curID=childObj.id.slice(5);
			if (curID <=ID)
				return;
		}
		parentNode=childObj;
		while(parentNode !=null)
		{
			parentNode=parentNode.parentNode;
			if (parentNode==spanNode)
				break;
		}
		if (parentNode==spanNode)
			continue;
		if (childObj !=img &&
			childObj.nodeName=="IMG" &&
			childObj.src &&
			childObj.src.slice(childObj.src.length - 25)=='/images/plus.gif')
		{
			childObj.src='/images/negative.gif';
			oldName=childObj.name;
			childObj.name=childObj.alt;
			childObj.alt=oldName;
		}
		if (childObj.nodeName==spanNode.nodeName &&
			childObj.id !="footer")
		{
			childObj.style.display=displayStr;
		}
		if ((childObj.nodeName=="TABLE" && lastNode==null) || childObj==lastNode)
			break;
	}
}




