//	TVIA Image Handling JS #2	Development file
//	(c)	Andy Belcher	2008
//
function doCGIImage(cgiImg)	{
	if(!cgiImg) {cgiImg = 0;}
	var errStr	= '';
	if(isNaN(cgiImg))
		{errStr	= 'Invalid image number: Not a number!';}
	if(cgiImg < imgNoOffset)
		{errStr	= 'Invalid image number:'+cgiImg+' Too low!';}
	if(cgiImg >= imgCtr)
		{errStr = 'Invalid image number:'+cgiImg+' Too high!';}
	if(errStr)	{dw(doGalLinkTable(0,errStr));}
	else		{showImage(cgiImg);}
	return true;
	}
//
tviaImgObj.prototype.returnImage = function() {
	if(!this.ref) {return false;}
	var clsStr	= 'class="'+this.thmCls+'"';
	var altStr	= this.makeAltStr('');
	var ownStr	= this.makeOwnStr('');
		ownStr	= (ownStr) ? ownStr+' ' : '';
	var lnkStr	= this.makeLnkStr('');
	var blbStr	= (this.blb) ? '<br /><cite><small>'+this.blb+'</small></cite>': '';
	var othSite	= '';
	var othDist	= '';
	var locStr	= '';
	if(this.loc)
		{locStr = '<strong>Location: '+this.loc+'</strong><br />';
		othSite	= '<div class="lnkdiv" id="st"'
			+ 'onmouseover="switchClass(\'st\',\'hilnkdiv\');"'
			+ 'onmouseout="switchClass(\'st\',\'lnkdiv\');"'
			+ 'onclick="moreImages(\'location\');">From this location...</div>';
		othDist	= '<div class="lnkdiv" id="ds"'
			+ 'onmouseover="switchClass(\'ds\',\'hilnkdiv\');"'
			+ 'onmouseout="switchClass(\'ds\',\'lnkdiv\');"'
			+ 'onclick="moreImages(\'district\');">From this district...</div>';
		}
	var refStr	= '<strong>ImgId: <code>'+this.ref+'</code> </strong> ';
	return doGalLinkTable(this.ref)
		+ '<img src="'+this.url+'" '
		+ this.wdtStr+' '
		+ this.hgtStr+' '
		+ clsStr+' '
		+ altStr+' />';
	}
