function init(){
  // variables
  var imageSet = new Array("prod_1", "prod_2", "prod_3");
  var imageCache = new Image;

  // Image Caching
  for (i = 0; i < imageSet.length; i++){
    imageCache.src = "../images/" + imageSet[i] + ".jpg";
  }
  
  // event handling
  var imageLinks = document.getElementById("pageLeftImgLinks");
  var imageHolders = getElementsByClass(imageLinks, "*", "div");
  for (j = 0; j < imageHolders.length; j++){
    imageHolders[j].onclick = setImage;
  }
}

function setImage(evt){
  evt = (evt) ? evt : ((window.event) ? window.event : null);
  if (evt) {
    
	var elem = (evt.srcElement) ? evt.srcElement : evt.target;
	var idTitle = elem.parentNode.id;
	var imageIdRef = idTitle + "Img";
	var productSet = getProducts("prodImageSet");
	
	var divIdRef = idTitle + "Holder";
	var imageLinks = document.getElementById("pageLeftImgLinks");
	var divImgHolders = getElementsByClass(imageLinks, "*", "div");
	
	//find and display image
	for (m = 0; m < productSet.length; m++) {
	  var prodSetImg = productSet[m].id;
	  if (imageIdRef == prodSetImg) {
	    productSet[m].style.display = "inline";
	  }
	  else {
	    productSet[m].style.display = "none";
	  }
	}
	
	//change thumbnail activity status
	for (n = 0; n < divImgHolders.length; n++) {
	  var imgHolderId = divImgHolders[n].id;
	  if (divIdRef == imgHolderId) {
	    divImgHolders[n].className = "prodImgHolderOn";
	  }
	  else {
	    divImgHolders[n].className = "prodImgHolderOff";
	  }
	}
  }
}

function getElementsByClass(node,searchClass,tag) {
  var classElements = new Array();
  var els = node.getElementsByTagName(tag);
  var elsLen = els.length;
  var pattern = new RegExp("(^|\\s)" + searchClass + "(\\s|$)");
  for (i = 0, j = 0; i < elsLen; i++) {
    if ( pattern.test(els[i].className) ) {
      classElements[j] = els[i];
      j++;
    }
  }
return classElements;
}

function getProducts(elementId) {
  var productList = new Array();
  var parentElem = document.getElementById(elementId);
  var productList = parentElem.getElementsByTagName("img");
  
  return productList;
}
