//GLobal Arrays ... 
var NUMBER_IMGS = 40;
var RANDOM_IMGS = 21;
//var titleArray = new Array(); 
var parentArray = new Array(NUMBER_IMGS);
var descriptArray = new Array(NUMBER_IMGS);
var galleryImageMArray = new Array(NUMBER_IMGS); 
var galleryImageHArray= new Array(NUMBER_IMGS); 
var randomArray = new Array(RANDOM_IMGS); 
var fromGallPath =false;
var fromGallImgPath = "";
var iwidth =0;
var iheight = 0; 
var textF =" ";
var gallerySubImageMArray = new Array(); 
var pLinkArray = new Array();
//New 
var myimages = new Array();
var intoMain = true;
var theSelected =0;
var galleryLoaded = false;
//var myCheck = false;
 var nPath =" ";
 var toXML;
 var posx;
 var posy;
 //var _old_id =" ";
 var nodeToMatch="none";
 var signalM = new Array();
 

//when we go have linked on proj...
function loadProj()
{
	theSelected =1;
	loadXMLDoc("_xml/mainNav.xml");
}

function loadLinks()
{
	theSelected =3;
	loadXMLDoc("_xml/Links.xml");
}

function loadContacts()
{
	theSelected =4;
	loadXMLDoc("_xml/mainNav.xml");
}

function loadProfile()
{
	theSelected =2;
	loadXMLDoc("_xml/mainNav.xml");
}

function loadMain()
{
	// load the main xml file ... 
	var nav = document.getElementById("nav");
	nav.style.width="100%";
	loadTheGallery();
}

function loadLargeMImage(path)
	{
		
		image_1 = new Image();
   		image_1.src =path ;
		//DetectImageSize(image_1);
		var mainDiv = document.getElementById("lg");
		
		imgDiv = document.createElement("div");
		var largeMImg = document.createElement("img");
		largeMImg.setAttribute("src",image_1.src);
		imgDiv.appendChild(largeMImg);
		//test style...
	//if (is_ie5up)
	//{
		
	//imgDiv.style.setAttribute('cssText',"padding: 4px 6px 4px 6px; background-color:#6BC336;width:" + iwidth + ";height:" + iheight + "");
	//}
	//else
	//{
	//imgDiv.setAttribute("style","padding: 4px 6px 4px 6px; background-color:#6BC336;width:" + iwidth + ";height:" + iheight + "");
	//}
	//alert(image_1.src);
	mainDiv.appendChild(imgDiv);
 }


function loadXMLDoc(dname) 
{
// branch for native XMLHttpRequest object
    if (window.XMLHttpRequest) {
        req = new XMLHttpRequest();
        req.onreadystatechange = processReqChange;
        req.open("GET", dname, true);
        req.send(null);
    // branch for IE/Windows ActiveX version
    } else if (window.ActiveXObject) {
        isIE = true;
        req = new ActiveXObject("Microsoft.XMLHTTP");
        if (req) {
           req.onreadystatechange = processReqChange;
            req.open("GET", dname, true);
            req.send();
        }
    }
}



// handle onreadystatechange event of req object
function processReqChange() 
{
    // only if req shows "loaded"
    if (req.readyState == 4) {
        // only if "OK"
        if (req.status == 200) {
			var name =req.responseXML.getElementsByTagName("mainTitle");
			var titlePage =name[0].childNodes[0].nodeValue;
			
			if((titlePage =="mainNav.xml") &&(theSelected ==1))
			{
           	buildSubLinksProj();
			loadTheGallery();
			}
			else if((titlePage =="Links.xml") && (theSelected ==3))
			{
           		buildSubLinksLinks();
			}
			
			else if((titlePage =="mainNav.xml") &&(theSelected ==2))
			{
            buildSubLinksProf();
			}
			else if((titlePage =="mainNav.xml") &&(theSelected ==4))
			{
            buildSubLinksContacts();
			}
			else if (titlePage =="mainGallery.xml") 
			{
				buildTheGallery();
			}
			else {buildSubGallery();}
         } else {
            alert("There was a problem retrieving the XML data:\n" +
             req.statusText);
         }
    }
}

function getStyleForSubLinks(subNavDiv)
{
			if (is_ie5up)
			{
				subNavDiv.style.setAttribute('cssText',"margin: 0px 0px 1px 0px; padding-left: 6px; padding-top: 3px; padding-bottom: 3px;");
			}
			else
			{
				// background-color: #1e1602;
				subNavDiv.setAttribute("style","margin: 0px 0px 1px 0px; padding-left: 6px; padding-top: 3px; padding-bottom: 3px;");
			}
}

