/* requires jquery 1.3.2 */

var rmgrot = {
	master: '#parent-rot',
	slaves: '.child-rot',
	delayTime: 6000, // milliseconds
	fadeTime: 1500, // milliseconds, less than delay
	startOn: 0,
	preloadBackgrounds: false,
	init: function() {
		var childCount = 0;
		var internalArr = {};
		$(this.slaves).each(function(){
			if (rmgrot.startOn != childCount) {
				$(this).hide();
			}
			if ($(this).attr('id') == '') {
				$(this).attr('id', rmgrot.randomString);
			}
			internalArr[childCount] = '#'+$(this).attr('id');
			childCount++;
		});
		
		this.preload();
		this.curChild = this.startOn;
		this.childCount = childCount;
		this.internalArr = internalArr;
		
		setInterval('rmgrot.doFade()', this.delayTime);
	},
	doFade: function() {
		$(this.internalArr[this.curChild]).fadeOut(this.fadeTime+60);
		this.curChild = (this.curChild == (this.childCount-1) ? 0 : this.curChild+1);
		$(this.internalArr[this.curChild]).fadeIn(this.fadeTime);
	},
	preload: function() {
		$('body').append('<style type="text/css">.rotpreload{position:absolute;top:0;left:-4000px;height:0;width:0;overflow:hidden;}</style>');
		
		$(this.slaves).each(function(){
			var id = rmgrot.randomString();
			$('body').append('<div id="'+id+'" class="rotpreload"></div>');
			$('#'+id).css('backgroundImage', $(this).css('backgroundImage'));
		});
	},
	randomString: function() {
		var chars = "abcdef";
		var string_length = 5;
		var randomstring = '';
		for (var i=0; i<string_length; i++) {
			var rnum = Math.floor(Math.random() * chars.length);
			randomstring += chars.substring(rnum,rnum+1);
		}
		return randomstring;
	}
}

$(document).ready(function(){rmgrot.init();});