function RotateImage(sPath, sLink) {
	this.sPath = sPath;
	this.sLink = sLink;
	
	this.getLink = function() { return this.sLink; }
	
	this.getPath = function() { return this.sPath; }
}

function imgRotate() {
	var aImages = new Array;
	var sBannerName = 'banner_advert';
	var iActiveBanner = -1;
	var iArrayPos = 0;
	var iFadeSpeed = 1000;
	var iIntervalSpeed = 6000;
	
	this.addImage = function(oImg) {
		aImages.push(oImg);
	}
	
	this.changeOpacity = function(sId, iOpacity) {
		var oObject = document.getElementById(sId).style;

		oObject.display = (iOpacity == 0) ? 'none' : 'block';
	
		oObject.opacity = (iOpacity / 100);
		oObject.MozOpacity = (iOpacity / 100);
		oObject.KhtmlOpacity = (iOpacity / 100);
		oObject.filter = "alpha(opacity=" + iOpacity + ")";
	}
	
	this.fadeInOut = function(sId, iStart, iEnd, iMilliseconds) {
		var speed = Math.round(iMilliseconds/100);
		var timer = 0;

		if(iStart > iEnd) {
			for(i = iStart; i >= iEnd; i--) {
				setTimeout("imgRotate.changeOpacity('"+sId+"', "+i+")",(timer*speed));
				timer++;
			}
		} else if(iStart < iEnd) {
			for(i = iStart; i <= iEnd; i++) {
				setTimeout("imgRotate.changeOpacity('"+sId+"', "+i+")",(timer*speed));
				timer++;
			}
		}
	}
	
	this.initialise = function() {
		var oBanner = document.getElementById(sBannerName);
		if (oBanner != null) {
			var oDivOne = document.getElementById('banner_img_1');
			var oDivTwo = document.getElementById('banner_img_2');
			
			if (aImages.length >= 2) {
				var oLinkOne = document.createElement('a');
				oLinkOne.setAttribute('href',aImages[0].getLink());
				var oImgOne = document.createElement('img');
				oImgOne.setAttribute('border','0');
				oImgOne.setAttribute('src', aImages[0].getPath());
				oLinkOne.appendChild(oImgOne);
				oDivOne.appendChild(oLinkOne);
				
				var oLinkTwo = document.createElement('a');
				oLinkTwo.setAttribute('href',aImages[1].getLink());
				var oImgTwo = document.createElement('img');
				oImgTwo.setAttribute('border','0');
				oImgTwo.setAttribute('src', aImages[1].getPath());
				oLinkTwo.appendChild(oImgTwo);
				oDivTwo.appendChild(oLinkTwo);
				
				iActiveBanner = 2;
				iArrayPos = 0;
				
				setInterval('imgRotate.swapBanner()', iIntervalSpeed);
			} else {
				var oLink = document.createElement('a');
				oLink.setAttribute('href', aImages[0].getLink());
				var oImg = document.createElement('img');
				oImg.setAttribute('src', aImages[0].getPath());
				oLink.appendChild(oImg);
				oDivTwo.appendChild(oLink);
			}
		}
	}
	
	this.setFadeSpeed = function(iFade) { this.iFadeSpeed = iFade; }
	
	this.setIntervalSpeed = function(iInterval) { this.iIntervalSpeed = iInterval; }
	
	this.swapBanner = function() {
		if (iActiveBanner == 1) {
			// need to fade in banner 2
			this.fadeInOut('banner_img_2', 1, 100, iFadeSpeed);
		} else {
			// need to fade out banner 2
			this.fadeInOut('banner_img_2', 100, 0, iFadeSpeed);
		}
		
		iActiveBanner = (iActiveBanner == 1) ? 2 : 1;

		var oDiv = document.getElementById('banner_img_'+iActiveBanner);
		var oLink = document.createElement('a');
		oLink.setAttribute('href', aImages[iArrayPos].getLink());
		var oImg = document.createElement('img');
		oImg.setAttribute('border','0');
		oImg.setAttribute('src', aImages[iArrayPos].getPath());
		oLink.appendChild(oImg);
		oDiv.innerHTML = '';
		oDiv.appendChild(oLink);
		
		iArrayPos = (iArrayPos == aImages.length-1) ? 0 : iArrayPos+1;
	}
}

var imgRotate = new imgRotate();