window.onload = initAll;

function initAll() {

	/// MARCH
	document.getElementById("marchNextImg").onclick = function() {marchSlide(1);};
	document.getElementById("marchImage").onclick = function() {marchSlide(1);};
	document.getElementById("marchPrevImg").onclick = function() {marchSlide(-1);};
	
	/// JACKLYN ATLAS
	document.getElementById("jatlasNextImg").onclick = function() {jatlasSlide(1);};
	document.getElementById("jatlasImage").onclick = function() {jatlasSlide(1);};
	document.getElementById("jatlasPrevImg").onclick = function() {jatlasSlide(-1);};

	/// FONTAINEBLEAU IFB
	document.getElementById("ifbNextImg").onclick = function() {ifbSlide(1);};
	document.getElementById("ifbImage").onclick = function() {ifbSlide(1);};
	document.getElementById("ifbPrevImg").onclick = function() {ifbSlide(-1);};
	
	/// MAC REDESIGN
	document.getElementById("macRedesignNextImg").onclick = function() {macRedesignSlide(1);};
	document.getElementById("macRedesignImage").onclick = function() {macRedesignSlide(1);};
	document.getElementById("macRedesignPrevImg").onclick = function() {macRedesignSlide(-1);};

	/// DOMESTICA
	document.getElementById("domesticaNextImg").onclick = function() {domesticaSlide(1);};
	document.getElementById("domesticaImage").onclick = function() {domesticaSlide(1);};
	document.getElementById("domesticaPrevImg").onclick = function() {domesticaSlide(-1);};
	
	/// ELEVEN
	document.getElementById("elevenNextImg").onclick = function() {elevenSlide(1);};
	document.getElementById("elevenImage").onclick = function() {elevenSlide(1);};
	document.getElementById("elevenPrevImg").onclick = function() {elevenSlide(-1);};
	
	/// INDIGO
	document.getElementById("indigoNextImg").onclick = function() {indigoSlide(1);};
	document.getElementById("indigoImage").onclick = function() {indigoSlide(1);};
	document.getElementById("indigoPrevImg").onclick = function() {indigoSlide(-1);};
	
	/// FERRARI
	document.getElementById("ferrariNextImg").onclick = function() {ferrariSlide(1);};
	document.getElementById("ferrariImage").onclick = function() {ferrariSlide(1);};
	document.getElementById("ferrariPrevImg").onclick = function() {ferrariSlide(-1);};
	
	/// VARIOUS
	document.getElementById("variousNextImg").onclick = function() {variousSlide(1);};
	document.getElementById("variousImage").onclick = function() {variousSlide(1);};
	document.getElementById("variousPrevImg").onclick = function() {variousSlide(-1);};
	
}

////////////////////////
/// GLOBAL VARIABLES ///
////////////////////////

fadeOutDuration = 0.2;
fadeInDuration = 0.35;
slideDirection = 0;

/////////////////////////////////
/// PROJECT SPECIFIC VARIABLES///
/////////////////////////////////

/// MARCH

marchArray = new Array("images/march_01.jpg","images/march_02.jpg","images/march_03.jpg","images/march_04.jpg");
marchCurrent = 0;

if (document.images) {
	marchCachePrev= new Image;
	marchCacheNext = new Image;
	marchCachePrev.src = marchArray[marchArray.length - 1];
	marchCacheNext.src = marchArray[1];
}

/// JACKLYN ATLAS

jatlasArray = new Array("images/jatlas_01.jpg","images/jatlas_02.jpg","images/jatlas_03.jpg","images/jatlas_04.jpg");
jatlasCurrent = 0;

if (document.images) {
	jatlasCachePrev= new Image;
	jatlasCacheNext = new Image;
	jatlasCachePrev.src = jatlasArray[jatlasArray.length - 1];
	jatlasCacheNext.src = jatlasArray[1];
}

/// FONTAINEBLEAU IFB

ifbArray = new Array("images/iFB_01.jpg","images/iFB_02.jpg","images/iFB_03.jpg","images/iFB_04.jpg","images/iFB_05.jpg","images/iFB_06.jpg","images/iFB_07.jpg","images/iFB_08.jpg");
ifbCurrent = 0;

