<!--


function fadeIntro(obj, step, first, time, func) {
	/*
		Fades in or out an image based on whether step is positive or
		negative. The fade goes from 0 to 100 so step should be an
		integer. first is how long to delay the start of the fade. time
		is the delay between fade steps in milli-seconds. func is an
		optional string to be eval'd when the opacity change is done
	*/
	
	// Set the opacity start point based on the step value
	if (step > 0) {
		now = 0;
	} else {
		now = 100;
	}
	// Escape the terminating function vars correctly
	if (func && func != '') {
		func = func.replace(/\'/g, '\\\'');
	}
	// Schedule the first opacity change
	setTimeout('doFade(\'' + obj + '\', ' + step + ', ' + time + ', ' + now + ', \'' + func + '\')', first);
}

function doFade(obj, step, time, now, func) {
	// Increment the current fade point by the step value
	now += step;
	// Cap the max/min values of the current fade point
	if (now	> 100) {
		now = 100;
	} else if (now < 0) {
		now = 0;
	}
	// Change the opacity of the image we are fading
	if (!setStyle(obj, 'opacity', now/100)) {
		if (!setStyle(obj, 'filter', 'alpha(opacity=' + now + ')')) {
			setStyle(obj, 'MozOpacity', now/100);
		}
	}
	// Don't repeat if we're at the max/min and eval the terminating function
	if (now == 100 || now == 0) {
		if (func != '') {
			eval(func);
		}
		return;
	}
	// Escape the terminating function vars correctly
	if (func != '') {
		func = func.replace(/\'/g, '\\\'');
	}
	// Schedule the next opacity change
	setTimeout('doFade(\'' + obj + '\', ' + step + ', ' + time + ', ' + now + ', \'' + func + '\')', time);
}

//-- > 
