/*********************************************
	
 JavaScript Document: Home Slideshow
 Author: Anthony Hessler (HesslerDesign.com)
	
*********************************************/

var totalImages_num = 5;
var currentImage_num = 0;
var timer;
var timerDuration_num = 12500;
var largeImgTags_arr = ['<img src="images/home/steel_coils.jpg" alt="Steel Coils" />',
						'<img src="images/home/steel_workers.jpg" alt="Steel Workers" />',
						'<img src="images/home/steel_rolls.jpg" alt="Steel Rolls" />',
						'<img src="images/home/quality_graphic.jpg" alt="Quality: Plan, Do, Check, Act" />',
						'<img src="images/home/solar_panel_wind_turbine.jpg" alt="Solar Panel and Wind Turbine" />'];
var largeImagesLoaded_arr = [false, false, false, false, false];


/******************************

 Initialization Functions

******************************/

function initSlideshow() {
	swapImage(0);
}




/******************************

 Swap Functions

******************************/

function swapImageViaTimer() {
	if (currentImage_num < totalImages_num-1) {
		currentImage_num++;
	} else {
		currentImage_num = 0;
	}
	swapImage(currentImage_num);
}
function swapImage(pNum_num) {
	for (var i=0; i<totalImages_num; i++) {
		if (i != pNum_num) {
			resetInactive(i);
		} else {
			setActive(i);
		}
	}
	currentImage_num = pNum_num;
	resetTimer();
}




/******************************

 Highlight Functions

******************************/

function highlightThumb(pNum_num, pWhatWay_bol) {
	var lOverlay = getObject('overlay:'+pNum_num);
	if (pNum_num != currentImage_num) {
		if (pWhatWay_bol) {
			lOverlay.setAttribute("class", "active");
			lOverlay.className = "active";
		} else {
			lOverlay.setAttribute("class", "overlay");
			lOverlay.className = "overlay";
		}
	}
}




/******************************

 Get / Set / Reset Functions

******************************/

function resetInactive(pNum_num) {
	var lOverlay = getObject('overlay:'+pNum_num);
	var lLarge = getObject('large:'+pNum_num);
	var lText = getObject('text:'+pNum_num);
	lOverlay.setAttribute("class", "overlay");
	lOverlay.className = "overlay";
	lLarge.style.display = "none";
	lText.style.display = "none";
}
function setActive(pNum_num) {
	var lThumb = getObject('overlay:'+pNum_num);
	var lLarge = getObject('large:'+pNum_num);
	var lText = getObject('text:'+pNum_num);
	lThumb.setAttribute("class", "overlay active");
	lThumb.className = "overlay active";
	if (largeImagesLoaded_arr[pNum_num] == false) {
		populateLargeImage(pNum_num);
	}
	lLarge.style.display = "block";
	lText.style.display = "block";
	$(lLarge).animate({ opacity:0 }, 0);
	$(lLarge).animate({ opacity:1 }, 750);
	$(lText).animate({ opacity:0 }, 0);
	$(lText).animate({ opacity:1 }, 375);
}
function resetTimer() {
	if (timer) {
		clearTimeout(timer);
	}
	timer = setTimeout(swapImageViaTimer, timerDuration_num);
}
function getObject(pObj_str) {
	var lObject = document.getElementById(pObj_str);
	if (!lObject) {
		lObject = window.getElementById(pObj_str);
	}
	return lObject;
}




/******************************

 Populate Functions

******************************/

function populateLargeImage(pNum_num) {
	var lLarge = getObject('large:'+pNum_num);
	lLarge.innerHTML = largeImgTags_arr[pNum_num];
	largeImagesLoaded_arr[pNum_num] = true;
}