if (document.images) {
	ifbCachePrev= new Image;
	ifbCacheNext = new Image;
	ifbCachePrev.src = ifbArray[ifbArray.length - 1];
	ifbCacheNext.src = ifbArray[1];
}

/// MAC REDESIGN

macRedesignArray = new Array("images/macRedesign_01.jpg","images/macRedesign_02.jpg","images/macRedesign_03.jpg","images/macRedesign_04.jpg","images/macRedesign_05.jpg","images/macRedesign_06.jpg","images/macRedesign_07.jpg","images/macRedesign_08.jpg");
macRedesignCurrent = 0;

if (document.images) {
	macRedesignCachePrev= new Image;
	macRedesignCacheNext = new Image;
	macRedesignCachePrev.src = macRedesignArray[macRedesignArray.length - 1];
	macRedesignCacheNext.src = macRedesignArray[1];
}

/// DOMESTICA

domesticaArray = new Array("images/domestica_01.jpg","images/domestica_02.jpg","images/domestica_03.jpg","images/domestica_04.jpg","images/domestica_05.jpg","images/domestica_06.jpg","images/domestica_07.jpg","images/domestica_08.jpg");
domesticaCurrent = 0;

if (document.images) {
	domesticaCachePrev= new Image;
	domesticaCacheNext = new Image;
	domesticaCachePrev.src = domesticaArray[domesticaArray.length - 1];
	domesticaCacheNext.src = domesticaArray[1];
}

/// ELEVEN

elevenArray = new Array("images/eleven_01.jpg","images/eleven_02.jpg","images/eleven_03.jpg","images/eleven_04.jpg","images/eleven_05.jpg","images/eleven_06.jpg");
elevenCurrent = 0;

if (document.images) {
	elevenCachePrev= new Image;
	elevenCacheNext = new Image;
	elevenCachePrev.src = elevenArray[elevenArray.length - 1];
	elevenCacheNext.src = elevenArray[1];
}

/// INDIGO

indigoArray = new Array("images/indigo_01.jpg","images/indigo_02.jpg","images/indigo_03.jpg","images/indigo_04.jpg","images/indigo_05.jpg","images/indigo_06.jpg");
indigoCurrent = 0;

if (document.images) {
	indigoCachePrev= new Image;
	indigoCacheNext = new Image;
	indigoCachePrev.src = indigoArray[indigoArray.length - 1];
	indigoCacheNext.src = indigoArray[1];
}

/// FERRARI

ferrariArray = new Array("images/ferrari_01.jpg","images/ferrari_02.jpg","images/ferrari_03.jpg","images/ferrari_04.jpg","images/ferrari_05.jpg","images/ferrari_06.jpg");
ferrariCurrent = 0;

if (document.images) {
	ferrariCachePrev= new Image;
	ferrariCacheNext = new Image;
	ferrariCachePrev.src = ferrariArray[ferrariArray.length - 1];
	ferrariCacheNext.src = ferrariArray[1];
}

/// VARIOUS

variousArray = new Array("images/various_01.jpg","images/various_02.jpg","images/various_03.jpg","images/various_04.jpg");
variousCurrent = 0;

if (document.images) {
	variousCachePrev= new Image;
	variousCacheNext = new Image;
	variousCachePrev.src = variousArray[variousArray.length - 1];
	variousCacheNext.src = variousArray[1];
}

//////////////////////////////////
/// PROJECT SPECIFIC FUNCTIONS ///
//////////////////////////////////


/// MARCH

function marchSlide(direction) {
	marchSlideOut(direction);
	slideDirection = direction;
	marchCurrent += direction;
	
	if (marchCurrent > marchArray.length - 1) {
		marchCurrent = 0;
	}
	if (marchCurrent < 0) {
		marchCurrent = marchArray.length - 1;
	}
	currentNumber = marchCurrent+1;
	totalNumber = marchArray.length;
	document.getElementById("marchCount").innerHTML = currentNumber + " / " + totalNumber;
	
}
	
