var numWide = 22;
var numTall = 21;

// Index order is FlipperWideB, FlipperTallB, FlipperWideA, FlipperTallA
var picZs = [1, 2, 3, 4];
var picHolders = ["FlipperWideB", "FlipperTallB", "FlipperWideA", "FlipperTallA"];

// Index order is B, A
var widePics = [1, 2];
var tallPics = [1, 2];

var lastFlipped = 3;

function initPictureFlipper() {
	setTimeout('flipPicture()', 4000);
}

function flipPicture() {

	var filename;
	var rnum = Math.floor(Math.random()*4);

	while (rnum == lastFlipped) {
		rnum = Math.floor(Math.random()*4);
	}
	lastFlipped = rnum;

	var newIndex = new Array();
	newIndex[0] = 1;

	if (rnum == 0 || rnum == 2) {
		filename = genFilename("images/Wide", numWide, widePics, newIndex);
		if (rnum == 0) {
			widePics[0] = newIndex[0];
		} else {
			widePics[1] = newIndex[0];
		}
	} else {
		filename = genFilename("images/Tall", numTall, tallPics, newIndex);
		if (rnum == 1) {
			tallPics[0] = newIndex[0];
		} else {
			tallPics[1] = newIndex[0];
		}
	}

	document.getElementById(picHolders[rnum]).src = filename;
	bringPictureForward(rnum);

	setTimeout('flipPicture()', 4000);
}

function genFilename(base, maxValue, checkArray, result) {

	var rval = base

	var rnum = Math.floor(Math.random()*maxValue) + 1;
	
	while (rnum == checkArray[0] || rnum == checkArray[1]) {
		rnum = Math.floor(Math.random()*maxValue) + 1;
	}
	if (rnum < 10) {
		rval = rval + "0" + rnum;
	} else {
		rval = rval + rnum;
	}
	rval += ".jpg";
	result[0] = rnum;

	return rval;
}

function bringPictureForward(index) {

	var startDepth = picZs[index];
	if (startDepth < 4) {
		for (var i = 0; i < 4; i++) {
			if (i == index) {
				picZs[i] = 4;
			} else {
				if (picZs[i] > startDepth) {
					picZs[i] -= 1;
				}
			}
		}

		document.getElementById("FlipperWideB").style.zIndex = picZs[0];
		document.getElementById("FlipperTallB").style.zIndex = picZs[1];
		document.getElementById("FlipperWideA").style.zIndex = picZs[2];
		document.getElementById("FlipperTallA").style.zIndex = picZs[3];
	}
}


