 function EventWorker() {
   this.addHandler = EventWorker.addHandler;
 }


 EventWorker.addHandler = function (eventRef, func) {
  var eventHandlers = eval(eventRef);
  if (typeof eventHandlers == 'function') {
   eval(eventRef + " = function(event) {eventHandlers(event); func(event);}");  
  } else {
   eval(eventRef + " = func;");
  }
 }

 function getElementsByClass(node,searchClass,tag) {
   var classElements = new Array();
   var els = node.getElementsByTagName(tag); // use "*" for all elements
   var elsLen = els.length;
   var pattern = new RegExp("\\b"+searchClass+"\\b");
   for (i = 0, j = 0; i < elsLen; i++) {
     if ( pattern.test(els[i].className) ) {
       classElements[j] = els[i];
       j++;
     }
   }
   return classElements;
 }

var current_super = 0
var max_super = 0
var super_timer
var href_layer
var myAnim_old
var myAnim_new


function super_rotator() {
       current_super=current_super+1;
	if (current_super > max_super) current_super = 0; 
	show_slide(current_super);
}

function show_slide(i) {
   current_slide = getElementsByClass(document, 'super-slide selected', 'IMG')[0];
   new_slide = document.getElementById(i+'_super_img');
   if (new_slide != current_slide) {
   if (typeof myAnim_old == 'object') myAnim_old.stop; 
   if (typeof myAnim_new == 'object') myAnim_new.stop; 
   myAnim_old = new YAHOO.util.Anim(current_slide, { opacity: { to: 0 } }, .5, YAHOO.util.Easing.easeOut);
   myAnim_new = new YAHOO.util.Anim(new_slide, { opacity: { to: 1 } }, .5, YAHOO.util.Easing.easeOut);
   myAnim_new.onComplete.subscribe(change_slide_class);
   myAnim_new.animate();
   myAnim_old.animate();  	
   }
}

function change_slide_class() {
   current_slide = getElementsByClass(document, 'super-slide selected', 'IMG')[0];
   new_slide = this.getEl();
   current_slide.className = current_slide.className.replace(/ selected/, " not-selected");
   new_slide.className = new_slide.className.replace(/ not-selected/, " selected");  
   if (typeof new_slide.getAttribute('clonehref') != 'undefined' && new_slide.getAttribute('clonehref') != "#") {
	href_layer.href = new_slide.getAttribute('clonehref');
	href_layer.style.display = 'block';
   } else {
	href_layer.style.display = 'none';
   } 
   current_super = parseInt(new_slide.id);
}

function goto_slide(j) {
	show_slide(j);
}

function slide_up() {
       current_super=current_super+1;
	if (current_super > max_super) current_super = 0; 
	show_slide(current_super);
}

function slide_down() {
       current_super=current_super-1;
	if (current_super < 0) current_super = max_super; 
	show_slide(current_super);
}

function slide_pause() {
       button = getElementsByClass(document, 'imgPause', 'IMG')[0];
	if (typeof super_timer == 'number') {
	   window.clearInterval(super_timer);
	   super_timer = null;
	   button.className = "imgPause pause_on";
	} else {
	   start_super_slides()
	   button.className = "imgPause";
	}
}

function start_super_slides() {
	super_timer = window.setInterval( "super_rotator();", (10000) )
	href_layer = document.getElementById('superlink_overlay');
	super_controls = document.getElementById('homeWrapperImageNav');
	if (super_controls) super_controls.style.display = 'block';
}

EventWorker.addHandler("window.onload", start_super_slides);