function marchSlideIn() {
	if (slideDirection == 1){
		document.marchImage.src=marchCacheNext.src;
	}
	
	if (slideDirection == -1){
		document.marchImage.src=marchCachePrev.src;
	}
	
	if(marchCurrent == marchArray.length-1) {
		marchCachePrev.src = marchArray[marchArray.length-2];
		marchCacheNext.src = marchArray[0];
	} else if(marchCurrent == 0) {
		marchCachePrev.src = marchArray[marchArray.length-1];
		marchCacheNext.src = marchArray[marchCurrent+1];
	} else {
		marchCachePrev.src = marchArray[marchCurrent-1];
		marchCacheNext.src = marchArray[marchCurrent+1];
	}
			
    var attributes = {opacity: {to: 1, from: 0}}; 
    var anim = new YAHOO.util.Anim('marchImage', attributes);
    anim.duration = fadeInDuration; 
	anim.animate();


}

function marchSlideOut() {
    var attributes = {opacity: {to: 0, from: 1}}; 
    var anim = new YAHOO.util.Anim('marchImage', attributes);
    anim.duration = fadeOutDuration; 
	anim.animate();
	anim.onComplete.subscribe(marchSlideIn);
}


/// JACKLYN ATLAS

function jatlasSlide(direction) {
	jatlasSlideOut(direction);
	slideDirection = direction;
	jatlasCurrent += direction;
	
	if (jatlasCurrent > jatlasArray.length - 1) {
		jatlasCurrent = 0;
	}
	if (jatlasCurrent < 0) {
		jatlasCurrent = jatlasArray.length - 1;
	}
	currentNumber = jatlasCurrent+1;
	totalNumber = jatlasArray.length;
	document.getElementById("jatlasCount").innerHTML = currentNumber + " / " + totalNumber;
	
}
	
function jatlasSlideIn() {
	if (slideDirection == 1){
		document.jatlasImage.src=jatlasCacheNext.src;
	}
	
	if (slideDirection == -1){
		document.jatlasImage.src=jatlasCachePrev.src;
	}
	
	if(jatlasCurrent == jatlasArray.length-1) {
		jatlasCachePrev.src = jatlasArray[jatlasArray.length-2];
		jatlasCacheNext.src = jatlasArray[0];
	} else if(jatlasCurrent == 0) {
		jatlasCachePrev.src = jatlasArray[jatlasArray.length-1];
		jatlasCacheNext.src = jatlasArray[jatlasCurrent+1];
	} else {
		jatlasCachePrev.src = jatlasArray[jatlasCurrent-1];
		jatlasCacheNext.src = jatlasArray[jatlasCurrent+1];
	}
			
    var attributes = {opacity: {to: 1, from: 0}}; 
    var anim = new YAHOO.util.Anim('jatlasImage', attributes);
    anim.duration = fadeInDuration; 
	anim.animate();


}

function jatlasSlideOut() {
    var attributes = {opacity: {to: 0, from: 1}}; 
    var anim = new YAHOO.util.Anim('jatlasImage', attributes);
    anim.duration = fadeOutDuration; 
	anim.animate();
	anim.onComplete.subscribe(jatlasSlideIn);
}

/// FONTAINEBLEAU IFB

function ifbSlide(direction) {
	ifbSlideOut(direction);
	slideDirection = direction;
	ifbCurrent += direction;
	
	if (ifbCurrent > ifbArray.length - 1) {
		ifbCurrent = 0;
	}
	if (ifbCurrent < 0) {
		ifbCurrent = ifbArray.length - 1;
	}
	currentNumber = ifbCurrent+1;
	totalNumber = ifbArray.length;
	document.getElementById("ifbCount").innerHTML = currentNumber + " / " + totalNumber;
	
}

	
function ifbSlideIn() {
	if (slideDirection == 1){
		document.ifbImage.src=ifbCacheNext.src;
	}
	
	if (slideDirection == -1){
		document.ifbImage.src=ifbCachePrev.src;
	}
	
	if(ifbCurrent == ifbArray.length-1) {
		ifbCachePrev.src = ifbArray[ifbArray.length-2];
		ifbCacheNext.src = ifbArray[0];
	} else if(ifbCurrent == 0) {
		ifbCachePrev.src = ifbArray[ifbArray.length-1];
		ifbCacheNext.src = ifbArray[ifbCurrent+1];
	} else {
		ifbCachePrev.src = ifbArray[ifbCurrent-1];
		ifbCacheNext.src = ifbArray[ifbCurrent+1];
	}
			
    var attributes = {opacity: {to: 1, from: 0}}; 
    var anim = new YAHOO.util.Anim('ifbImage', attributes);
    anim.duration = fadeInDuration; 
	anim.animate();


}