function clearTheDivs()
{
	//clear subProjNavDiv
	var navDiv= document.getElementById("sm");
	while (navDiv.firstChild) {navDiv.removeChild(navDiv.firstChild);}
	//clear ProfileDivs
	var divToShow = document.getElementById("profile");
	divToShow.style.display = "none";
	var divToShowA = document.getElementById("cc");
	divToShowA.style.display = "none";
	//clear mainContent Div
	var largeDiv = document.getElementById("lg");
	while (largeDiv.firstChild) {largeDiv.removeChild(largeDiv.firstChild);}
	//clear otherSublinks
	var navPro = document.getElementById("nav_pro");
	while (navPro.firstChild) {navPro.removeChild(navPro.firstChild);}
	navPro.style.display = "inline";
	//var divToShowB = document.getElementById("links");
	//divToShowB.style.display = "none";
	
}

// Show The Brown Background on Nav Items.
function turnOnOff(w,x,y,z)
{
	var a = document.getElementById("a");
	a.style.width="104px";
	a.style.backgroundColor=(w);
	var b = document.getElementById("b");
	b.style.width="104px";
	b.style.backgroundColor=(x);
	var c = document.getElementById("c");
	c.style.width="104px";
	c.style.backgroundColor=(y);
	var d = document.getElementById("d");
	d.style.width="104px";
	d.style.backgroundColor=(z);
}


//BUILD THE SUB TEXT NAVIGATION
function buildSubLinksLinks()
{
	
	//Turn off
	clearTheDivs();
	var MTitle =new Array();
	var signalArray = new Array();
	var title = req.responseXML.getElementsByTagName("title");
	var linkS = req.responseXML.getElementsByTagName("linkS");
	var idForLinks = req.responseXML.getElementsByTagName("idL");
		//var mNumber =0;
		//var iter=0;
	//build the subnav
	var nav = document.getElementById("nav");
	nav.style.width="104px";
	var navPro = document.getElementById("nav_pro");
	
	//turnOnOff("","","#1e1602","");
	
	var MSect = req.responseXML.getElementsByTagName("MTitle");
	for(var i =0; i<MSect.length;i++)
	{
		MTitle[i] = MSect[i].childNodes[0].nodeValue;
		//mNumber = MNum[i].childNodes[0].nodeValue;
		
		var subNavDiv= document.createElement("div");
		getStyleForSubLinks(subNavDiv);
		signalArray[i] =0;
		var ID = i;
		var aTag = document.createElement("a");
		//aTag.setAttribute("href","#"+titleArray[i]);
		// we need to pass the correct array....
		aTag.onclick = (function(p,q,r,s) {return function(){ loadLinkDiv(p,q,r,s) }})(idForLinks,ID,title,linkS);
		subTitle = document.createTextNode(MTitle[i]);
		subNavDiv.appendChild(subTitle);
		//navPro.appendChild(subNavDiv);
		textF = document.createElement("span");
		textF.style.color = "#8B8E91";
		textF.style.textDecoration  = "none";
		textF.setAttribute("id",MTitle[i]);
		textF.style.cursor = "pointer";
		textF.onmouseover = (function(p) {return function(){ mouseOverT(p) }})(textF);
		textF.onclick = (function(p,q,r) {return function(){ hyperlink(p,q,r) }})(i,MTitle,signalArray);
		textF.onmouseout = (function(p,q,r,s) {return function(){ mouseOffT(p,q,r,s) }})(textF,i,signalArray,MTitle);
		textF.appendChild(subTitle);
		aTag.appendChild(textF);
		subNavDiv.appendChild(aTag);
		navPro.appendChild(subNavDiv);
	}
}

