	var opacitySpeed = 2;	// Speed of opacity - switching between large images - Lower = faster
	var opacitySteps = 10; 	// Also speed of opacity - Higher = faster
	var slideSpeed = 0;	// Speed of thumbnail slide - Lower = faster
	var slideSteps = 20;	// Also speed of thumbnail slide - Higher = faster
	var columnsOfThumbnails = false;	// Hardcoded number of thumbnail columns, use false if you want the script to figure it out dynamically.
	
	/* Don't change anything below here */
	var largeImage = false;
	var imageToShow = false;
	var currentOpacity = 100;
	var slideWidth = false;
	var thumbTotalWidth = false;
	var viewableWidth = false;
	
	var currentUnqiueOpacityId = false;
	var currentActiveImage = false;
	var thumbDiv = false;
	var thumbSlideInProgress = false;
	
	var browserIsOpera = navigator.userAgent.indexOf('Opera')>=0?true:false;
	var leftArrowObj;
	var rightArrowObj;
	var thumbsColIndex = 1;
	var thumbsLeftPos = false;
	
	function initGalleryScript()
	{
		leftArrowObj = document.getElementById('leftArrow');		
		leftArrowObj.style.visibility='hidden';
		rightArrowObj = document.getElementById('rightArrow');	
		leftArrowObj.style.cursor = 'pointer';	
		rightArrowObj.style.cursor = 'pointer';	
		leftArrowObj.onclick = moveThumbnails;
		rightArrowObj.onclick = moveThumbnails;
		largeImage = document.getElementById('largeImage').getElementsByTagName('IMG')[0];
		var innerDiv = document.getElementById('thumbs_inner');
		slideWidth = innerDiv.getElementsByTagName('DIV')[0].offsetWidth;
		thumbDiv = document.getElementById('thumbs_inner');
		thumbDiv.style.left = '0px';
		
		var subDivs = thumbDiv.getElementsByTagName('DIV');
		thumbTotalWidth = 0;
		var tmpLeft = 0;
		for(var no=0;no<subDivs.length;no++){
			if(subDivs[no].className=='strip_of_thumbnails'){
				thumbTotalWidth = thumbTotalWidth + slideWidth;
				subDivs[no].style.left = tmpLeft + 'px';
				subDivs[no].style.top = '0px';
				tmpLeft = tmpLeft + subDivs[no].offsetWidth;
			}
		}

		viewableWidth = document.getElementById('thumbs').offsetWidth;
		
		
		currentActiveImage = thumbDiv.getElementsByTagName('A')[0].getElementsByTagName('IMG')[0];
		currentActiveImage.className='activeImage';
	}
	
	function moveThumbnails()
	{
		if(thumbSlideInProgress)return;
		thumbSlideInProgress = true;
		if(this.id=='leftArrow'){
			thumbsColIndex--;
			rightArrowObj.style.visibility='visible';
			if(thumbDiv.style.left.replace('px','')/1>=0){
				leftArrowObj.style.visibility='hidden';
				thumbSlideInProgress = false;
				return;
			}
			
			slideThumbs(slideSteps,0);
			
		}else{
			thumbsColIndex++;
			leftArrowObj.style.visibility='visible';
			var left = thumbDiv.style.left.replace('px','')/1;	
			var showArrow = true;
			if(thumbTotalWidth + left - slideWidth <= viewableWidth)showArrow = false;
			if(columnsOfThumbnails)showArrow = true;
				
			if(!showArrow)	
			{
				rightArrowObj.style.visibility='hidden';
				thumbSlideInProgress = false;
				return;
			}	
			
			slideThumbs((slideSteps*-1),0);
		}	
		
	}
	
	function slideThumbs(speed,currentPos)
	{
		var leftPos;
		if(thumbsLeftPos){
			leftPos= thumbsLeftPos;
		}else{
			var leftPos = thumbDiv.style.left.replace('px','')/1;
			thumbsLeftPos = leftPos;
		}
		currentPos = currentPos + Math.abs(speed);		
		var tmpLeftPos = leftPos;
		leftPos = leftPos + speed;
		thumbsLeftPos = leftPos;
		thumbDiv.style.left = leftPos + 'px';
		if(currentPos<slideWidth)setTimeout('slideThumbs(' + speed + ',' + currentPos + ')',slideSpeed);else{
			if(tmpLeftPos>=0 || (columnsOfThumbnails && thumbsColIndex==1)){
				document.getElementById('leftArrow').style.visibility='hidden';
			}	
			var left = tmpLeftPos;		
			var showArrow = true;
			if(thumbTotalWidth + left - slideWidth <= viewableWidth)showArrow=false;
			if(columnsOfThumbnails){
				if((thumbsColIndex+1)<columnsOfThumbnails)showArrow=true; else showArrow = false;				
			}			
			if(!showArrow){
				document.getElementById('rightArrow').style.visibility='hidden';
			}					
			thumbSlideInProgress = false;
		}
	
	}
	
	function showPreview(imagePath,inputObj)
	{		
		if(currentActiveImage){
			if(currentActiveImage==inputObj.getElementsByTagName('IMG')[0])return;
			currentActiveImage.className='';
		}
		currentActiveImage = inputObj.getElementsByTagName('IMG')[0];
		currentActiveImage.className='activeImage';
		
		imageToShow = imagePath;
		var tmpImage = new Image();
		tmpImage.src = imagePath;
		currentUnqiueOpacityId = Math.random();
		moveOpacity(opacitySteps*-1,currentUnqiueOpacityId);
	}
	
	function setOpacity()
	{
		if(document.all)
		{
			largeImage.style.filter = 'alpha(opacity=' + currentOpacity + ')';
		}else{
			largeImage.style.opacity = currentOpacity/100;
		}		
	}
	function moveOpacity(speed,uniqueId)
	{
		
		if(browserIsOpera){
			largeImage.src = imageToShow;
			return;
		}
		
		currentOpacity = currentOpacity + speed;
		if(currentOpacity<=5 && speed<0){
		
			var tmpParent = largeImage.parentNode; 
			largeImage.parentNode.removeChild(largeImage);
			largeImage = document.createElement('IMG');
			tmpParent.appendChild(largeImage);
			setOpacity();
			largeImage.src = imageToShow;
		
			speed=opacitySteps;
		}
		if(currentOpacity>=99 && speed>0)currentOpacity=99;		
		setOpacity();	
		if(currentOpacity>=99 && speed>0)return;		
		if(uniqueId==currentUnqiueOpacityId)setTimeout('moveOpacity(' + speed + ',' + uniqueId + ')',opacitySpeed);		
	}
