function RotationImage(iDelayFadeIn, iDelayFadeOut, sDivRotationId, aRotationInfo, bUseAssets, iRotationInitId, sARotationLinkIds, sDivRotationLinkContainerId, sDivCopyBkImgTo) {
  window.addEvent('domready', function(){
	var iRotationTimer = 0;
	var iRotationIdCurrent = iRotationInitId;
	var bClicked = 0;
	
	var oD0, oD1, oT0, oT1;
	if (iRotationInitId!=0) {
		oD0 = new Date();
		oT0 = oD0.getTime();
	}
	
	var fGetLapsedTime_ms = function() {
		oD1 = new Date();
		oT1 = oD1.getTime();
		
		return oT1-oT0;
	}
	
	var oTween = new Fx.Tween($(sDivRotationId));
	
	
	var fSetRotationInfo = function(iRotationId) {
		if (bClicked==0) {
			if (sARotationLinkIds) {
				for (var i=0; i<aRotationInfo.length; i++) {
					$(sARotationLinkIds+i).removeClass(sARotationLinkIds+'On').addClass(sARotationLinkIds+'Off');
					$(sARotationLinkIds+i).set('opacity', 0.6);
				}
				
				$(sARotationLinkIds+iRotationId).removeClass(sARotationLinkIds+'Off').addClass(sARotationLinkIds+'On');
				$(sARotationLinkIds+iRotationId).set('opacity', 1);
			}
						
			$(sDivRotationId).setStyle('background-image', 'url('+aRotationInfo[iRotationId].src+')');
		}
	}
	
	var fFadeOut = function (oTween) {
		oTween.start('opacity', 0);
	}
	
	var fFadeIn = function (oTween) {
		oTween.start('opacity', 1);
	}
	
	var fFadeInOut = function (oTween) {
		if (bClicked==0) {
			var iRotationIdPrev = iRotationIdCurrent-1;
			if (iRotationIdPrev<0)
				iRotationIdPrev = aRotationInfo.length-1;		
			$(sDivCopyBkImgTo).setStyle('background-image', 'url('+aRotationInfo[iRotationIdPrev].src+')');
			
			oTween.start('opacity', 0).chain(function(){
				fSetRotationInfo(iRotationIdCurrent);
				
				(function() {
					oTween.start('opacity', 1);
					
				}).delay(iDelayFadeIn);
				
				iRotationIdCurrent++;
				if (iRotationIdCurrent>aRotationInfo.length-1)
					iRotationIdCurrent = 0;
			});
			
		}
	}
	
	var fRotationInit = function (iInitId, bRotate) {
		iRotationIdCurrent = iInitId;
		
		$(sDivRotationId).setStyle('opacity', 0);
		fSetRotationInfo(iRotationIdCurrent);
		
		fFadeIn(oTween);
		
		iRotationIdCurrent = (iRotationIdCurrent+1>=aRotationInfo.length) ? 0:iRotationIdCurrent+1;
		
		if (bRotate) {	
			iRotationTimer = fFadeInOut.periodical(iDelayFadeIn+iDelayFadeOut, $(sDivRotationId), oTween);
		}
	}
	
	if (sARotationLinkIds) {
		if (sDivRotationLinkContainerId) {
			$(sDivRotationLinkContainerId).setStyle('display', 'block');
		}
		
		for (var i=0; i<aRotationInfo.length; i++) {
			$(sARotationLinkIds+i).set('opacity', 0.6);
			$(sARotationLinkIds+i).set('html', aRotationInfo[i].caption);
			
			$(sARotationLinkIds+i).addEvent('click', function(){
				bInPlay = 0;
				$('img_slide_play').set('src', 'images/slide_ico_play0.jpg');
				$clear(iRotationTimer);
				var sClickId = this.id.replace(sARotationLinkIds,'');
				fRotationInit(parseInt(sClickId), 0);
			});
			
		}
		
		$(sARotationLinkIds+(iRotationInitId-1)).set('opacity', 1);
		
		
	}
	
	if (bUseAssets==1) {
		var aRotationImgPreload = new Array();
		for (var i=0; i<aRotationInfo.length; i++) {
			aRotationImgPreload[i] = aRotationInfo[i].src;
		}
		
		var aRotationImgAssets = new Asset.images(aRotationImgPreload, {
			onComplete: function() {
				if (sDivRotationLinkContainerId) {
					$(sDivRotationLinkContainerId).setStyle('display', 'block');
				}
				
				if (iRotationInitId!=0) {
					var iLapsedTime_ms = fGetLapsedTime_ms();
					var iLoadDelayTimeMs = iDelayFadeIn+iDelayFadeOut-iLapsedTime_ms;
					
					if (iLoadDelayTimeMs<=0) {
						fRotationInit(iRotationInitId, 1);
					}
					else {
						(function() {
							fRotationInit(iRotationInitId, 1);
						}).delay(iLoadDelayTimeMs);
					}
				}
				else {
					fRotationInit(iRotationInitId, 1);
				}
				
			}
		});
	}
	else {
		if (sDivRotationLinkContainerId) {
			$(sDivRotationLinkContainerId).setStyle('display', 'block');
		}
		
		if (iRotationInitId!=0) {
			
			var iLoadDelayTimeMs = iDelayFadeIn+iDelayFadeOut-fGetLapsedTime_ms();
			fGetLapsedTime_ms()
			if (iLoadDelayTimeMs<=0) {
				fRotationInit(iRotationInitId, 1);
			}
			else {
				fRotationInit(iRotationInitId, 1);
			}
		}
		else {
			fRotationInit(iRotationInitId, 1);
		}
		
	}
	
	$(sDivRotationId).addEvent('click', function() {
		bClicked = 1;
		iRotationId = iRotationIdCurrent-1;
		if (iRotationId<0)
			iRotationId = aRotationInfo.length-1;
		
		window.location.href = aRotationInfo[iRotationId].href;
	});
	
	var bInPlay = 1;
	
	$('img_slide_play').addEvents({
		'click': function(){
			if (bInPlay) {
				$clear(iRotationTimer);
				bInPlay = 0;
			}
			else {
				$clear(iRotationTimer);
				fRotationInit(iRotationIdCurrent, 1);
				bInPlay = 1;
			}
		},
		'mouseover': function(){
			if (bInPlay)
				this.set('src', 'images/slide_ico_pause1.jpg');
			else
				this.set('src', 'images/slide_ico_play1.jpg');
		},
		'mouseout': function(){
			if (bInPlay)
				this.set('src', 'images/slide_ico_pause0.jpg');
			else
				this.set('src', 'images/slide_ico_play0.jpg');
		}
	});
	
	$('img_slide_next').addEvents({
		'click': function(){
			$clear(iRotationTimer);
			fRotationInit(iRotationIdCurrent, 0);
			$clear(iRotationTimer);
			bInPlay = 0;
		},
		'mouseover': function(){
			this.set('src', 'images/slide_ico_next1.jpg');
		},
		'mouseout': function(){
			this.set('src', 'images/slide_ico_next0.jpg');
		}
	});
	
	$('img_slide_prev').addEvents({
		'click': function(){
			$clear(iRotationTimer);
			var iRotIdPrev = iRotationIdCurrent - 1;
			if (iRotIdPrev-1 < 0) {
				iRotationIdCurrent = (aRotationInfo.length-1)+iRotIdPrev;
			}
			else
				iRotationIdCurrent = iRotIdPrev - 1;
				
			//alert(iRotIdPrev + '-' + iRotationIdCurrent);	
			
			fRotationInit(iRotationIdCurrent, 0);
			$clear(iRotationTimer);
			bInPlay = 0;
		},
		'mouseover': function(){
			this.set('src', 'images/slide_ico_prev1.jpg');
		},
		'mouseout': function(){
			this.set('src', 'images/slide_ico_prev0.jpg');
		}
	});
	
  });
}

