   	/***********************************************************************************************
	Copyright (c) 2005 - Alf Magne Kalleland post@dhtmlgoodies.com
	UPDATE LOG:
	March, 10th, 2006 : Added support for a message while large image is loading
	Get this and other scripts at www.dhtmlgoodies.com
	You can use this script freely as long as this copyright message is kept intact.
	***********************************************************************************************/ 
   	
   	
	var displayWaitMessage=true;	// Display a please wait message while images are loading?
  	
   		
	var activeImage = false;
	var slideSpeed = 0;
	var imageGalleryCaptions = new Array();
	
	// SB Changes --------------
	var module_number = 1;
	var endfound = false;
	var arrModules = new Array();
	var maxModuleID = 0;
	
	var imageGalleryLeftPos = new Array();
	var imageGalleryWidth = new Array();
	var imageGalleryObj = new Array();
	var maxGalleryXPos = new Array();
	var minGalleryXPos = new Array();
	var m_id = 1;
	
	
	function startSlide(e)
	{
		if(document.all)e = event;
		
		var id = this.id;
		
		// Get the correct navigation image
		var imgname = 'arrow_' + this.id.split('_')[1];
		module_number = this.id.split('_')[2];
		m_id = this.id.split('_')[2];
		
		this.getElementsByTagName('IMG')[0].src = '/system/images/slideshow/' + imgname + '_over.gif';	
		
		if(this.id.indexOf('arrow_right') > -1){
			slideSpeedMultiply = Math.floor((e.clientX - this.offsetLeft) / 5);
			slideSpeed = -1*slideSpeedMultiply;
			slideSpeed = Math.max(-10,slideSpeed);
		}else{			
			slideSpeedMultiply = 10 - Math.floor((e.clientX - this.offsetLeft) / 5);
			slideSpeed = 1*slideSpeedMultiply;
			slideSpeed = Math.min(10,slideSpeed);
			if(slideSpeed<0)slideSpeed=10;
		}
	}
	
	
	function releaseSlide()
	{
		var id = this.id;
		var imgname = 'arrow_' + this.id.split('_')[1];
		
		this.getElementsByTagName('IMG')[0].src = '/system/images/slideshow/' + imgname + '.gif';
		slideSpeed=0;
	}
		
	
	
	function gallerySlide(m_id)
	{
		if (document.getElementById('theImages_' + m_id) == null) { return; }

		if(slideSpeed!=0){
			var leftPos = imageGalleryObj[m_id].offsetLeft;
			
			//
			window.status = leftPos;
			//
			
			leftPos = leftPos/1 + slideSpeed;
			if(leftPos>maxGalleryXPos[m_id]){
				leftPos = maxGalleryXPos[m_id];
				slideSpeed = 0;
			}
			if(leftPos<minGalleryXPos[m_id]){
				leftPos = minGalleryXPos[m_id];
				slideSpeed=0;
			}
			imageGalleryObj[m_id].style.left = leftPos + 'px';
		}
		setTimeout('gallerySlide(m_id)',30);
	}
	
	
	
	function showImage()
	{
		if(activeImage){
			activeImage.style.filter = 'alpha(opacity=50)';	
			activeImage.style.opacity = 0.5;
		}	
		this.style.filter = 'alpha(opacity=100)';
		this.style.opacity = 1;	
		activeImage = this;	
	}
	
	
	function revealThumbnail()
	{
		this.style.filter = 'alpha(opacity=100)';
		this.style.opacity = 1;
	}
	
	function hideThumbnail()
	{
		this.style.filter = 'alpha(opacity=50)';
		this.style.opacity = 0.5;
	}
	
	function initSlideShow()
	{
		// Not a page with slideshow on it so don't run init code
		if (document.getElementById('theImages_1') == null) { return; }
				
		// Loop through 'theImages_x'
		for( var i=1; endfound==false; i++)
		{
			if (i==50) { endfound=true; } // in case of infininte loop
			
			if (document.getElementById('theImages_'+i)){
				arrModules[i] = document.getElementById('theImages_'+i);
			}else{
				endfound=true;
			}
			maxModuleID = i;
		}


		// Add event handlers and create objects (we can assume starting at '_1' as otherwise we exit at the start of this function)
		for( var m=1; m < maxModuleID; m++)
		{
			document.getElementById('arrow_left_'+m).onmousemove = startSlide;
			document.getElementById('arrow_left_'+m).onmouseout = releaseSlide;
			document.getElementById('arrow_right_'+m).onmousemove = startSlide;
			document.getElementById('arrow_right_'+m).onmouseout = releaseSlide;			
			
			imageGalleryObj[m] = document.getElementById('theImages_' + m);
			imageGalleryLeftPos[m] = imageGalleryObj[m].offsetLeft;
			
			//Changed from 80 to 23 to fix thumbnail gap
			imageGalleryWidth[m] = document.getElementById('galleryContainer_'+m).offsetWidth - 30;
									
			maxGalleryXPos[m] = imageGalleryObj[m].offsetLeft; 
			minGalleryXPos[m] = imageGalleryWidth[m] - document.getElementById('slideEnd_'+m).offsetLeft;
    				
			var browservendor=navigator.vendor; 
            if (browservendor=="Apple Computer, Inc.")
            { 
             //
            }
            else 
            { 
		        var slideshowImages = imageGalleryObj[m].getElementsByTagName('IMG');
		        for(var no=0; no < slideshowImages.length; no++)
		        {
    //			    slideshowImages[no].onmouseover = showImage;
			        slideshowImages[no].onmouseover = revealThumbnail;
			        slideshowImages[no].onmouseout = hideThumbnail;
		        }
            }

		}

			

		
		gallerySlide(module_number);
		
	}
	
	
	function showPreview(imagePath,ID,stralttext)
	{
	var mainIMG = 'igMain'+ID
	var mainPic = document.getElementById(mainIMG)
	mainPic.title = stralttext;
	mainPic.src = imagePath;
	}

	function hideWaitMessage(p_mid)
	{
		document.getElementById('waitMessage_' + p_mid).style.display='none';			
	}
	
	
	function hideWaitMessage(p_mid)
	{
		document.getElementById('waitMessage_' + p_mid).style.display='none';			
	}
	
	
	window.onload = initSlideShow;