function setupRollovers() {
  if (!document.getElementsByTagName)
    return;
  var all_a_links = document.getElementsByTagName('a');
  var all_img_tags = document.getElementsByTagName('img');
  
  for (var i = 0; i < all_a_links.length; i++) {
    var link = all_a_links[i];
	
    if (link.className &&
        (' ' + link.className + ' ').indexOf(' rollover ') != -1) {
	  
	  if (link.childNodes &&
          link.childNodes.length == 1 &&
          link.childNodes[0].nodeName.toLowerCase() == 'img') {
		link.onmouseover = mouseover;
        link.onmouseout = mouseout;
      }
    }
  }
  
  for (var i = 0; i < all_img_tags.length; i++) {
    var img_tag = all_img_tags[i];
	
	if (img_tag.className &&
        (' ' + img_tag.className + ' ').indexOf(' img_rollover ') != -1) {
	  	
		img_tag.onmouseover = mouseover_img;
		img_tag.onmouseout = mouseout_img;
    }
  }
}

function find_target(e)
{
  /* Begin the DOM events part, which you */
  /* can ignore for now if it's confusing */
  var target; 

  if (window.event && window.event.srcElement) 
    target = window.event.srcElement;
  else if (e && e.target)
    target = e.target;
  if (!target)
    return null;

  while (target != document.body &&
      target.nodeName.toLowerCase() != 'a')
    target = target.parentNode;

  if (target.nodeName.toLowerCase() != 'a')
    return null;

  return target;
}

function find_img_target(e)
{
  /* Begin the DOM events part, which you */
  /* can ignore for now if it's confusing */
  var target; 

  if (window.event && window.event.srcElement) { 
    target = window.event.srcElement;
  }
  else if (e && e.target) {
    target = e.target;
	
  }
  if (!target)
    return null;

  while (target != document.body &&
      target.nodeName.toLowerCase() != 'img') {
    target = target.parentNode;
  }

  if (target.nodeName.toLowerCase() != 'img')
    return null;

  return target;
}

function mouseover(e) {
  var target = find_target(e);
  if (!target) return;

  var img_tag = target.childNodes[0];
  var str = img_tag.src;
  var regex = eval("/(_ro)/");
  var search_result = str.search(regex);
  if (search_result >= 0) {
	  img_tag.src = img_tag.src;
  } else {
	  img_tag.src = img_tag.src.replace(/(\.[^.]+)$/, '_over$1');
  }
}

function mouseout(e) {
  var target = find_target(e);
  if (!target) return;

  var img_tag = target.childNodes[0];
  var str = img_tag.src;
  var regex = eval("/(_ro)/");
  var search_result = str.search(regex);
  if (search_result >= 0) {
	  img_tag.src = img_tag.src;
  } else {
	  img_tag.src = img_tag.src.replace(/_over(\.[^.]+)$/, '$1');
  }
}

function mouseover_img(e) {
  var target = find_img_target(e);
  if (!target) return;
  
  var new_img = document.getElementById('bigImage');
  new_img.src = target.src.replace('_thumb', '');
  target.className = "thumbnailBorder img_rollover";
}

function mouseout_img(e) {
  var target = find_img_target(e);
  if (!target) return;
  
  target.className = "img_rollover";
}

// When the page loads, set up the rollovers
window.onload = setupRollovers;