//-----------------------------------------------------------------------------------------------------
// Formally declare the ZeekImageCache namespace object.
//-----------------------------------------------------------------------------------------------------
if (typeof ZeekImageCache != "object") {
	ZeekImageCache = new Object(); 
}



ZeekImageCache.preloadImages = function(ZeekConstants) {
	try {
		if (ZeekConstants.baseHref===null || ""===ZeekConstants.baseHref) { throw -1; }
		if (!document.images) { throw -2; }
		
		var baseHrefLen = ZeekConstants.baseHref.length;
		var curHREF = document.URL;
		var lastIdx = (curHREF.lastIndexOf(ZeekConstants.baseHref))+baseHrefLen;
		var newBaseHREF = curHREF.substring(0,lastIdx);	
		
		var imageDir = newBaseHREF + "/_i/";
		
		//If we have already loaded the cache - do not do it again
		if (ZeekImageCache.imageCache!=null && ZeekImageCache.imageCache.length>0) { return; }
		
		
		ZeekImageCache.imageCache = new Array();
		
		var pic1 = new Image(363,300); 
		pic1.name = "LittleBabel";
		pic1.src = imageDir + "LittleBabel.jpg";
		ZeekImageCache.imageCache.push(pic1);
		
		var pic2 = new Image(294,507);
		pic2.name = "preview";
		pic2.src=imageDir + "preview.jpg"; 
		ZeekImageCache.imageCache.push(pic2);
		
		var pic3 = new Image(434,259);
		pic3.name = "RTE";
		pic3.src=imageDir + "RTE.jpg"; 
		ZeekImageCache.imageCache.push(pic3);
		  
		var pic4 = new Image(432,287); 
		pic4.name = "shoppingMall";
		pic4.src=imageDir + "shoppingMall.jpg"; 
		ZeekImageCache.imageCache.push(pic4);  
		  
		var pic5 = new Image(600,450);
		pic5.name = "sts_cockpit";
		pic5.src=imageDir + "sts_cockpit.jpg"; 
		ZeekImageCache.imageCache.push(pic5);  
		  
		pic6= new Image(606,205);
		pic6.name = "ZeekZee";
		pic6.src=imageDir + "ZeekZee.png"; 
		ZeekImageCache.imageCache.push(pic6);
		
		
		
		pic7= new Image(62,48);
		pic7.name = "T65_2";
		pic7.src=imageDir + "T65_2.png"; 
		ZeekImageCache.imageCache.push(pic7);
		
		pic8= new Image(99,75);
		pic8.name = "CargoClass";
		pic8.src=imageDir + "CargoClass.jpg"; 
		ZeekImageCache.imageCache.push(pic8);
		
		pic9= new Image(99,75);
		pic9.name = "GalaxyClass";
		pic9.src=imageDir + "GalaxyClass.jpg"; 
		ZeekImageCache.imageCache.push(pic9);
		
		pic10= new Image(99,100);
		pic10.name = "DeathStar";
		pic10.src=imageDir + "DeathStar.jpg"; 
		ZeekImageCache.imageCache.push(pic10);
		
		
		pic11= new Image(350,233);
		pic11.name = "Everest";
		pic11.src=imageDir + "Everest.jpg"; 
		ZeekImageCache.imageCache.push(pic11);
		
	} catch(errNbr) {
	 	switch(errNbr) {
			case -1: alert("(-1): ZeekImageCache.preloadImages():\n The baseHREF arg DNE."); break;
			case -2: alert("(-2): ZeekImageCache.preloadImages():\n Browser does NOT support image caching.  Must upgrade browser."); break;
			default: alert("(DfltErr): ZeekImageCache.preloadImages():\n " + errNbr); break;
		}
	}
};




ZeekImageCache.getImgAttr = function(imageName,attrName) {
	var returnAttr = null;
	try {
		if (imageName===null || ""===imageName) { throw -1; }
		
		var curImageObj = null;
		for (var n=0; n<ZeekImageCache.imageCache.length; n++) {
			curImageObj = ZeekImageCache.imageCache[n] 
			switch(attrName) {
				case "name":
					if (curImageObj.name==imageName) { returnAttr=curImageObj.name; }
					break;
				case "width":
					if (curImageObj.name==imageName) { returnAttr=curImageObj.width; }
					break;
				case "height":
					if (curImageObj.name==imageName) { returnAttr=curImageObj.height; }
					break;
				case "complete":
					if (curImageObj.name==imageName) { returnAttr=curImageObj.complete; }
					break;
				case "src":
					if (curImageObj.name==imageName) { returnAttr=curImageObj.src; }
					break;
				default:
					break;
			}
		}
		
		return returnAttr;
	} catch(errNbr) {
	 	switch(errNbr) {
			case -1: alert("(-1): ZeekImageCache.getImg_width():\n The imageName arg DNE."); break;
			default: alert("(DfltErr): ZeekImageCache.getImg_width():\n " + errNbr); break;
		}
	}
};