function loadLinkDiv(idForLinks,ID,title,linkS)
{
	//alert(ID);
	var innerDiv = document.getElementById("lg");
	while (innerDiv.firstChild) {innerDiv.removeChild(innerDiv.firstChild);}
	var linkArray = new Array();
	var titleArray = new Array(); 
	//var divToShowB=document.getElementById("links");
	//divToShowB.style.display = "inline";
 	//var innerDiv= document.getElementById("lLinks");
	var k=0;
	
	//take the correct elements out...
	for(var j =0; j< title.length;j++)
	{
		if(idForLinks[j].childNodes[0].nodeValue ==ID)
		{
			var linkDiv= document.createElement("div");
			getStyleForSubLinks(linkDiv);
			titleArray[k] =title[j].childNodes[0].nodeValue;
			linkArray[k] =linkS[j].childNodes[0].nodeValue;
			var path = linkArray[k];
			var aTag = document.createElement("a");
			aTag.setAttribute("href",path);
			aTag.setAttribute("target","_blank");
			var subTitle = document.createTextNode(titleArray[k]);
			//var bTag = document.createElement("br");
			//test...
			var textF = document.createElement("font");
			//textF.setAttribute("id",titleArray[k]);
			textF.style.cursor = "pointer";
			//textF.onmouseover = (function(p) {return function(){ mouseOverT(p) }})(textF);
			//textF.onclick = (function(p) {return function(){ mouseDownT(p) }})(path);
			//textF.onmouseout = (function(p) {return function(){ mouseOffT(p) }})(textF);
			textF.appendChild(subTitle);
			//textF.appendChild(bTag);
			aTag.appendChild(textF);
			linkDiv.appendChild(aTag);
			innerDiv.appendChild(linkDiv);
			//innerDiv.appendChild(bTag);
			k++;
		}
		
	}
}

// Profile Section.
function buildSubLinksProf()
{
	nodeToMatch="none";
	clearTheDivs();
	
	var linkArray = new Array();
	var titleArray = new Array(); 
	var signalArray = new Array();
	
	//for proj...
	var nav = document.getElementById("nav");
	nav.style.width="104px";
	var navPro = document.getElementById("nav_pro");
	titleArray[0]="Design Approach";
	titleArray[1]="About Cameron";
	
	//turnOnOff("#1e1602","","","");
	
	
	for(i = 0; i< titleArray.length; i++)
	{
		var subNavDiv= document.createElement("div");
		getStyleForSubLinks(subNavDiv);
		signalArray[i] =0;
		var ID = i;
		var aTag = document.createElement("a");
		//aTag.setAttribute("href","#"+titleArray[i]);
		aTag.onclick = (function(p) {return function(){ loadProfDiv(p) }})(ID);
		//aTag.onclick =  (function(p,q,r) {return function(){ hyperlink(p,q,r) }})(i,titleArray,signalArray);
		subTitle = document.createTextNode(titleArray[i]);
		//test...
		textF = document.createElement("span");
		textF.style.color = "#8B8E91";
		textF.style.textDecoration  = "none";
		textF.setAttribute("id",titleArray[i]);
		textF.style.cursor = "pointer";
		textF.onmouseover = (function(p) {return function(){ mouseOverT(p) }})(textF);
		textF.onclick = (function(p,q,r) {return function(){ hyperlink(p,q,r) }})(i,titleArray,signalArray);
		textF.onmouseout = (function(p,q,r,s) {return function(){ mouseOffT(p,q,r,s) }})(textF,i,signalArray,titleArray);
		textF.appendChild(subTitle);
		aTag.appendChild(textF);
		subNavDiv.appendChild(aTag);
		navPro.appendChild(subNavDiv);
		
	}
}

// Contacts Section.
function buildSubLinksContacts()
{
	nodeToMatch="none";
	clearTheDivs();
	var linkArray = new Array();
	var titleArray = new Array(); 
	var signalArray = new Array();
	
	//for proj...
	var nav = document.getElementById("nav");
	nav.style.width="104px";
	var navPro = document.getElementById("nav_pro");
	
	//turnOnOff("","","","#1e1602");
	
	for(i = 0; i< titleArray.length; i++)
	{
		
		var subNavDiv= document.createElement("div");
		getStyleForSubLinks(subNavDiv);
		signalArray[i] =0;
		var ID = i;
		var aTag = document.createElement("a");
		aTag.onclick =  (function(p,q,r) {return function(){ hyperlink(p,q,r) }})(i,titleArray,signalArray);
		subTitle = document.createTextNode(titleArray[i]);
		//test...
		textF = document.createElement("span");
		textF.style.color = "#8B8E91";
		textF.style.textDecoration  = "none";
		textF.setAttribute("id",titleArray[i]);
		textF.style.cursor = "pointer";
		textF.onmouseover = (function(p) {return function(){ mouseOverT(p) }})(textF);
		textF.onclick = (function(p,q) {return function(){ mouseDownT(p,q) }})(path,textF);
		textF.onmouseout = (function(p,q,r) {return function(){ mouseOffT(p,q,r,s) }})(textF,i,signalArray,titleArray);
		
		textF.appendChild(subTitle);
		aTag.appendChild(textF);
		subNavDiv.appendChild(aTag);
		navPro.appendChild(subNavDiv);
	}
	fillContactBox();
}

