/************************************************************************************************************
Image Slideshow
Copyright (C) February 2005  DTHMLGoodies.com, Alf Magne Kalleland

This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either 
version 2.1 of the License, or (at your option) any later version.

This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public
License along with this library; if prdNot, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA

Dhtmlgoodies.com., hereby disclaims all copyright interest in this script
written by Alf Magne Kalleland.

Alf Magne Kalleland, 2005
Owner of DHTMLgoodies.com

************************************************************************************************************/

	var displayWaitMessage=true;	// Display a please wait message while images are loading?


	var prdActiveImage = false;
	var prdImageGalleryLeftPos = false;
	var prdImageGalleryWidth = false;
	var prdImageGalleryObj = false;
	var prdMaxGalleryXPos = false;
	var prdSlideSpeed = 0;
	var prdImageGalleryCaptions = new Array();
	
	function prdStartSlide(e)
	{
		if(document.all)e = event;
		var id = this.id;
		this.getElementsByTagName('IMG')[0].src = 'assets/img/product/' + this.id + '_over.png';
		if(this.id=='pijlrechts'){
			prdSlideSpeedMultiply = Math.floor((e.clientX - this.offsetLeft) / 20);
			prdSlideSpeed = -1*prdSlideSpeedMultiply;
			prdSlideSpeed = Math.max(-10,prdSlideSpeed);
		}else{
			prdSlideSpeedMultiply = 10 - Math.floor((e.clientX - this.offsetLeft) / 20);
			prdSlideSpeed = 1*prdSlideSpeedMultiply;
			prdSlideSpeed = Math.min(10,prdSlideSpeed);
			if(prdSlideSpeed<0)prdSlideSpeed=10;
		}
	}

	function prdReleaseSlide()
	{
		var id = this.id;
		this.getElementsByTagName('IMG')[0].src = 'assets/img/product/' + this.id + '.png';
		prdSlideSpeed=0;
	}

	function prdGallerySlide()
	{
		if(prdSlideSpeed!=0){
			var leftPos = prdImageGalleryObj.offsetLeft;
			leftPos = leftPos/1 + prdSlideSpeed;
			if(leftPos>prdMaxGalleryXPos){
				leftPos = prdMaxGalleryXPos;
				prdSlideSpeed = 0;

			}
			if(leftPos<prdMinGalleryXPos){
				leftPos = prdMinGalleryXPos;
				prdSlideSpeed=0;
			}

			prdImageGalleryObj.style.left = leftPos + 'px';
		}
		setTimeout('prdGallerySlide()',20);

	}

	function prdShowImage()
	{
		if(activeImage){
			activeImage.style.filter = 'alpha(opacity=100)';
			activeImage.style.opacity = 1;
		}
		this.style.filter = 'alpha(opacity=50)';
		this.style.opacity = 0.5;
		activeImage = this;
	}


	function prdInitSlideShow()
	{
		document.getElementById('pijllinks').onmousemove = prdStartSlide;
		document.getElementById('pijllinks').onmouseout = prdReleaseSlide;
		document.getElementById('pijlrechts').onmousemove = prdStartSlide;
		document.getElementById('pijlrechts').onmouseout = prdReleaseSlide;

		prdImageGalleryObj = document.getElementById('prdImages');
		prdImageGalleryLeftPos = prdImageGalleryObj.offsetLeft;
//alert('image gallery left position = '+prdImageGalleryLeftPos);
		var prdGalleryContainer = document.getElementById('prdGalleryContainer');
//alert(' container width'+prdGalleryContainer.offsetWidth);
		prdImageGalleryWidth = prdGalleryContainer.offsetWidth - 30;
//alert('image gallery widt'+prdImageGalleryWidth);
		prdMaxGalleryXPos = prdImageGalleryObj.offsetLeft;
//alert(' most right position = '+prdMaxGalleryXPos);

//alert(' left position of slide end = '+document.getElementById('prdSlideEnd').offsetLeft);
		prdMinGalleryXPos = prdImageGalleryWidth - document.getElementById('prdSlideEnd').offsetLeft;
//alert('min postion dus start position van left = '+prdMinGalleryXPos);

		if (navigator.userAgent.indexOf('MSIE') >= 0) {
			var prdArrowWidth = document.getElementById('pijllinks').offsetWidth;
			var el = document.createElement('div');
			el.style.position = 'absolute';
			el.style.left = prdArrowWidth + 'px';
			el.style.width = (prdGalleryContainer.offsetWidth - prdArrowWidth * 2) + 'px';
//alert(' style widt = '+el.style.width);
			el.style.overflow = 'hidden';
			el.style.height = '100%';

			document.getElementById('prdGalleryContainer').appendChild(el);
			el.appendChild(document.getElementById('prdImages'));
		}
		var prdSlideshowImages = prdImageGalleryObj.getElementsByTagName('IMG');
		for(var prdNo=0;prdNo<prdSlideshowImages.length;prdNo++){
			
			prdSlideshowImages[prdNo].onmouseover = prdShowImage;
		}

		var prdDivs = prdImageGalleryObj.getElementsByTagName('DIV');
		for(var prdNo=0;prdNo<prdDivs.length;prdNo++){
			if(prdDivs[prdNo].className=='prdImageCaption')prdImageGalleryCaptions[prdImageGalleryCaptions.length] = prdDivs[prdNo].innerHTML;
		}
		
		prdGallerySlide();
    }
	
function prdShowPreview(imagePath,imageIndex){
		var prdSubImages = document.getElementById('previewPane').getElementsByTagName('IMG');
		if(prdSubImages.length==0){
			var prdImg = document.createElement('IMG');
			document.getElementById('previewPane').appendChild(prdImg);
	
	}else prdImg = prdSubImages[0];
		if(displayWaitMessage){
			document.getElementById('prdWaitMessage').style.display='inline';
		}
		document.getElementById('prdLargeImageCaption').style.display='none';
		prdImg.onload = function() { prdHideWaitMessageAndShowCaption(imageIndex-1); };
		prdImg.src = imagePath;

	}
function prdHideWaitMessageAndShowCaption(imageIndex)
	{
		document.getElementById('prdWaitMessage').style.display='none';
		document.getElementById('prdLargeImageCaption').innerHTML = imageGalleryCaptions[imageIndex];
		document.getElementById('prdLargeImageCaption').style.display='block';

	}
	
	window.onload =  prdInitSlideShow;
