var ImageChanger = function(imgNode, images, prefix, classActive, active) {
	if (window==this) {
		return new ImageChanger(imageNode, images, classActive, active);
	}
	
	var imgNode = document.getElementById(imgNode);
	if (!imgNode) return false;
	
	var currentImage = 0;
	
	if (active && active>0 && active<images.length) {
		currentImage = active;
	}
	
	this.change = function(id) {
		var node = document.getElementById(prefix+id);
		
		if (node) node.blur();
		
		var imgUrl = images[id] ? images[id].src : null;
		
		if (imgNode.src != imgUrl) {
			imgNode.src = imgUrl;
		}
		
		if (node && node.parentNode) {
			var children = node.parentNode.childNodes;
			var regexp   = new RegExp('(^|\\s)' + classActive + '(?:\\s|$)');
			for (var i=0; i<children.length; ++i) {
				if (children[i].className) {
					children[i].className = children[i].className.replace(regexp, '$1');
				}
			}
			
			node.className = node.className + ' ' + classActive;
		}
		
		currentImage = id;
		
		return false;
	};
	
	this.next = function() {
		++currentImage;
		if (currentImage >= img.length) {
			currentImage = 0;
		}
		
		return this.change(currentImage);
	};
};