//     Welcome to the source code for the Paperscape pop-out menu script
//     Copyright Paperscape 2002
//     webdesign@paperscape.com.au


// preload images for animations and other uses

popLoaded = false;

function preloadPop() {
  	  if (document.images) {

			bluePop2 = new Image;
			bluePop2.src = "images/blue_pop_02.gif"
			
			bluePop4 = new Image;
			bluePop4.src = "images/blue_pop_04.gif"
			
			bluePop6 = new Image;
			bluePop6.src = "images/blue_pop_06.gif"
			
			bluePop8 = new Image;
			bluePop8.src = "images/blue_pop_08.gif"
			
			greenPop2 = new Image;
			greenPop2.src = "images/green_pop_02.gif"
			
			greenPop4 = new Image;
			greenPop4.src = "images/green_pop_04.gif"
			
			greenPop6 = new Image;
			greenPop6.src = "images/green_pop_06.gif"
			
			greenPop8 = new Image;
			greenPop8.src = "images/green_pop_08.gif"
			
			aboutPop = new Image;
			aboutPop.src = "images/about_pop.gif"
			
			keyPop = new Image;
			keyPop.src = "images/key_pop.gif"
			
			servicesPop = new Image;
			servicesPop.src = "images/services_pop.gif"
			
			contactPop = new Image;
			contactPop.src = "images/contact_pop.gif"
			
			eventsPop = new Image;
			eventsPop.src = "images/events_pop.gif"
			
			newsPop = new Image;
			newsPop.src = "images/news_pop.gif"
			
			blueArrow = new Image;
			blueArrow.src = "images/blue_arrow.gif"
			
			greenArrow = new Image;
			greenArrow.src = "images/green_arrow.gif"
			
			blueJoiner = new Image;
			blueJoiner.src = "images/blue_joiner.gif"
			
			greenJoiner = new Image;
			greenJoiner.src = "images/green_joiner.gif"
			
			bluePop = new Image;
			bluePop.src = "images/blue_pop.gif"
			
			greenPop = new Image;
			greenPop.src = "images/green_pop.gif"
			
			popLoaded = true;
    }
}


// image swap 101

function swapPop(boxname, newImg) {
if (popLoaded == true) {
fillbox = eval("document."+boxname);
fillbox.src = eval(newImg+".src");
	}
}



// reload animations ready for next time

function reloadBlue() {
			bluePop2 = new Image;
			bluePop2.src = "images/blue_pop_02.gif"
			
			bluePop4 = new Image;
			bluePop4.src = "images/blue_pop_04.gif"
			
			bluePop6 = new Image;
			bluePop6.src = "images/blue_pop_06.gif"
			
			bluePop8 = new Image;
			bluePop8.src = "images/blue_pop_08.gif"
}

function reloadAbout() {
			aboutPop = new Image;
			aboutPop.src = "images/about_pop.gif"
}

function reloadKey() {
			keyPop = new Image;
			keyPop.src = "images/key_pop.gif"
}

function reloadServices() {
			servicesPop = new Image;
			servicesPop.src = "images/services_pop.gif"
}

function reloadContact() {
			contactPop = new Image;
			contactPop.src = "images/contact_pop.gif"
}

function reloadGreen() {
			greenPop2 = new Image;
			greenPop2.src = "images/green_pop_02.gif"
			
			greenPop4 = new Image;
			greenPop4.src = "images/green_pop_04.gif"
			
			greenPop6 = new Image;
			greenPop6.src = "images/green_pop_06.gif"
			
			greenPop8 = new Image;
			greenPop8.src = "images/green_pop_08.gif"
}

function reloadEvents() {
			eventsPop = new Image;
			eventsPop.src = "images/events_pop.gif"
}

function reloadNews() {
			newsPop = new Image;
			newsPop.src = "images/news_pop.gif"
}



// break animations to interrupt onmouseover event
// rewrite this more efficiently?


function noErrorMessages () { return true; }

