/***********************************************
* Carousel Slideshow script- © Ger Versluis 2003
* Permission granted to DynamicDrive.com to feature script
* This notice must stay intact for legal use
* Visit http://www.dynamicdrive.com/ for full source code
***********************************************/

/********************************************************
	Create a div with transparent place holder in your html	
	<div id="Carousel" style="position:relative">
		<img src="placeholder.gif" width="404" height="202">
	</div>
	placeholder width:
		 4 sided: 1.42 * carousel image width + 3
		 6 sided: 2 * carousel image width + 4
		 8 sided: 2.62 * carousel image width + 5
		12 sided: 3.87 * carousel image width + 7
	placeholder height: 
		carousel image height+2

	Insert onload in body tag
		<body onload="Carousel()">	
*********************************************************/

// 7 variables to control behavior
	var Car_Image_Width=100;
	var Car_Image_Height=66;
	var Car_Border=true;		// true or false
	var Car_Border_Color="black";
	var Car_Speed=4;
	var Car_Direction=true;		// true or false
	var Car_NoOfSides=12;		// must be 4, 6, 8 or 12

/* array to specify images and optional links. 
	For 4 sided carousel specify at least 2 images
	For 6 sided carousel specify at least 3
	For 8 sided carousel specify at least 4
	For 12 sided carousel specify at least 6
 If Link is not needed keep it ""
*/
	Car_Image_Sources=new Array(
		"Family Gathering 2008/thumbnails/June22-08 007_jpg.jpg","0",
		"Family Gathering 2008/thumbnails/June22-08 009_jpg.jpg","1",
		"Family Gathering 2008/thumbnails/June22-08 011_jpg.jpg","2",
		"Family Gathering 2008/thumbnails/June22-08 014_jpg.jpg","3",
		"Family Gathering 2008/thumbnails/June22-08 018_jpg.jpg","4",
		"Family Gathering 2008/thumbnails/June22-08 019_jpg.jpg","5",
		"Family Gathering 2008/thumbnails/June22-08 020_jpg.jpg","6", 
		"Family Gathering 2008/thumbnails/June22-08 021_jpg.jpg","7",
		"Family Gathering 2008/thumbnails/June22-08 023_jpg.jpg","8",
		"Family Gathering 2008/thumbnails/June22-08 024_jpg.jpg","9",
		"Family Gathering 2008/thumbnails/June22-08 025_jpg.jpg","10",
		"Family Gathering 2008/thumbnails/June22-08 026_jpg.jpg","11",
		"Family Gathering 2008/thumbnails/June22-08 027_jpg.jpg","12",
		"Family Gathering 2008/thumbnails/June22-08 028_jpg.jpg","13", 
		"Family Gathering 2008/thumbnails/June22-08 029_jpg.jpg","14",
		"Family Gathering 2008/thumbnails/June22-08 030_jpg.jpg","15",
		"Family Gathering 2008/thumbnails/June22-08 031_jpg.jpg","16",
		"Family Gathering 2008/thumbnails/June22-08 032_jpg.jpg","17",
		"Family Gathering 2008/thumbnails/June22-08 033_jpg.jpg","18",
		"Family Gathering 2008/thumbnails/June22-08 037_jpg.jpg","19",
		"Family Gathering 2008/thumbnails/June22-08 038_jpg.jpg","20", 
		"Family Gathering 2008/thumbnails/June22-08 039_jpg.jpg","21",
		"Family Gathering 2008/thumbnails/June22-08 040_jpg.jpg","22",
		"Family Gathering 2008/thumbnails/June22-08 041_jpg.jpg","23",
		"Family Gathering 2008/thumbnails/June22-08 042_jpg.jpg","24",
		"Family Gathering 2008/thumbnails/June22-08 044_jpg.jpg","25",
		"Family Gathering 2008/thumbnails/June22-08 045_jpg.jpg","26",
		"Family Gathering 2008/thumbnails/June22-08 046_jpg.jpg","27", 
		"Family Gathering 2008/thumbnails/June22-08 048_jpg.jpg","28",
		"Family Gathering 2008/thumbnails/June22-08 049_jpg.jpg","29",
		"Family Gathering 2008/thumbnails/June22-08 050_jpg.jpg","30",
		"Family Gathering 2008/thumbnails/June22-08 052_jpg.jpg","31",
		"Family Gathering 2008/thumbnails/June22-08 054_jpg.jpg","32",
		"Family Gathering 2008/thumbnails/June22-08 056_jpg.jpg","33",
		"Family Gathering 2008/thumbnails/June22-08 058_jpg.jpg","34", 
		"Family Gathering 2008/thumbnails/June22-08 059_jpg.jpg","35",
		"Family Gathering 2008/thumbnails/June22-08 060_jpg.jpg","36",
		"Family Gathering 2008/thumbnails/June22-08 061_jpg.jpg","37",
		"Family Gathering 2008/thumbnails/June22-08 062_jpg.jpg","38",
		"Family Gathering 2008/thumbnails/June22-08 064_jpg.jpg","39",
		"Family Gathering 2008/thumbnails/June22-08 065_jpg.jpg","40",
		"Family Gathering 2008/thumbnails/June22-08 067_jpg.jpg","41", 
		"Family Gathering 2008/thumbnails/June22-08 068_jpg.jpg","42",
		"Family Gathering 2008/thumbnails/June22-08 070_jpg.jpg","43",
		"Family Gathering 2008/thumbnails/June22-08 072_jpg.jpg","44",
		"Family Gathering 2008/thumbnails/June22-08 073_jpg.jpg","45",
		"Family Gathering 2008/thumbnails/June22-08 074_jpg.jpg","46",
		"Family Gathering 2008/thumbnails/June22-08 075_jpg.jpg","47",
		"Family Gathering 2008/thumbnails/June22-08 076_jpg.jpg","48", 
		"Family Gathering 2008/thumbnails/June22-08 077_jpg.jpg","49",
		"Family Gathering 2008/thumbnails/June22-08 078_jpg.jpg","50",
		"Family Gathering 2008/thumbnails/June22-08 082_jpg.jpg","51",
		"Family Gathering 2008/thumbnails/June22-08 083_jpg.jpg","52",
		"Family Gathering 2008/thumbnails/June22-08 085_jpg.jpg","53",
		"Family Gathering 2008/thumbnails/June22-08 088_jpg.jpg","54",
		"Family Gathering 2008/thumbnails/June22-08 089_jpg.jpg","55", 
		"Family Gathering 2008/thumbnails/June22-08 090_jpg.jpg","56",
		"Family Gathering 2008/thumbnails/June22-08 091_jpg.jpg","57",
		"Family Gathering 2008/thumbnails/June22-08 092_jpg.jpg","58",
		"Family Gathering 2008/thumbnails/June22-08 093_jpg.jpg","59",
		"Family Gathering 2008/thumbnails/June22-08 095_jpg.jpg","60",
		"Family Gathering 2008/thumbnails/June22-08 101_jpg.jpg","61",
		"Family Gathering 2008/thumbnails/June22-08 102_jpg.jpg","62", 
		"Family Gathering 2008/thumbnails/June22-08 106_jpg.jpg","63",
		"Family Gathering 2008/thumbnails/June22-08 107_jpg.jpg","64",
		"Family Gathering 2008/thumbnails/June22-08 108_jpg.jpg","65",
		"Family Gathering 2008/thumbnails/June22-08 109_jpg.jpg","66",
		"Family Gathering 2008/thumbnails/June22-08 110_jpg.jpg","67",
		"Family Gathering 2008/thumbnails/June22-08 111_jpg.jpg","68",
		"Family Gathering 2008/thumbnails/June22-08 112_jpg.jpg","69", 
		"Family Gathering 2008/thumbnails/June22-08 114_jpg.jpg","70",
        "Family Gathering 2008/thumbnails/June22-08 115_jpg.jpg","71" // NOTE No comma after last line
		);