function fillContactBox()
{
	var contactDiv = document.getElementById("lg");
	while (contactDiv.firstChild) {contactDiv.removeChild(contactDiv.firstChild);}
	var divEmail = document.createElement("div");
	var divPhone = document.createElement("div");
	var divFax = document.createElement("div");
	var divAddress = document.createElement("div");
	getStyleForSubLinks(divEmail);
	getStyleForSubLinks(divPhone);
	getStyleForSubLinks(divFax);
	getStyleForSubLinks(divAddress);
	var textP = document.createElement("span");
	textP.style.color = "#8B8E91";
	textP.style.textDecoration  = "none";
	var textPhone = document.createTextNode("Tel: +1 403.259.3081");
	textP.appendChild(textPhone);
	
	var textA = document.createElement("span");
	textA.style.color = "#8B8E91";
	textA.style.textDecoration  = "none";
	var textAddress = document.createTextNode("Address: Calgary, AB (Canada) / Scottsdale, Arizona (USA)");
	textA.appendChild(textAddress);
	
	var textF = document.createElement("span");
	textF.style.color = "#8B8E91";
	textF.style.textDecoration  = "none";
	var textFax = document.createTextNode("Fax: +1 403.259.3091");
	textF.appendChild(textFax);
	
	var aTag = document.createElement("a");
	aTag.setAttribute("href","mailto:info@campbelldesign.ab.ca");
	var textE = document.createElement("span");
	textE.style.color = "#8B8E91";
	textE.style.textDecoration  = "none";
	var textEmail = document.createTextNode("Email: info@campbelldesign.ab.ca");
	textE.onmouseover = (function(p) {return function(){ mouseOverT(p) }})(textE);
	textE.onmouseout = (function(p) {return function(){ mouseOffE(p) }})(textE);
	textE.appendChild(textEmail);
	aTag.appendChild(textE);
	
	divPhone.appendChild(textP);
	divAddress.appendChild(textA);
	divFax.appendChild(textF);
	divEmail.appendChild(aTag);
	
	contactDiv.appendChild(divEmail);
	contactDiv.appendChild(divPhone);
	contactDiv.appendChild(divFax);
	contactDiv.appendChild(divAddress);
}

// Stub
function hyperlink(i,titleArray,signalArray) 
{ 
//clear
for(var z=0; z<signalArray.length; z++)
{
	//reset the signal Array
	signalArray[z] =0;
	var oldAnchor = document.getElementById(titleArray[z]);
	oldAnchor.style.color = "#8B8E91";
	//reset the links ...
}
	signalArray[i] =1;
	//relation
	//signalArray[m]=1;
	var newAnchor = document.getElementById(titleArray[i]);
		newAnchor.style.color = "#FFFFFF";

}
// Stub

// Projects Section.
function  buildSubLinksProj() 
{
	clearTheDivs();
	//turnOFF
	var linkArray = new Array();
	var titleArray = new Array(); 
	 var signalArray = new Array();
	
	//for proj...
	var nav = document.getElementById("nav");
	nav.style.width="104px";
	var navPro = document.getElementById("nav_pro");

	var title=req.responseXML.getElementsByTagName("title");
	var linkS=req.responseXML.getElementsByTagName("linkS");
	
	//turnOnOff("","#1e1602","","");
	
	for (var i=0;i<title.length;i++)
  	{ 
  	titleArray[i] = (title[i].childNodes[0].nodeValue);
  	linkArray[i] = (linkS[i].childNodes[0].nodeValue);
	signalArray[i] =0;
 
  	}
	
	for(i = 0; i< titleArray.length; i++)
	{
		
		var subNavDiv= document.createElement("div");
		getStyleForSubLinks(subNavDiv);
		
		var path = linkArray[i];
		var aTag = document.createElement("a");
		//aTag.setAttribute("href","#");
		aTag.onclick =  (function(p,q,r) {return function(){ hyperlink(p,q,r) }})(i,titleArray,signalArray);
		//aTag.setAttribute("id",i);
		subTitle = document.createTextNode(titleArray[i]);
		//test...
		textF = document.createElement("span");
		textF.style.color = "#8B8E91";
		textF.style.textDecoration  = "none";
		textF.setAttribute("id",titleArray[i]);
		textF.style.cursor = "pointer";
		textF.onmouseover = (function(p) {return function(){ mouseOverT(p) }})(textF);
		textF.onclick = (function(p,q) {return function(){ mouseDownT(p,q) }})(path,textF);
		textF.onmouseout = (function(p,q,r,s) {return function(){ mouseOffT(p,q,r,s) }})(textF,i,signalArray,titleArray);
		textF.appendChild(subTitle);
		aTag.appendChild(textF);
		var itemLink = linkArray[i];
		subNavDiv.appendChild(aTag);
		navPro.appendChild(subNavDiv);
		
	}
	//setupZoom();
}