function ifbSlideOut() {
    var attributes = {opacity: {to: 0, from: 1}}; 
    var anim = new YAHOO.util.Anim('ifbImage', attributes);
    anim.duration = fadeOutDuration; 
	anim.animate();
	anim.onComplete.subscribe(ifbSlideIn);
}

/// MAC REDESIGN

function macRedesignSlide(direction) {
	macRedesignSlideOut(direction);
	slideDirection = direction;
	macRedesignCurrent += direction;
	
	if (macRedesignCurrent > macRedesignArray.length - 1) {
		macRedesignCurrent = 0;
	}
	if (macRedesignCurrent < 0) {
		macRedesignCurrent = macRedesignArray.length - 1;
	}
	currentNumber = macRedesignCurrent+1;
	totalNumber = macRedesignArray.length;
	document.getElementById("macRedesignCount").innerHTML = currentNumber + " / " + totalNumber;
	
}

	
function macRedesignSlideIn() {
	if (slideDirection == 1){
		document.macRedesignImage.src=macRedesignCacheNext.src;
	}
	
	if (slideDirection == -1){
		document.macRedesignImage.src=macRedesignCachePrev.src;
	}
	
	if(macRedesignCurrent == macRedesignArray.length-1) {
		macRedesignCachePrev.src = macRedesignArray[macRedesignArray.length-2];
		macRedesignCacheNext.src = macRedesignArray[0];
	} else if(macRedesignCurrent == 0) {
		macRedesignCachePrev.src = macRedesignArray[macRedesignArray.length-1];
		macRedesignCacheNext.src = macRedesignArray[macRedesignCurrent+1];
	} else {
		macRedesignCachePrev.src = macRedesignArray[macRedesignCurrent-1];
		macRedesignCacheNext.src = macRedesignArray[macRedesignCurrent+1];
	}
			
    var attributes = {opacity: {to: 1, from: 0}}; 
    var anim = new YAHOO.util.Anim('macRedesignImage', attributes);
    anim.duration = fadeInDuration; 
	anim.animate();


}

function macRedesignSlideOut() {
    var attributes = {opacity: {to: 0, from: 1}}; 
    var anim = new YAHOO.util.Anim('macRedesignImage', attributes);
    anim.duration = fadeOutDuration; 
	anim.animate();
	anim.onComplete.subscribe(macRedesignSlideIn);
}


/// DOMESTICA

function domesticaSlide(direction) {
	domesticaSlideOut(direction);
	slideDirection = direction;
	domesticaCurrent += direction;
	
	if (domesticaCurrent > domesticaArray.length - 1) {
		domesticaCurrent = 0;
	}
	if (domesticaCurrent < 0) {
		domesticaCurrent = domesticaArray.length - 1;
	}
	currentNumber = domesticaCurrent+1;
	totalNumber = domesticaArray.length;
	document.getElementById("domesticaCount").innerHTML = currentNumber + " / " + totalNumber;
	
}
	
function domesticaSlideIn() {
	if (slideDirection == 1){
		document.domesticaImage.src=domesticaCacheNext.src;
	}
	
	if (slideDirection == -1){
		document.domesticaImage.src=domesticaCachePrev.src;
	}
	
	if(domesticaCurrent == domesticaArray.length-1) {
		domesticaCachePrev.src = domesticaArray[domesticaArray.length-2];
		domesticaCacheNext.src = domesticaArray[0];
	} else if(domesticaCurrent == 0) {
		domesticaCachePrev.src = domesticaArray[domesticaArray.length-1];
		domesticaCacheNext.src = domesticaArray[domesticaCurrent+1];
	} else {
		domesticaCachePrev.src = domesticaArray[domesticaCurrent-1];
		domesticaCacheNext.src = domesticaArray[domesticaCurrent+1];
	}
			
    var attributes = {opacity: {to: 1, from: 0}}; 
    var anim = new YAHOO.util.Anim('domesticaImage', attributes);
    anim.duration = fadeInDuration; 
	anim.animate();


}

