/* =========================================================

// jquery.simplefade.js

// based on jquery.innerfade.js by Torsten Baldes http://medienfreunde.com

 *  $('#news').simplefade({ 
 *	  animationtype: Type of animation 'fade' or 'slide' (Default: 'fade'), 
 *	  speed: Fading-/Sliding-Speed in milliseconds or keywords (slow, normal or fast) (Default: 'normal'), 
 *	  timeout: Time between the fades in milliseconds (Default: '2000'), 
 * 	  containerheight: Height of the containing element in any css-height-value (Default: 'auto'),
 *  }); 
 *
// ========================================================= */

(function(jQ) {

	jQ.fn.simplefade = function(options) {
		return this.each(function() {   
			jQ.simplefade(this, options);
		});
	};

	jQ.simplefade = function(container, options) {
		var settings = {
			'animationtype':	'fade',
			'speed':			'normal',
			'timeout':		  2000,
			'containerheight':  'auto'
		};
		jQ.extend(settings, options);
		var elements = jQ(container).children();
		if (elements.length > 1) {
			jQ(container).css('position', 'relative').css('height', settings.containerheight);
			for (var i = 0; i < elements.length; i++) {
				jQ(elements[i]).css('z-index', String(elements.length-i)).css('position', 'absolute').hide();
			};
			if(typeof simplefades == "undefined") simplefades = new Array();
			var fadeID = container;
			simplefades[fadeID] = true;
			setTimeout(function() { jQ.simplefade.next(fadeID,elements, settings, 1, 0);}, settings.timeout);
			jQ(container).hover(
    			function () {simplefades[fadeID] = false}, 
      			function () {simplefades[fadeID] = true}
    		);
    
			jQ(elements[0]).show();
		}
	};

	jQ.simplefade.next = function(fadeID,elements, settings, current, last) {
    	if(simplefades[fadeID] == true){
			if (settings.animationtype == 'slide') {
				jQ(elements[last]).slideUp(settings.speed);
				jQ(elements[current]).slideDown(settings.speed);
			} else if (settings.animationtype == 'fade') {
				jQ(elements[last]).fadeOut(settings.speed);
				jQ(elements[current]).fadeIn(settings.speed, function() {removeFilter(jQ(this)[0]);});
			} else {
				alert('animationtype must either be \'slide\' or \'fade\'');
			}
			current++;
			if ((current) < elements.length) {
				last = current - 1;
			} else {
				current = 0;
				last = elements.length - 1;
			}
		}	

		setTimeout((function() {
			jQ.simplefade.next(fadeID,elements, settings, current, last);
		}), settings.timeout);
	};

})(jQuery);

// **** remove Opacity-Filter in ie ****
function removeFilter(element) {
	if(element.style.removeAttribute){
		element.style.removeAttribute('filter');
	}
}
