var leftGalleryAjax;
var currentLeftGallery = 0;
var leftGalleryPaused = false;
var leftImageWidth;
var leftImageHeight;
var leftGalleryImages;
var leftGalleryLinks;
var leftSlideTimeDelay;
var leftSlideAmount;
var leftCurrentSlideAmount;
var leftNumberOfImages;
var leftGalleryPreloadedImages;
var leftImagesPreloaded = 0;
var galleryTimer;
var leftSliceCounter = 0;
var isSliding = false;
var leftSlidePosition = 0;
var leftWidthToSlide;
var leftSlideDirection;
var leftGalleryComplete;
var leftGalleryPausedNow = false;

function initLeftGallery()
{
	leftGalleryComplete = false;
	
	// get the size of the images
	leftImageWidth = document.getElementById("jsSizerLeft").width;
	leftImageHeight = document.getElementById("jsSizerLeft").height;
	
	galleryTimeBetweenSlides *= 1000;
	
	leftGalleryAjax = startAjax();
	leftGalleryAjax.open("GET","php/read_left_homepage.php",true);
	leftGalleryAjax.onreadystatechange=leftGalleryIsLoaded;
	leftGalleryAjax.send(null);
	
}



function leftGalleryIsLoaded()
{
	if(leftGalleryAjax.readyState==4) // the request is complete
	{
		var data=leftGalleryAjax.responseText; // do whatever you like with it!
		eval(data);// this should give us two arrays - leftGalleryImages and leftGalleryLinks
		
		leftNumberOfImages = leftGalleryImages.length;
		
		leftGalleryPreloadedImages = new Array();
		
		for(c=0;c<leftNumberOfImages;c++)
		{
			leftGalleryPreloadedImages[c] = new Image();
			addEvent(leftGalleryPreloadedImages[c],'load',leftImageLoaded,false);
			leftGalleryPreloadedImages[c].src = leftGalleryImages[c];
		}		
		// loadNextTestimonial();
	}
}

function leftImageLoaded()
{
	leftImagesPreloaded++;
	if(leftImagesPreloaded + 1 == leftNumberOfImages)
	{
		// create divs and images for each one
		for(c=1;c<=leftNumberOfImages;c++)
		{
			p = c * leftImageWidth;
			
			n = document.createElement('div');
			n.setAttribute('id',"galleryLeft"+c);
			n.setAttribute('class','galleryPositioned');
			n.setAttribute('style',"left:"+p+"px;");
			
			a = document.createElement('a');
			a.setAttribute('href',leftGalleryLinks[c]);
			
			i = document.createElement('img');
			i.setAttribute('alt',"");
			i.setAttribute('src',leftGalleryImages[c]);
			
			a.appendChild(i);
			
			n.appendChild(a);
			
			document.getElementById("innerFrameLeft").appendChild(n);
		}
		
		// all are preloaded, so remove the 'loading' gif, and add the bullets.
		l = "";
		
		for(c=leftNumberOfImages-1;c>=0;c--)
		{
			l+="<a href=\"javascript:void\" onclick=\"leftGalleryGo("+c+")\" id=\"leftDot"+c+"\">"+c+"</a>";
		}
		
		document.getElementById("leftGalleryNavigation").innerHTML = l;
		document.getElementById("leftGalleryNavigation").style.visibility = "hidden";
		
		leftDotSelect(0);
		
		leftGalleryComplete = true;
	}
	
	if(rightImagesPreloaded + 1 == rightNumberOfImages && leftImagesPreloaded + 1 == leftNumberOfImages)
	{
	
		document.getElementById("leftGalleryNavigation").style.visibility = "visible";
		document.getElementById("rightGalleryNavigation").style.visibility = "visible";
		
		galleryTimer = setTimeout("slideLeft(1)",galleryTimeBetweenSlides);
	}
}

function leftDotSelect(n)
{
	clearLeftDots();
	document.getElementById("leftDot"+n).className="selected";
}

function clearLeftDots()
{
	for(c=0;c<leftNumberOfImages;c++)
	{
		document.getElementById("leftDot"+c).className="";
	}
}
function leftGalleryGo(n)
{
	if(isSliding)
		return;
		

	
	if(!leftGalleryPaused)
	{
		leftGalleryPausedNow = true;
		clearTimeout(galleryTimer);
	}
		
	leftGalleryPaused = true;
	slideLeft(n);
}

function slideLeft(n)
{
	if(!isSliding)
	{
		if(n == currentLeftGallery)
			return;
		
		isSliding = true;
		clearLeftDots();
		leftSliceCounter = 0;
		leftSlidePosition = 0;
		

		clearTimeout(galleryTimer);
		
		leftCurrentSlideAmount = galleryPixelsPerSlide * Math.abs(n - currentLeftGallery);
		leftWidthToSlide = leftImageWidth * Math.abs(n - currentLeftGallery);
		
		leftSlideDirection = n < currentLeftGallery ? 1 : -1;
	}
	
	leftSlidePosition += leftCurrentSlideAmount;
	
	leftSliceCounter++;
	
	if(leftSliceCounter >= gallerySlowDownAfter)
		leftCurrentSlideAmount-=gallerySlowDownBy;
	
	if(leftCurrentSlideAmount < galleryMinimumSpeed)
		leftCurrentSlideAmount = galleryMinimumSpeed;
		
	if(leftSlidePosition > leftWidthToSlide)
		leftSlidePosition = leftWidthToSlide;
		
	masterPosition = -(currentLeftGallery * leftImageWidth);
	
	for(c=0;c<leftNumberOfImages;c++)
	{
		generalPosition = masterPosition + (c * leftImageWidth);
		generalPosition += leftSlideDirection * leftSlidePosition;
		
		document.getElementById("galleryLeft"+c).style.left=generalPosition+"px";
	}
	
	if(leftSlidePosition == leftWidthToSlide)
	{
		clearTimeout(galleryTimer);
		currentLeftGallery = n;
		isSliding = false;
		leftDotSelect(n);
		
		// are we still scrolling?
		if(!leftGalleryPaused)
		{
			if(rightGalleryPaused)
			{
				m = n+1;
				if(m >= leftNumberOfImages)
					m = 0;
				
				galleryTimer = setTimeout("slideLeft("+m+")",galleryTimeBetweenSlides);
			}
			else
			{
				// right gallery this time
				m = currentRightGallery + 1;
				if(m>=rightNumberOfImages)
					m = 0;
				
				galleryTimer = setTimeout("slideRight("+m+")",galleryTimeBetweenSlides);
			}
		}
		else if(leftGalleryPausedNow)
		{
			leftGalleryPausedNow = false;
			// first time, so set the right timer
			m = currentRightGallery + 1;
			if(m>=rightNumberOfImages)
				m = 0;
			
			galleryTimer = setTimeout("slideRight("+m+")",galleryTimeBetweenSlides);
		}
		else if(leftGalleryPaused && !rightGalleryPaused)
		{
			m = currentRightGallery + 1;
			if(m>=rightNumberOfImages)
				m = 0;
			
			galleryTimer = setTimeout("slideRight("+m+")",galleryTimeBetweenSlides);
		}
	}
	else
	{
		galleryTimer = setTimeout("slideLeft("+n+")",galleryTimeBetweenSlideSlices);
	}
}

