//GLOBALS



var nl = "\n";			// new line, for nice code :-)



var imgFolder = 'images';	//folder with subfolders that contain big images

var smallFolder = 'small';	//folder with subfolders that contain small images (thumbnails)



var imgName = 'photo';		//image name (e.g. the first image is photo-001 - or if you change name to "image" then the first image name is image-001)



var imgExt = 'jpg';		//extension (filetype) for big images

var smallExt = 'jpg';		//extension (filetype) for small images



var setColumns = 5;		// how many columns per page

var setRows = 0;		// how many rows to skip before scroll starts, check and adjust manually

var setHeight = 76+10+10;	// this is important for scroller: max small image (thumbnail) height + <td> padding-top + <td> padding-bottom (see css file)



//GLOBALS - GALLERY FOLDERS ('<folder>', <number of images>)



var setFolders = Array (

		Array('Photo Album',22),

		Array('Kauai Scenery',12),

		Array('Aerial Shots',30)

);



//GALLERY FUNCTIONS



function leadingZero(getImage){



		if (getImage < 10)setImage = "00" + getImage;

		if (getImage > 9 && getImage < 100)setImage = "0" + getImage;

		if (getImage > 99)setImage = getImage;



		return setImage;

}

function initGallery(){



	showGallery(0,setFolders[0][1],setFolders[0][0]);



}	

function showMenu(){



	returnData = '<tr><td id="menu" colspan="'+ setColumns +'"> | ';



	for (getFolder = 0; getFolder < setFolders.length; getFolder++){

		returnData += '<a href="javascript:showGallery(0,'+setFolders[getFolder][1]+',\''+setFolders[getFolder][0]+'\')">'+setFolders[getFolder][0]+'</a> | ';

	}

	

	returnData += '</td></tr>'+nl;

	

	return returnData;	

	

}

function showGallery(getImage,maxImages,setFolder){

	

	i = 0;



	setScroll = Math.round(getImage / setColumns)-setRows;

	if (setScroll < 0)setScroll = 0;

	setScroll = setScroll*setHeight;



	returnData = '<table>'+nl;

	returnData += '<tr><td id="header" colspan="'+ setColumns +'">Gallery</td></tr>'+nl;

	returnData += showMenu();

	returnData += '<tr><td id="title" colspan="'+ setColumns +'">'+ setFolder +'</td></tr>'+nl;

	

	for (displayImage = 1; displayImage <= maxImages; displayImage++){

		

		i++;

		

		setImage = leadingZero(displayImage);

		

		if (i == 1)returnData += '<tr>'+nl;

		

		setClass = '';

		if (displayImage == getImage)setClass = ' class="selected"';

			

		returnData += '<td id="image" '+ setClass +'>';

		returnData += '<a href="javascript:showImage('+ displayImage +','+ maxImages +',\''+ setFolder +'\')"><img src="'+ smallFolder +'/'+ setFolder +'/'+ imgName +'-'+ setImage +'.'+ smallExt +'"></a>'+nl;

		returnData += '</td>';

		if (i == setColumns){

			returnData += '</tr>'+nl;

			i = 0;

		}

	}

	

	if (i > 0)returnData += '<td colspan="'+ (setColumns - i) +'"></td>'+ nl +'</tr>'+nl;



	returnData += '<tr><td id="footer" colspan="'+ setColumns +'"></td></tr>'+nl;

	returnData += '</table>'+nl;



	writeData(returnData,setScroll);

}

function showImage(getImage,maxImages,setFolder){

	

	setImage = leadingZero(getImage);



	imgNxt = getImage + 1;

	imgPre = getImage - 1;

	

	if (imgNxt > maxImages)imgNxt = 1;

	if (imgPre < 1)imgPre = maxImages;



	returnData = '<table>'+nl;

	returnData += '<tr id="selector">'+nl;

	returnData += '<td><a href="javascript:showImage('+ imgPre +','+ maxImages +',\''+ setFolder +'\')">previous</a></td>'+nl;

	returnData += '<td align="center"><a href="javascript:showGallery('+ getImage +','+ maxImages +',\''+ setFolder +'\')">close</a></td>'+nl;

	returnData += '<td align="right"><a href="javascript:showImage('+ imgNxt +','+ maxImages +',\''+ setFolder +'\')">next</a></td>'+nl;

	returnData += '</tr>'+nl;

	returnData += '<tr><td colspan="3"><a href="javascript:showGallery('+ getImage +','+ maxImages +',\''+ setFolder +'\')"><img src="'+ imgFolder +'/'+ setFolder +'/'+ imgName +'-'+ setImage +'.'+ imgExt +'"></a></td></tr>'+nl;

	returnData += '<tr id="selector"><td colspan="3">'+ getImage +' / '+ maxImages +'</td></tr>'+nl;

	returnData += '</table>'+nl;

	

	writeData(returnData,0);

}

function writeData(returnData,setScroll){

	

	document.getElementById('gallery').innerHTML = returnData;

	scrollTo(0,setScroll);



}



//START



initGallery();