function domesticaSlideOut() {
    var attributes = {opacity: {to: 0, from: 1}}; 
    var anim = new YAHOO.util.Anim('domesticaImage', attributes);
    anim.duration = fadeOutDuration; 
	anim.animate();
	anim.onComplete.subscribe(domesticaSlideIn);
}

/// ELEVEN

function elevenSlide(direction) {
	elevenSlideOut(direction);
	slideDirection = direction;
	elevenCurrent += direction;
	
	if (elevenCurrent > elevenArray.length - 1) {
		elevenCurrent = 0;
	}
	if (elevenCurrent < 0) {
		elevenCurrent = elevenArray.length - 1;
	}
	currentNumber = elevenCurrent+1;
	totalNumber = elevenArray.length;
	document.getElementById("elevenCount").innerHTML = currentNumber + " / " + totalNumber;
	
}
	
function elevenSlideIn() {
	if (slideDirection == 1){
		document.elevenImage.src=elevenCacheNext.src;
	}
	
	if (slideDirection == -1){
		document.elevenImage.src=elevenCachePrev.src;
	}
	
	if(elevenCurrent == elevenArray.length-1) {
		elevenCachePrev.src = elevenArray[elevenArray.length-2];
		elevenCacheNext.src = elevenArray[0];
	} else if(elevenCurrent == 0) {
		elevenCachePrev.src = elevenArray[elevenArray.length-1];
		elevenCacheNext.src = elevenArray[elevenCurrent+1];
	} else {
		elevenCachePrev.src = elevenArray[elevenCurrent-1];
		elevenCacheNext.src = elevenArray[elevenCurrent+1];
	}
			
    var attributes = {opacity: {to: 1, from: 0}}; 
    var anim = new YAHOO.util.Anim('elevenImage', attributes);
    anim.duration = fadeInDuration; 
	anim.animate();


}

function elevenSlideOut() {
    var attributes = {opacity: {to: 0, from: 1}}; 
    var anim = new YAHOO.util.Anim('elevenImage', attributes);
    anim.duration = fadeOutDuration; 
	anim.animate();
	anim.onComplete.subscribe(elevenSlideIn);
}

/// INDIGO

function indigoSlide(direction) {
	indigoSlideOut(direction);
	slideDirection = direction;
	indigoCurrent += direction;
	
	if (indigoCurrent > indigoArray.length - 1) {
		indigoCurrent = 0;
	}
	if (indigoCurrent < 0) {
		indigoCurrent = indigoArray.length - 1;
	}
	currentNumber = indigoCurrent+1;
	totalNumber = indigoArray.length;
	document.getElementById("indigoCount").innerHTML = currentNumber + " / " + totalNumber;
	
}
	
function indigoSlideIn() {
	if (slideDirection == 1){
		document.indigoImage.src=indigoCacheNext.src;
	}
	
	if (slideDirection == -1){
		document.indigoImage.src=indigoCachePrev.src;
	}
	
	if(indigoCurrent == indigoArray.length-1) {
		indigoCachePrev.src = indigoArray[indigoArray.length-2];
		indigoCacheNext.src = indigoArray[0];
	} else if(indigoCurrent == 0) {
		indigoCachePrev.src = indigoArray[indigoArray.length-1];
		indigoCacheNext.src = indigoArray[indigoCurrent+1];
	} else {
		indigoCachePrev.src = indigoArray[indigoCurrent-1];
		indigoCacheNext.src = indigoArray[indigoCurrent+1];
	}
			
    var attributes = {opacity: {to: 1, from: 0}}; 
    var anim = new YAHOO.util.Anim('indigoImage', attributes);
    anim.duration = fadeInDuration; 
	anim.animate();


}

