Image loop not working on 2nd movie load

The loops fades a random image, which works great the first time round,
if i go to another page and then back the home page (which is where this code is on frame 1) the first image loads but the random image code does not continue.

I think it has something to do with nextHolderBool
Any ideas?
Thanks

var numbers:Array = [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20];
var numRemaining:Number;
var randomIndex:Number;
var currNumber:Number;
var nextHolderBool:Number = 1;
var nextHolder:Number;
var currHolder:Number;
var myLag:Number;
var home = this;
//
var getNextImage:Function = function () {
clearInterval(imageTimer);
numRemaining = numbers.length;

//
randomIndex = Math.floor((Math.random()*numRemaining));
//
currNumber = numbers[randomIndex];
numbers.splice(randomIndex, 1);
//
nextHolderBool *= -1;
if (nextHolderBool == 1) {
	nextHolder = 1;
	currHolder = 2;
} else {
	nextHolder = 2;
	currHolder = 1;
}

mclswap.loadClip("gfx/homepageImages/image"+currNumber+".jpg", "mc_holder"+nextHolder);
if (numRemaining == 1) {
	numbers = [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20];
}

};
//…
var mclswap:MovieClipLoader = new MovieClipLoader();
var mclswapL:Object = new Object();
mclswapL.onLoadInit = function() {
_global.crossFadeLoop = setInterval(crossFade, 10);
};
mclswap.addListener(mclswapL);
//
var crossFade:Function = function () {
nextPic = home[“mc_holder”+nextHolder];
currPic = home[“mc_holder”+currHolder];
nextPic._alpha += 1;
currPic._alpha -= 1;
if (nextPic._alpha>=100 && currPic<=0) {
nextPic._alpha = 100;
currPic._alpha = 0;
clearInterval(crossFadeLoop);
myLag = 1;
_global.imageTimer = setInterval(imageLag, 200);
}
};
var imageLag:Function = function () {
myLag += 1;
if (myLag == 7) {
getNextImage();
}
};
getNextImage();