function dyngallery()
{
	var picId='bigDynPic';
	var loadingId='loadingmessage';
	var d=document.getElementById('thumbs');
	if(!d){return;}
	if(!document.getElementById(loadingId))
	{
		var lo=document.createElement('div');
		lo.appendChild(document.createTextNode('Loading image'));
		d.parentNode.insertBefore(lo,d);
		lo.id=loadingId;
		lo.style.display='none';
	}
	var piclinks=d.getElementsByTagName('a');
	for(var i=0;i<piclinks.length;i++)
	{
		piclinks[i].onclick=function()
		{
			document.getElementById(loadingId).style.display='block';
			var oldp=document.getElementById(picId);
			if(oldp)
			{
			 oldp.parentNode.removeChild(oldp);
			}
			var nc=document.createElement('div');
			d.parentNode.insertBefore(nc,d);
			nc.style.display='none';
			nc.id=picId;
			var newpic=document.createElement('img');
			newpic.src=this.href;
			newpic.alt=this.getElementsByTagName('img')[0].alt;
			newpic.title='Click to return to images';
			newpic.onload=function()
			{
				document.getElementById(loadingId).style.display='none';
			}
			newpic.onclick=function()
			{
			 this.parentNode.parentNode.removeChild(this.parentNode);
			}
			nc.appendChild(newpic);
			np=document.createElement('p');
			var captionText = this.getElementsByTagName('img')[0].title;
			if (captionText.length > 0) {
				nq=document.createElement('q');
				nq.appendChild(document.createTextNode(captionText));
				np.appendChild(nq);
				nc.appendChild(np);
			}
			npReturn=document.createElement('p');
			npReturn.appendChild(document.createTextNode('(click image to return to thumbnails)'));
			nc.appendChild(npReturn);
			nc.style.display='block';
			return false;
		}
	}		
}

addLoadHandler(dyngallery);
