/***************************************************************************
	Slides (fading pictures routine by Sune Boeegh)
****************************************************************************/
var ImageArr = new Array();
var ImageElements = new Array();
var InitialNumberOfImages = 8;
var ImagesClickable = true;
var ImageSlideBlendFilter = false;
var ImageSlideTimeEvery = 4;
var Paused = false;

function StartSliding() {
	// preload
	/*
	for(var foo=0; foo<ImageArr.length; foo++) {
		ImageArr[foo].imageObject = new Image(); ImageArr[foo].imageObject.src = ImageArr[foo].src;
	}
	*/

	// initialize target elements
	var imgColl = document.getElementsByTagName("IMG");
	for(var foo=0; foo<imgColl.length; foo++) {
		if(imgColl[foo].className=="slideImage") {
			ImageElements[ImageElements.length] = imgColl[foo];
			if(ImagesClickable) {
				imgColl[foo].onclick = HandleSlideClick;
				imgColl[foo].style.cursor = "hand";
			}
		}
	}

	if(imgColl.length>0) {
		try {
			var filTest = imgColl[0].filters.blendTrans;
			ImageSlideBlendFilter = true;
		} catch(exBlend) {
			ImageSlideBlendFilter = false;
		}
	}

	for(var foo=0; foo<InitialNumberOfImages; foo++) {
		ImageArr[foo].active = true;
	}
	// window.onerror = StartSliding;
	// window.setTimeout("ChangeSlide()",ImageSlideTimeEvery*1000);
	ChangeSlide();
}	

function HandleSlideClick() {
	if(window.event && ImagesClickable) {
		var srcString = window.event.srcElement.src;
		srcString = srcString.replace(/\/slides\//i, "/bigSlides/");
		var leftPos, topPos;
		if(screen.width) {
			topPos = Math.round((screen.height-617)/2);
			leftPos = Math.round((screen.width-617)/2);
		}
		var winHandle = window.open("javascript:''", "showSlide", "width=617,height=617,left="+leftPos+",top="+topPos);
		var winDoc = winHandle.document;
		winDoc.open();
		winDoc.write("<html><body style=\"margin:0px;padding:0px\">");
		winDoc.write("<img src=\""+srcString+"\">");
		winDoc.write("</body></html>");
		winDoc.close();
		winHandle.focus();
	}
}

var randomElement;
function RemovePath(str) {
	return str.substring(str.lastIndexOf("/")+1, str.length);
}

var currentImageIndex = -1;
var currentElementIndex = -1;
var back = false;
function ChangeSlide(direction) {
	if(lastElement!=null) {
		if(lastElement.detachEvent!=null) {
			lastElement.detachEvent("onreadystatechange", SlideHandleReadyState);
		}
	}
	if(!Paused) {
		if(direction!=null) {
			window.clearTimeout(CurrentTimer);
			// currentImageIndex += direction;
			if(direction>0) {
				currentImageIndex += direction;
			} else {
				if(back) {
					currentImageIndex -= 1;
				} else {
					// currentImageIndex -= 3;
					currentImageIndex -= 1;
					back = true;
				}
			}
			
			if(currentImageIndex>ImageArr.length-1) {
				currentImageIndex = 0;
			}
			if(currentImageIndex<0) {
				//currentElementIndex = 0;
				currentImageIndex = ImageArr.length-1;
			}
			
			currentElementIndex += direction;
			if(currentElementIndex>2) {
				currentElementIndex = 0;
			}
			if(currentElementIndex<0) {
				currentElementIndex = 2;
			}
		} else {
			back = false;
			direction = 1;
			
			currentImageIndex += 1;
			if(currentImageIndex>ImageArr.length-1) {
				currentImageIndex = 0;
			}
			
			currentElementIndex += 1;
			if(currentElementIndex>2) {
				currentElementIndex = 0;
			}
		}
	}
	
	var randomElement = document.getElementById("slide" + currentElementIndex);
	if(back) {
		lastElement.style.border = "1px solid black";
		randomElement.style.border = "1px solid black";
	}
	var randomSlide = ImageArr[currentImageIndex];
		
	if(ImageSlideBlendFilter) {
		randomElement.filters.blendTrans.apply();
	}
	
	if(randomElement.attachEvent!=null) {
		randomElement.attachEvent("onreadystatechange", SlideHandleReadyState);
	} else {
		randomElement.onload = SlideHandleReadyState;
	}
	randomElement.src = randomSlide.src;
	lastElement = randomElement;
}
lastElement = null;

var CurrentTimer = null;
function SlideHandleReadyState(e) {
	var element;
	if(window.event!=null) {
		element = window.event.srcElement;
	} else {
		element = e.currentTarget;
	}
	if(element.readyState=="complete" || element.readyState==null) {
		if(element.detachEvent!=null) {
			element.detachEvent("onreadystatechange", SlideHandleReadyState);
		}
		if(ImageSlideBlendFilter) {
			element.filters.blendTrans.play();
			// element.style.border = "";
		}
		element.style.border = "1px solid black";
		CurrentTimer = window.setTimeout("ChangeSlide()",ImageSlideTimeEvery*1000);
	}
}