//
function doGalLinkTable(ref,err)	{
	var hrefUrl	= 'location.href = \''+galleryUrl;
	var tdCtr	= 0;
	var outLoc	= '';
	var outAlt	= '';
	var outOwn	= '<strong>&copy; <code>TVIA</code></strong>';
	var outStr	= '<table class="bdr">';
	if((tviaPic[ref]) && (tviaPic[ref].url))
		{if(tviaPic[ref].loc)
			{outLoc	= '<strong>'+tviaPic[ref].loc+'</strong>';}
		outStr	+= '<tr><td width="220">Image: <code>'+ref+'</code></td>'
			+ '<td colspan="4">Location: '+outLoc+'</td></tr>';
		}
	else
		{if(!err)	{err = 'Invalid image reference...';}
		outStr	+= '<tr><td width="220"><strong>ERROR! :</strong></td>'
			+ '<td colspan="4">'+err+'</td></tr>';
		}
	if(!err)
		{if(tviaPic[ref].own)
			{outOwn	= '<strong>&copy; <code>'+tviaPic[ref].own+'</code></strong>';}
		if(tviaPic[ref].alt)	{outAlt	= tviaPic[ref].alt;}
		outStr	+= '<tr><td>'+outOwn+'</td>'
			+ '<td colspan="4">'+outAlt+'</td></tr>';
		if(tviaPic[ref].blb)
			{outStr	+= '<tr><td colspan="5" class="blb">'
				+ tviaPic[ref].blb+'</td></tr>';
			}
		outStr	+= '<tr><td>Gallery Links:</td>'
			+ '<td><div class="lnkdiv" id="in"'
			+ 'onmouseover="switchClass(\'in\',\'hilnkdiv\');"'
			+ 'onmouseout="switchClass(\'in\',\'lnkdiv\');"'
			+ 'onclick="'+hrefUrl+'\';"'
			+ '>Gallery <strong>Index</strong>...'
			+ '</div></td>'
			+ '<td><div class="lnkdiv" id="se"'
			+ 'onmouseover="switchClass(\'se\',\'hilnkdiv\');"'
			+ 'onmouseout="switchClass(\'se\',\'lnkdiv\');"'
			+ 'onclick="'+hrefUrl+'?search=1\';"'
			+ '><strong>Search</strong> the gallery...'
			+ '</div></td>';
		tdctr = 2;
		if(tviaPic[ref].lnk)
			{outStr	+= '<td><div class="lnkdiv" id="mi"'
				+ 'onmouseover="switchClass(\'mi\',\'hilnkdiv\');"'
				+ 'onmouseout="switchClass(\'mi\',\'lnkdiv\');"'
				+ 'onclick="location.href = \''+tviaPic[ref].lnk+'\';"'
				+ '><strong>More Info...</strong>'
				+ '</div></td>';
			tdctr++;
			}
		outStr	+= '<td><div class="lnkdiv" id="wb"'
			+ 'onmouseover="switchClass(\'wb\',\'hilnkdiv\');"'
			+ 'onmouseout="switchClass(\'wb\',\'lnkdiv\');"'
			+ 'onclick="location.href = \'/content.shtml\';"'
			+ '><strong>Contents</strong> page...'
			+ '</div></td>';
		tdctr++;
		for(var x=tdCtr;x<4;x++) {outStr += '<td>&nbsp;</td>';}
		tdctr = 0;
		outStr	+= '</tr><tr><td>More pictures:</td>';
		if(tviaPic[ref].loc)
			{outStr	+= '<td><div class="lnkdiv" id="fe"'
			+ 'onmouseover="switchClass(\'fe\',\'hilnkdiv\');"'
			+ 'onmouseout="switchClass(\'fe\',\'lnkdiv\');"'
			+ 'onclick="'+hrefUrl+';feature='+ref+'\';"'
			+ '>of this <strong>Feature...</strong>'
			+ '</div></td>';
			tdCtr++;
			}
		if(tviaPic[ref].loc)
			{outStr	+= '<td><div class="lnkdiv" id="lo"'
			+ 'onmouseover="switchClass(\'lo\',\'hilnkdiv\');"'
			+ 'onmouseout="switchClass(\'lo\',\'lnkdiv\');"'
			+ 'onclick="'+hrefUrl+'?location='+ref+'\';"'
			+ '>of this <strong>Location...</strong>'
			+ '</div></td>';
			tdCtr++;
			}
		if(tviaPic[ref].loc)
			{outStr	+= '<td><div class="lnkdiv" id="di"'
			+ 'onmouseover="switchClass(\'di\',\'hilnkdiv\');"'
			+ 'onmouseout="switchClass(\'di\',\'lnkdiv\');"'
			+ 'onclick="'+hrefUrl+'?district='+ref+'\';"'
			+ '>of this <strong>District...</strong>'
			+ '</div></td>';
			tdCtr++;
			}
		outStr	+= '<td><div class="lnkdiv" id="im"'
			+ 'onmouseover="switchClass(\'im\',\'hilnkdiv\');"'
			+ 'onmouseout="switchClass(\'im\',\'lnkdiv\');"'
			+ 'onclick="location.href = \''+tviaPic[ref].url+'\';"'
			+ '>This image only...</div></td>';
		tdCtr++;
		for(var w=tdCtr;w<4;w++) {outStr += '<td>&nbsp;</td>';}
		outStr	+= '</tr>';
		}
	return outStr+'</table>';
	}
//
function showImage(ref)	{
	if(tviaPic[ref]) {tviaPic[ref].showImage();}
	else {dw(doGalLinkTable(0,'Invalid image number...'));}
	}
//
function showHideGSF()
	{if(shGalForm)
		{shGalForm	= 0;
		switchClass('galsearch','hide');
		switchText('shgsf','Show Gallery Search Form...');
		}
	else
		{shGalForm	= 1;
		switchClass('galsearch','show');
		switchText('shgsf','Hide Gallery Search Form...');
		}
	}
