function ImageChanger(){
	
	var container = new Array();
    var visible = new Array();
	var timeout = null;
    
	this.init = function(){	
		container = self.getElementsByClass('containerImagesHolder');
		
		for(i=0; i < container.length; i++) {
			for(a=1; a < container[i].children.length; a++) {
				self.hideFast(container[i].children[a]);	
			}
			visible[i] = -1;
			this.showNext(i);
		}
		
		//console.log(container);
    }
	
	this.showNext = function(containerKey) {

		// set new keys
		if(visible[containerKey] < container[containerKey].children.length - 1)
			visible[containerKey]++;
		else 
			visible[containerKey] = 0;
		
		// hide others
		for(i=0; i < container.length; i++) {
			for(a=0; a < container[i].children.length; a++) {
				if(container[containerKey].children[visible[containerKey]] != container[i].children[a])
				self.hide(container[i].children[a]);	
			}
		}
		
		//show next
		self.show(container[containerKey].children[visible[containerKey]])
		
		timeout = window.setTimeout("imageChanger.showNext("+containerKey+")", 5000);
	}
	

		
	
	this.hideFast = function(e) {
		//new Effect.Opacity(e, {to: 0, duration: 0, afterFinish: function(){ e.style.display = "none" } });
		jQuery(e).css('display','none');
	}
	
	this.hide = function(e) {
		//new Effect.Opacity(e, {to: 0, duration: 2, afterFinish: function(){ e.style.display = "none" } });
		jQuery(e).fadeOut(2000);
	}
	
	this.show = function(e) {
		//e.style.display = "block";
		//new Effect.Opacity(e, {to: 1, duration: 2 });
		jQuery(e).fadeIn(2000);
	}
	
	this.getElementsByClass = function(searchClass,node,tag) {
		var classElements = new Array();
		if ( node == null )
			node = document;
		if ( tag == null )
			tag = '*';
		var els = node.getElementsByTagName(tag);
		var elsLen = els.length;
		var pattern = new RegExp("(^|\\s)"+searchClass+"(\\s|$)");
		for (i = 0, j = 0; i < elsLen; i++) {
			if ( pattern.test(els[i].className) ) {
				classElements[j] = els[i];
				j++;
			}
		}
		return classElements;
	}
    
    var self = this;
}

var imageChanger = new ImageChanger();



