ImageBox = {};

ImageBox.count = 0;

ImageBox.index = -1;

ImageBox.interval = {
	  ROTATE	: 6000
	, ZOOM		: 50
};

ImageBox.defaults = {
	  left		: 0
	, width		: 940
	, height	: 454
};

ImageBox.prefixId = '#imageBox';

ImageBox.inrevalId = null;

ImageBox.init = function(){
	if(ImageBox.count > 0){
		ImageBox._zoomInit();
		ImageBox._rotateInit();
	}
};

ImageBox._isInit = function(){
	return ImageBox.index == -1;
};

ImageBox._getIndex = function(){
	return ImageBox._isInit() ? ImageBox.count - 1 : ImageBox.index;
};

ImageBox._rotateInit = function(){
	window.setInterval(ImageBox._rotate, ImageBox.interval.ROTATE);
};

ImageBox._rotate = function(){
	var index = ImageBox._getIndex();
	
	do{
		ImageBox.index = ImageBox._randomXToY();
	}while(index == ImageBox.index);
	
	ImageBox._zoomInit();
	
	jQuery(ImageBox.prefixId + ImageBox.index).css('zIndex', 1);
	
	jQuery(ImageBox.prefixId + index).css('zIndex', 2);
	jQuery(ImageBox.prefixId + index).fadeOut('slow', function(){ 
		jQuery(this).css('zIndex', 0);
		jQuery(this).css('display', 'block');
		
	});
	
	//console.debug(index + '-' + ImageBox.index);
};

ImageBox._zoomInit = function(){
	if(!jQuery.browser.opera){
		var index = ImageBox._getIndex();
		
		var div = jQuery(ImageBox.prefixId + index).get(0);
		jQuery(div).css('left', ImageBox.defaults.left + 'px');
		jQuery(div).css('width', ImageBox.defaults.width + 'px');
		jQuery(div).css('height', ImageBox.defaults.height + 'px');
		
		if(ImageBox.inrevalId != null){
			window.clearInterval(ImageBox.inrevalId);
		}
		ImageBox.inrevalId = window.setInterval(ImageBox._zoom, ImageBox.interval.ZOOM);
	}
};

ImageBox._zoom = function(){
	var index = ImageBox._getIndex();
	
	/*
	if(ImageBox._isInit()){
		ImageBox.defaults = {
			  left		: 0 //parseInt(jQuery(ImageBox.prefixId + index).css('left'))
			, width		: 940 //parseInt(jQuery(ImageBox.prefixId + index).css('width'))
			, height	: 454 //parseInt(jQuery(ImageBox.prefixId + index).css('height'))
		};
	}
	*/
	
	var div = jQuery(ImageBox.prefixId + index).get(0);

	var left = parseInt(jQuery(div).css('left')) - 1; 
	jQuery(div).css('left', left + 'px');
	
	var width = parseInt(jQuery(div).css('width')) + 1; 
	jQuery(div).css('width', width + 'px');
	var height = parseInt(jQuery(div).css('height')) + 1; 
	jQuery(div).css('height', height + 'px');
};

ImageBox._randomXToY = function(){ //floatVal
	var minVal = 0, maxVal = ImageBox.count - 1;
	var randVal = minVal + (Math.random() * (maxVal - minVal));
	return Math.round(randVal);
	//return typeof floatVal == 'undefined' ? Math.round(randVal) : randVal.toFixed(floatVal);
}