function mouseOverT(textF)
		{
			textF.style.color = "#FFFFFF";
			//zoomOut(path);
			
		}
		
		function mouseDownT(path,textF)
		{
			
			var mainDiv = document.getElementById("lg");
			//REMOVE IMG IF BROUGHT FROM GALLERY
			while (mainDiv.firstChild) {mainDiv.removeChild(mainDiv.firstChild);}
			nodeToMatch ="none";
			//toXML=true;
		   // nPath = path;
			//var myclick=getCLICK();
			//alert(myclick);
			//if (myclick==true)
			//{
			//zoomOut();
			//}
			//else
			//{
				
				loadSubXML(path);
			//}
		
		}
		

		function mouseOffT(textF,i,signalArray,titleArray)
		{
			var m=-1;
			var notFound=false;
			//clear
			for(var k=0; k< signalM.length;k++)
			{
				 signalM[k]=0;
			}
			
			while ((notFound ==false) && (nodeToMatch!="none"))
			{
				if (titleArray[m]==nodeToMatch)
				{
					
					signalM[m] =1;
					notFound=true;
					//alert(nodeToMatch);
				}
				else
				{
				m++;
				}
			}
			
			if(signalM[m]==1)
			{
				var toChange = document.getElementById(nodeToMatch);
				
				toChange.style.color = "#FFFFFF";
			}
			
		  if((signalArray[i]==0)&&(m!=i))
			{
			textF.style.color = "#8B8E91";
			}
			
			else if(signalArray[i] ==1) 
			{
			textF.style.color = "#FFFFFF";
			}
			
			
		}
			
		function mouseOffE(textE)
		{
			textE.style.color = "#8B8E91";
			
		}

function loadSubXML(path)
		{
			loadXMLDoc(path);
		}
		
function loadProfDiv(ID)
{
	//designApproach
	if(ID==0)
	{
		var divToShowA = document.getElementById("cc");
		divToShowA.style.display = "none";
		
		var divToShow = document.getElementById("profile");
		divToShow.style.display = "inline";
	}
	else if(ID==1)
	{
		var divToShow = document.getElementById("profile");
		divToShow.style.display = "none";
		
		var divToShowA = document.getElementById("cc");
		divToShowA.style.display = "inline";
	}
}



function loadTheGallery()
{
	loadXMLDoc("_xml/mainGallery.xml");
}