//
function moreImages(com,arg)	{}
//
function doGallerySearchAction(keyWord,incFlgi,incFlgf,incFlgl,incCase,incList,imgList)	{
	if(!keyWord) {return false;}
	incFlgi = (incFlgi) ? 1 : 0;
	incFlgf = (incFlgf) ? 1 : 0;
	incFlgl = (incFlgl) ? 1 : 0;
	incCase = (incCase) ? 1 : 0;
	incList = (incList) ? 1 : 0;
	if(incList) {imgList = (imgList) ? imgList : '';}
	else
		{var jnr = '';imgList = '';
		for(var i=imgNoOffset;i<tviaPic.length;i++)
			{imgList += jnr+tviaPic[i].ref;jnr = ',';}
		}
	//	load suitable images to array
	galList	= '';
	var imgArr = new Array();imgArr = imgList.split(',');
	if(!incCase)	{keyWord = keyWord.toLowerCase();}
	var lstJnr	= '';
	for(var i=0;i<imgArr.length;i++)
		{var refNo		= imgArr[i];
		var searchStr	= '';
		if(incFlgi) 	{searchStr	+= tviaPic[refNo].alt+' ';}
		if(incFlgi) 	{searchStr	+= tviaPic[refNo].blb+' ';}
		if(incFlgl) 	{searchStr	+= tviaPic[refNo].loc+' ';}
		if(incFlgf) 	{searchStr	+= tviaPic[refNo].url+' ';}
		if(!incCase)	{searchStr	= searchStr.toLowerCase();}
		if(searchStr.indexOf(keyWord) != -1)
			{galList += lstJnr+refNo;lstJnr = ',';}
		}
	//	run display routine
	dw(returnGalleryDisplay(galList));
	return false;
	}
//
function returnGalleryDisplay(lst)	{
	var imgLst	= new Array();
	if(lst)	{imgLst = lst.split(',');}
	var outStr	= '';
	for(var i=0;i<imgLst.length;i++)
		{if(tviaPic[imgLst[i]].typ != 'S')
			{outStr	+= returnGalleryThumb(imgLst[i]);}
		}
	for(var i=0;i<imgLst.length;i++)
		{if(tviaPic[imgLst[i]].typ == 'S')
			{outStr	+= returnGalleryNSThumb(imgLst[i]);}
		}
	if(!outStr)
		{outStr = '<p>There were no images in the TVIA Gallery that matched your criteria...</p>';
		shGalForm	= 0;
		showHideGSF();
		}
	return outStr;
	}
//
function returnGalleryNSThumb(ref) {
	var clsStr	= 'class="tviagalthm"';
	var alnStr	= 'align="left"';
	var altStr	= tviaPic[ref].makeAltStr(' Click for larger image...');
	return '<div class="galdisnsthm"><code>'
		+ ref+'</code><br /><img src="'
		+ tviaPic[ref].thmUrl+'" '
		+ clsStr+' '
		+ alnStr+' '
		+ tviaPic[ref].thmWdt+' '
		+ tviaPic[ref].thmHgt+' '
		+ altStr+' '
		+ 'onclick="location.href = \''+galleryUrl+galleryArg+ref+'\';" />'
		+ '</div><!--galdisnsthm-->';
	}
//
function returnGalleryThumb(ref) {
	var clsStr	= 'class="tviagalthm"';
	var alnStr	= 'align="center"';
	var altStr	= tviaPic[ref].makeAltStr(' Click for larger image...');
	return '<div class="galdisthm"><code>'
		+ ref+'</code><br /><img src="'
		+ tviaPic[ref].thmUrl+'" '
		+ clsStr+' '
		+ alnStr+' '
		+ tviaPic[ref].thmWdt+' '
		+ tviaPic[ref].thmHgt+' '
		+ altStr+' '
		+ 'onclick="location.href = \''+galleryUrl+galleryArg+ref+'\';" />'
		+ '</div><!--galdisthm-->';
	}
//
//	EOF
//
