var imageTransition = new Class({
	layer: null,
	imageSources: null,
	currentImageNr: 0,
	imageBuffer: null,
	//imageLocation: '/afbeeldingen/',
	
	initialize: function(layerID, imageSources) {
		this.layer = $(layerID);
		this.imageSources = imageSources;
		this.imageBuffer = this.layer.getElements('img');
		this.imageBuffer[1].setStyle('opacity', 0);
		
		
		this.effects = new Array(2);
		this.effects[0] = new Fx.Style(this.imageBuffer[0], 'opacity', {duration:1000});
		this.effects[1] = new Fx.Style(this.imageBuffer[1], 'opacity', {duration:1000});
		
		this.changeImage.periodical(5000, this);
	},
	
	changeImage: function() {
		var newImageNr = Math.abs(this.currentImageNr - 1)
		var thisImage = this.imageBuffer[this.currentImageNr];
		var newImage = this.imageBuffer[newImageNr];
		newImage.setProperty('src', this.getRandomImageSrc()); 
		
		this.effects[newImageNr].start(0,1)
		this.effects[this.currentImageNr].start(1,0);
		this.currentImageNr = newImageNr;
	},
	
	getRandomImageSrc: function() {
		var randomNr = Math.floor(Math.random() * this.imageSources.length);
		return this.imageSources[randomNr].src;	
	},
	
	resetEffect: function() {
		if(this.effect[0])
			this.effect[0].stop();
		if(this.effect[1])
			this.effect[1].stop();	
	}
})