function buildTheGallery()
{
	nodeToMatch ="none";
	var galleryImageThArray = new Array(NUMBER_IMGS); 
	var altTagArray = new Array(NUMBER_IMGS);
	var pathOne=req.responseXML.getElementsByTagName("link");
	var rPath = (pathOne[0].childNodes[0].nodeValue);
	var pathThImage=req.responseXML.getElementsByTagName("thumbNail");
	var pathMImage=req.responseXML.getElementsByTagName("mainImg");
	var pathHImage = req.responseXML.getElementsByTagName("homeImg");
	var altImage=req.responseXML.getElementsByTagName("title");
	var descriptImage = req.responseXML.getElementsByTagName("Description");
	var getParent = req.responseXML.getElementsByTagName("Project");
	var getLParent = req.responseXML.getElementsByTagName("ProjectL");
	var signalArray = new Array();

	
	
	for (var i=0;i<galleryImageThArray.length;i++)
  	{ 
 	 galleryImageThArray[i] = (rPath+(pathThImage[i].childNodes[0].nodeValue));
  	 galleryImageMArray[i] = (rPath+(pathMImage[i].childNodes[0].nodeValue));
	 galleryImageHArray[i] = (rPath+(pathHImage[i].childNodes[0].nodeValue));
	altTagArray[i] = (altImage[i].childNodes[0].nodeValue);
	descriptArray[i] = (descriptImage[i].childNodes[0].nodeValue);
	parentArray[i]  = (getParent[i].childNodes[0].nodeValue);
	pLinkArray[i] = (getLParent[i].childNodes[0].nodeValue);
	
	}
	//preloading(galleryImageThArray);

	
	// now run the random function ... 
	
	//for( var i=0; i< 41; i++)
	if(intoMain ==true)
	{
		intoMain =false;
		var randomVar =parseInt((((Math.random() *100) * NUMBER_IMGS) /100));
		loadLargeMImage(galleryImageHArray[randomVar]);
	}
	else if (intoMain== false)
	{
	if(galleryLoaded ==false)
	{
	for( var i=0; i< RANDOM_IMGS; i++)
	{
	   var done =false;
		while ( done == false)
		{
			var count =0;
			var notDuplicate = false;
			var randomVar =parseInt((((Math.random() *100) * NUMBER_IMGS) /100));
		
			while ((notDuplicate==false) && (count !=i))
			{
				if (randomVar == randomArray[count])
				{
					notDuplicate =true;
				}
				else { count++;}
			}
			if (count == i) { done = true; randomArray[i] = randomVar;}
		}
		 
	}
	}//new if
	galleryLoaded =true;
	
	
	var largeDiv = document.getElementById("lg");
	while (largeDiv.firstChild) {largeDiv.removeChild(largeDiv.firstChild);}
	
		if (is_ie5up)
		{
		
		largeDiv.style.setAttribute('cssText',"width:420px;");
		}
		else
		{
		largeDiv.setAttribute("style","width: 420px;");
		}
	//for(var i =0; i<41; i++)
	for(var i =0; i<RANDOM_IMGS; i++)
	{
	
	var smallDiv = document.createElement("div");
	
	//**** FOR IE....
	if (is_ie5up)
	{
	smallDiv.style.setAttribute('cssText',"width: 50px; height: 50px; float: left; margin-right: 3px; margin-bottom: 3px; cursor: pointer");
	}
	else
	{
	smallDiv.setAttribute("style","width: 50px; height: 50px; float: left; margin-right: 3px; margin-bottom: 3px; cursor: pointer");
	}
	//put img into div
	var nIndex = randomArray[i];
	signalArray[nIndex] = 0; 
	var myImg = document.createElement("img");
	// take the random index ...
	myImg.setAttribute("src",galleryImageThArray[nIndex]);
	//myImg.setAttribute("title", altTagArray[nIndex]);
	preload_image_object = new Image();
    preload_image_object.src = galleryImageMArray[nIndex];
	myImg.onmousedown =  (function(p) {return function(){ loadLargeImage(p) }})(nIndex);						   
	myImg.onmouseover = (function(p) {return function(){ loadText(p) }})(nIndex);
	myImg.onmouseout = (function(p) {return function(){ unLoadText(p) }})(nIndex);
	largeDiv.appendChild(smallDiv);
	smallDiv.appendChild(myImg);
	}
	}//new if....
	
	
function preloading(galleryImageThArray)
{
	for (x=0; x<galleryImageThArray.length; x++)
	{
		myimages[x] = new Image();
		myimages[x].src = galleryImageThArray[x];
	}
}

	function loadLargeImage(nIndex)
	{
		var remanents = document.getElementById("m");
		while (remanents.firstChild) {remanents.removeChild(remanents.firstChild);}
		remanents.style.display="none";
		// now we also find out which parent this one has ...
		var theParent =parentArray[nIndex];
		if(theParent !="none")
		{
				for(var  i =0; i< signalArray.length; i++)
			{
				signalArray[i] =0;
			}
			signalArray[nIndex]=1;
			
			var myNode  = document.getElementById(parentArray[nIndex]);
			//alert(parentArray[nIndex]);
			myNode.style.color = "#FFFFFF";
			nodeToMatch = parentArray[nIndex];
		
			var linktoM = "_xml/"+pLinkArray[nIndex]+".xml";
			fromGallPath = true;
			fromGallImgPath = galleryImageHArray[nIndex];
			loadXMLDoc(linktoM);
			
		}
		//other wise load the img...
		else
		{
		var mainImg = document.getElementById("m");
		mainImg.style.display="inline";
		while (mainImg.firstChild) {mainImg.removeChild(mainImg.firstChild);}
		var para = document.createElement("p");
		
		if(descriptArray[nIndex] != "none"){
			var text = document.createTextNode(descriptArray[nIndex]);
			mainImg.appendChild(text);
			mainImg.appendChild(para);
		}
				
		var largeImg = document.createElement("img");
		largeImg.setAttribute("src",galleryImageMArray[nIndex]);
		mainImg.appendChild(largeImg);
		}
		
	}
	function loadText(nIndex)
	{
		var theParent =parentArray[nIndex];
		if(theParent!="none")
		{
			var myNode  = document.getElementById(parentArray[nIndex]);
			myNode.style.color = "#FFFFFF";
		}
		var changeDiv = document.getElementById("m");
		if(descriptArray[nIndex] != "none"){
			changeDiv.style.display = "inline";
			changeDiv.innerHTML  = descriptArray[nIndex];
			changeDiv.style.top=posx;
			changeDiv.style.left=posy;
		}
	}
		
	function unLoadText(nIndex)
	{
		var changeDiv = document.getElementById("m");
		changeDiv.style.display ="none";
		changeDiv.innerHTML  = "";
		var theParent =parentArray[nIndex];
		
		if(theParent!="none")
		{
			if (signalArray[nIndex]==1)
			{
			var myNode  = document.getElementById(parentArray[nIndex]);
			myNode.style.color = "#FFFFFF";
			nodeToMatch =parentArray[nIndex]; 
			}
			else
			{
			var myNode  = document.getElementById(parentArray[nIndex]);
			myNode.style.color = "#8B8E91";
			}
		}
	
	}
		
}

 function buildSubGallery()
 {
	// REMOVE FORMER CHILDREN OF THE SUB PROJECTS NAV
	var navDiv= document.getElementById("sm");
	while (navDiv.firstChild) {navDiv.removeChild(navDiv.firstChild);}
	
	//REMOVE FORMER CHILDREN CONTAINED WITHIN THE "lg" DIV TAG
	var mainContentDiv= document.getElementById("lg");
	while (mainContentDiv.firstChild) {mainContentDiv.removeChild(mainContentDiv.firstChild);}
 
	var pathOneSub=req.responseXML.getElementsByTagName("link");
	var rPathSub = (pathOneSub[0].childNodes[0].nodeValue);
	var pathThSubImage=req.responseXML.getElementsByTagName("thumbNail");
	var pathMSubImage=req.responseXML.getElementsByTagName("mainImg");
	
	var gallerySubImageThArray = new Array(pathMSubImage.length); 
	//var gallerySubImageMArray = new Array(pathMSubImage.length); 
	 
	for (var i=0;i<gallerySubImageThArray.length;i++)
  	{ 
 	 gallerySubImageThArray[i] = (rPathSub+(pathThSubImage[i].childNodes[0].nodeValue));
	 //gallerySubImageThArray[i]="img/n/"+parseInt(i+1)+".gif";
	 //alert(gallerySubImageThArray[i]);
  	 gallerySubImageMArray[i] = (rPathSub+(pathMSubImage[i].childNodes[0].nodeValue));
	 preload_image_objectC = new Image();
    preload_image_objectC.src = gallerySubImageThArray[i];
	
	}
	
	for(var j =0; j<gallerySubImageThArray.length; j++)
	{

	var smallNavDiv = document.createElement("div");
	
	//**** FOR IE....
	if (is_ie5up)
	{
	smallNavDiv.style.setAttribute('cssText', "width: 50px; height: 50px; float: left; margin-right: 3px; margin-bottom: 3px; cursor: pointer");
	}
	else
	{
	smallNavDiv.setAttribute("style","width: 50px; height: 50px; float: left; margin-right: 3px; margin-bottom: 3px; cursor: pointer");
	}
	//put img into div
	var smImg = document.createElement("img");
	smImg.setAttribute("src",gallerySubImageThArray[j]);
	preload_image_object = new Image();
    preload_image_object.src = gallerySubImageMArray[j];
	smImg.onmousedown =  (function(p) {return function(){ loadLargeSubImage(p) }})(gallerySubImageMArray[j]);	
	smallNavDiv.appendChild(smImg);
	navDiv.appendChild(smallNavDiv);
	if (fromGallPath == true)
	 {
		fromGallPath =false;
		loadLargeSubImage(fromGallImgPath);
	 }
	 //setupZoom();
	}
 }
	/*
	function buildSubGallery()
 {
	// REMOVE FORMER CHILDREN OF THE SUB PROJECTS NAV
	var navDiv= document.getElementById("sm");
	while (navDiv.firstChild) {navDiv.removeChild(navDiv.firstChild);}
	
	//REMOVE FORMER CHILDREN CONTAINED WITHIN THE "lg" DIV TAG
	var mainContentDiv= document.getElementById("lg");
	while (mainContentDiv.firstChild) {mainContentDiv.removeChild(mainContentDiv.firstChild);}
 
	var pathOneSub=req.responseXML.getElementsByTagName("link");
	var rPathSub = (pathOneSub[0].childNodes[0].nodeValue);
	//var pathThSubImage=req.responseXML.getElementsByTagName("thumbNail");
	var pathMSubImage=req.responseXML.getElementsByTagName("mainImg");
	
	var gallerySubImageThArray = new Array(pathMSubImage.length); 
	//var gallerySubImageMArray = new Array(pathMSubImage.length); 
	 
	for (var i=0;i<gallerySubImageThArray.length;i++)
  	{ 
 	 //gallerySubImageThArray[i] = (rPathSub+(pathThSubImage[i].childNodes[0].nodeValue));
	 gallerySubImageThArray[i]="img/n/"+parseInt(i+1)+".gif";
  	 gallerySubImageMArray[i] = (rPathSub+(pathMSubImage[i].childNodes[0].nodeValue));
	
	 
	 //preload_image_objectC = new Image();
    //preload_image_objectC.src = gallerySubImageThArray[i];
	
	}
	
	
	for(var j =0; j<gallerySubImageThArray.length; j++)
	{
		//preload
		//preload_image_object = new Image();
    	//preload_image_object.src = gallerySubImageMArray[j];

	var smallNavDiv = document.createElement("div");
	
	//**** FOR IE....
	if (is_ie5up)
	{
	smallNavDiv.style.setAttribute('cssText', "width: 50px; height: 50px; float: left; margin-right: 10px; margin-bottom: 10px; cursor: pointer");
	}
	else
	{
	smallNavDiv.setAttribute("style","width: 50px; height: 50px; float: left; margin-right: 10px; margin-bottom: 10px; cursor: pointer");
	}
	//put img into div
	var aTag = document.createElement("a");
	aTag.setAttribute("href",gallerySubImageMArray[j]);
	aTag.setAttribute("alt","Campbell Design");
	//aTag.className="screenshot";
	aTag.setAttribute("id","test");
	var smImg = document.createElement("img");
	smImg.setAttribute("border","0");
	smImg.setAttribute("src",gallerySubImageThArray[j]);
	//clear
	smImg.onclick =  (function(){ var mainDiv = document.getElementById("lg");
	while (mainDiv.firstChild) {mainDiv.removeChild(mainDiv.firstChild);}});
	aTag.appendChild(smImg);
	smallNavDiv.appendChild(aTag);
	navDiv.appendChild(smallNavDiv);
	
	if (fromGallPath == true)
	 {
		fromGallPath =false;
		loadLargeSubImage(fromGallImgPath);
	 }
	 
	}//for
	 setupZoom();
 }
	
	*/
	function loadLargeSubImage(path)
	{
		
		image_1 = new Image();
   		image_1.src =path ;
		DetectImageSize(image_1);
		var mainDiv = document.getElementById("lg");
		//REMOVE CHILDREN...
		while (mainDiv.firstChild) {mainDiv.removeChild(mainDiv.firstChild);}
		
		imgDiv = document.createElement("div");
		imgDiv.setAttribute("id","mainSubImage");
		var largeSubImg = document.createElement("img");
		largeSubImg.setAttribute("src",image_1.src);
		imgDiv.appendChild(largeSubImg);
		//test style...
	if (is_ie5up)
	{
	// padding: 4px 6px 4px 6px;
	imgDiv.style.setAttribute('cssText',"width:" + iwidth + "; height:" + iheight + "");
	}
	else
	{
	imgDiv.setAttribute("style","width:" + iwidth + "; height:" + iheight + "");
	}
		
	
		mainDiv.appendChild(imgDiv);
		
	}
 
	 
 
 function DetectImageSize(picName)
 {
	 iwidth=picName.width;
	// alert(iwidth);
	 iheight=picName.height;
	//alert(iheight);
}