function indigoSlideOut() {
    var attributes = {opacity: {to: 0, from: 1}}; 
    var anim = new YAHOO.util.Anim('indigoImage', attributes);
    anim.duration = fadeOutDuration; 
	anim.animate();
	anim.onComplete.subscribe(indigoSlideIn);
}

/// FERRARI

function ferrariSlide(direction) {
	ferrariSlideOut(direction);
	slideDirection = direction;
	ferrariCurrent += direction;
	
	if (ferrariCurrent > ferrariArray.length - 1) {
		ferrariCurrent = 0;
	}
	if (ferrariCurrent < 0) {
		ferrariCurrent = ferrariArray.length - 1;
	}
	currentNumber = ferrariCurrent+1;
	totalNumber = ferrariArray.length;
	document.getElementById("ferrariCount").innerHTML = currentNumber + " / " + totalNumber;
	
}
	
function ferrariSlideIn() {
	if (slideDirection == 1){
		document.ferrariImage.src=ferrariCacheNext.src;
	}
	
	if (slideDirection == -1){
		document.ferrariImage.src=ferrariCachePrev.src;
	}
	
	if(ferrariCurrent == ferrariArray.length-1) {
		ferrariCachePrev.src = ferrariArray[ferrariArray.length-2];
		ferrariCacheNext.src = ferrariArray[0];
	} else if(ferrariCurrent == 0) {
		ferrariCachePrev.src = ferrariArray[ferrariArray.length-1];
		ferrariCacheNext.src = ferrariArray[ferrariCurrent+1];
	} else {
		ferrariCachePrev.src = ferrariArray[ferrariCurrent-1];
		ferrariCacheNext.src = ferrariArray[ferrariCurrent+1];
	}
			
    var attributes = {opacity: {to: 1, from: 0}}; 
    var anim = new YAHOO.util.Anim('ferrariImage', attributes);
    anim.duration = fadeInDuration; 
	anim.animate();


}

function ferrariSlideOut() {
    var attributes = {opacity: {to: 0, from: 1}}; 
    var anim = new YAHOO.util.Anim('ferrariImage', attributes);
    anim.duration = fadeOutDuration; 
	anim.animate();
	anim.onComplete.subscribe(ferrariSlideIn);
}

/// VARIOUS

function variousSlide(direction) {
	variousSlideOut(direction);
	slideDirection = direction;
	variousCurrent += direction;
	
	if (variousCurrent > variousArray.length - 1) {
		variousCurrent = 0;
	}
	if (variousCurrent < 0) {
		variousCurrent = variousArray.length - 1;
	}
	currentNumber = variousCurrent+1;
	totalNumber = variousArray.length;
	document.getElementById("variousCount").innerHTML = currentNumber + " / " + totalNumber;
	
}
	
function variousSlideIn() {
	if (slideDirection == 1){
		document.variousImage.src=variousCacheNext.src;
	}
	
	if (slideDirection == -1){
		document.variousImage.src=variousCachePrev.src;
	}
	
	if(variousCurrent == variousArray.length-1) {
		variousCachePrev.src = variousArray[variousArray.length-2];
		variousCacheNext.src = variousArray[0];
	} else if(variousCurrent == 0) {
		variousCachePrev.src = variousArray[variousArray.length-1];
		variousCacheNext.src = variousArray[variousCurrent+1];
	} else {
		variousCachePrev.src = variousArray[variousCurrent-1];
		variousCacheNext.src = variousArray[variousCurrent+1];
	}
			
    var attributes = {opacity: {to: 1, from: 0}}; 
    var anim = new YAHOO.util.Anim('variousImage', attributes);
    anim.duration = fadeInDuration; 
	anim.animate();


}

function variousSlideOut() {
    var attributes = {opacity: {to: 0, from: 1}}; 
    var anim = new YAHOO.util.Anim('variousImage', attributes);
    anim.duration = fadeOutDuration; 
	anim.animate();
	anim.onComplete.subscribe(variousSlideIn);
}