function breakBlue() {
			bluePop2 = null;
			window.onerror = noErrorMessages;
			bluePop4 = null;
			window.onerror = noErrorMessages;
			bluePop6 = null;
			window.onerror = noErrorMessages;
			bluePop8 = null;
			window.onerror = noErrorMessages;
}

function breakAbout() {
			breakBlue();
			aboutPop  = null;
			window.onerror = noErrorMessages;
}

function breakKey() {
			breakBlue();
			keyPop = null;
			window.onerror = noErrorMessages;
}

function breakServices() {
			breakBlue();
			servicesPop = null;
			window.onerror = noErrorMessages;
}

function breakContact() {
			breakBlue();
			contactPop = null;
			window.onerror = noErrorMessages;
}

function breakGreen() {
			greenPop8 = null;
			window.onerror = noErrorMessages;
			greenPop6 = null;
			window.onerror = noErrorMessages;
			greenPop4 = null;
			window.onerror = noErrorMessages;
			greenPop2 = null;
			window.onerror = noErrorMessages;
}

function breakEvents() {
			breakGreen();
			eventsPop = null;
			window.onerror = noErrorMessages;
}

function breakNews() {
			breakGreen();
			newsPop = null;
			window.onerror = noErrorMessages;
}





// animate generic blue pop box

function animateBluePop() {
reloadBlue();
TimeBluePop2 = setTimeout("swapPop('bluePopBox', 'bluePop2')", 100);
TimeBluePop2 = setTimeout("swapPop('bluePopBox', 'bluePop4')", 150);
TimeBluePop3 = setTimeout("swapPop('bluePopBox', 'bluePop6')", 200);
TimeBluePop4 = setTimeout("swapPop('bluePopBox', 'bluePop8')", 250);
}


// animate generic green pop box

function animateGreenPop() {
reloadGreen();
TimeGreenPop1 = setTimeout("swapPop('greenPopBox', 'greenPop2')", 100);
TimeGreenPop2 = setTimeout("swapPop('greenPopBox', 'greenPop4')", 150);
TimeGreenPop3 = setTimeout("swapPop('greenPopBox', 'greenPop6')", 200);
TimeGreenPop4 = setTimeout("swapPop('greenPopBox', 'greenPop8')", 250);
}


// animate specific pop boxes

function animateAboutPop() {
reloadAbout();
animateBluePop();
TimeAboutPop = setTimeout("swapPop('bluePopBox', 'aboutPop')", 300);
}

function animateKeyPop() {
reloadKey();
animateBluePop();
TimeKeyPop = setTimeout("swapPop('bluePopBox', 'keyPop')", 300);
}

function animateServicesPop() {
reloadServices();
animateBluePop();
TimeServicesPop = setTimeout("swapPop('bluePopBox', 'servicesPop')", 300);
}

function animateContactPop() {
reloadContact();
animateBluePop();
TimeContactPop = setTimeout("swapPop('bluePopBox', 'contactPop')", 300);
}

function animateEventsPop() {
reloadEvents();
animateGreenPop();
TimeEventsPop = setTimeout("swapPop('greenPopBox', 'eventsPop')", 300);
}

function animateNewsPop() {
reloadNews();
animateGreenPop();
TimeNewsPop = setTimeout("swapPop('greenPopBox', 'newsPop')", 300);
}





// housekeeping

function clearPopTimeouts() {
clearTimeout('TimeBluePop1');
clearTimeout('TimeBluePop2');
clearTimeout('TimeBluePop3');
clearTimeout('TimeBluePop4');
clearTimeout('TimeGreenPop1');
clearTimeout('TimeGreenPop2');
clearTimeout('TimeGreenPop3');
clearTimeout('TimeGreenPop4');
clearTimeout('TimeAboutPop');
clearTimeout('TimeKeyPop');
clearTimeout('TimeServicesPop');
clearTimeout('TimeContactPop');
clearTimeout('TimeEventsPop');
clearTimeout('TimeNewsPop');
}