/***************** DO NOT EDIT BELOW **********************************/
	CW_I=new Array(Car_NoOfSides/2+1);C_ClcW=new Array(Car_NoOfSides/2);
	C_Coef=new Array(
		3*Math.PI/2,0,3*Math.PI/2,11*Math.PI/6,Math.PI/6,3*Math.PI/2,7*Math.PI/4,	0,
		Math.PI/4,3*Math.PI/2,5*Math.PI/3,11*Math.PI/6,0,Math.PI/6,Math.PI/3);
	var C_CoefOf=Car_NoOfSides==4?0:Car_NoOfSides==6?2:Car_NoOfSides==8?5:9;
	C_Pre_Img=new Array(Car_Image_Sources.length);
	var C_Angle=Car_Direction?Math.PI/(Car_NoOfSides/2):0,C_CrImg=Car_NoOfSides,C_MaxW,C_TotalW,
	C_Stppd=false,i,C_LeftOffset,C_HalfNo=Car_NoOfSides/2;

	function Carousel(){
		if(document.getElementById){
			for(i=0;i<Car_Image_Sources.length;i+=2){
				C_Pre_Img[i]=new Image();C_Pre_Img[i].src=Car_Image_Sources[i]}
			C_MaxW=Car_Image_Width/Math.sin(Math.PI/Car_NoOfSides)+C_HalfNo+1;
			Car_Div=document.getElementById("Carousel");
			for(i=0;i<C_HalfNo;i++){
				CW_I[i]=document.createElement("img");Car_Div.appendChild(CW_I[i]);	
				CW_I[i].style.position="absolute";
				CW_I[i].style.top=0+"px";
				CW_I[i].style.height=Car_Image_Height+"px";
				if(Car_Border){
					CW_I[i].style.borderStyle="solid";
					CW_I[i].style.borderWidth=1+"px";
					CW_I[i].style.borderColor=Car_Border_Color}
				CW_I[i].src=Car_Image_Sources[2*i];
				CW_I[i].lnk=Car_Image_Sources[2*i+1];
				CW_I[i].onclick=C_ExLnk; //C_LdLnk;
				CW_I[i].onmouseover=C_Stp;
				CW_I[i].onmouseout=C_Rstrt}
			CarImages()}}

	function CarImages(){
		if(!C_Stppd){
			C_TotalW=0;
			for(i=0;i<C_HalfNo;i++){
				C_ClcW[i]=Math.round(Math.cos(Math.abs(C_Coef[C_CoefOf+i]+C_Angle))*Car_Image_Width);
				C_TotalW+=C_ClcW[i]}
			C_LeftOffset=(C_MaxW-C_TotalW)/2;
			for(i=0;i<C_HalfNo;i++){
				CW_I[i].style.left=C_LeftOffset+"px";
				CW_I[i].style.width=C_ClcW[i]+"px";
				C_LeftOffset+=C_ClcW[i]}
			C_Angle+=Car_Speed/720*Math.PI*(Car_Direction?-1:1);
			if((Car_Direction&&C_Angle<=0)||(!Car_Direction&&C_Angle>=Math.PI/C_HalfNo)){
				if(C_CrImg==Car_Image_Sources.length)C_CrImg=0;
				if(Car_Direction){
					CW_I[C_HalfNo]=CW_I[0];
					for(i=0;i<C_HalfNo;i++)CW_I[i]=CW_I[i+1];
					CW_I[C_HalfNo-1].src=Car_Image_Sources[C_CrImg];
					CW_I[C_HalfNo-1].lnk=Car_Image_Sources[C_CrImg+1]}
				else{	for(i=C_HalfNo;i>0;i--)CW_I[i]=CW_I[i-1];
					CW_I[0]=CW_I[C_HalfNo];
					CW_I[0].src=Car_Image_Sources[C_CrImg];
					CW_I[0].lnk=Car_Image_Sources[C_CrImg+1]}
				C_Angle=Car_Direction?Math.PI/C_HalfNo:0;C_CrImg+=2}}
		setTimeout("CarImages()",50)}

	function C_LdLnk(){if(this.lnk)window.location.href=this.lnk}
	function C_Stp(){this.style.cursor=this.lnk?"pointer":"default";C_Stppd=true;}
	function C_Rstrt(){C_Stppd=false}
	function C_ExLnk(){if(this.lnk){slideshowTo(this.lnk); return false;}}

