<!--

// --------------------------------------------------------------------------

function initViewer() {
	if(initid == 0) {
		setImageIndex(0);
	} else {
		setImageIndex(findIndexById(initid));
	}
}

function setImageIndex(idx) {
	previdx = currentidx;
	currentidx = idx;
	reorderAlbum();
}

function setImageOffset(q) {
	previdx = currentidx;
	currentidx = sumIndexPosition(q);
	reorderAlbum();
}

function setDirectImage(w) {
	if(imgids.length > (maxImgs)) {
		setImageOffset(w-currentImagePos);
	} else {
		setImageIndex(w-1);
	}
}

// --------------------------------------------------------------------------

function sumIndexPosition(whatOffset) {
	var newOffset = currentidx + whatOffset;
	if(newOffset < 0) { newOffset = imgids.length + newOffset; }
	if(newOffset >= imgids.length) { newOffset = newOffset - imgids.length; }
	return newOffset;
}

function findIndexById(id) {
	if(id) {
		var i;
		var fidx = 0;
		for(i=0;i<imgids.length;i++) {
			if(gi(i, 0) == id) {
				fidx = i;
				break;
			}
		}
		return fidx;
	} else {
		return 0;
	}
}

function gi(idx, w) {
	if(imgids[idx]) {
		return imgids[idx].split('|')[w];
	} else {
		return '';
	}
}


// --------------------------------------------------------------------------

function reorderAlbum() {

	// calculate max images at tn
	maxImgs = (!fullsize) ? 7 : 11;
	
	// nav
	document.getElementById('NavCountCurrent').innerHTML = currentidx+1;
	document.getElementById('NavCountTotal').innerHTML = imgids.length;
	
	// curr image
	if(!fullsize) {
		document.getElementById('DisplayImageSrc').src = gi(currentidx, 2);
	} else {
		document.getElementById('DisplayImageSrc').src = gi(currentidx, 3);
	}
	
	// embeds
	document.getElementById('EmbedTextHtml').value = '<a href="http://www.autofiebre.com' + albumlink + '/' + gi(currentidx, 0) + '"><img src="http://www.autofiebre.com' + gi(currentidx, 2) + '" /></a>';
	document.getElementById('EmbedTextForum').value = '[URL="http://www.autofiebre.com' + albumlink + '/' + gi(currentidx, 0) + '"][IMG]http://www.autofiebre.com' + gi(currentidx, 2) + '[/IMG][/URL]';
	
	// image link options
	document.getElementById('MessengerLink').href = gi(currentidx, 4);
	document.getElementById('FaceBookLink').href = 'http://www.facebook.com/share.php?u=' + escape('http://www.autofiebre.com' + gi(currentidx, 2));
	document.getElementById('SendByMailLink').href = 'javascript:MD_OpenSendToFriend(\'gallery_picture\', \''+ gi(currentidx, 0) +'\');';
	
	// toggle between scroll or 7 images or less
	if(imgids.length > maxImgs) {
		
		if(currentidx < ((maxImgs+1)/2)) {
			currentImagePos = (currentidx+1);
		} else if(currentidx >= (imgids.length-((maxImgs+1)/2))) {
			currentImagePos = maxImgs - (imgids.length - (currentidx+1));
		} else {
			currentImagePos = ((maxImgs+1)/2);
		}

		// the loop can be donde both forward or backwords. this is to prevent
		// all of the images from reloading, since when a url dissapears from the current
		// on screen cache it tends to be refreshed
		var i;
		var refreshDirection;
		
		if(previdx < currentidx) {
			refreshDirection = 'forward';
		} else {
			refreshDirection = 'backwards';
		}
		
		//
		
		if(refreshDirection == 'forward') {
		
			for(i=1;i<=maxImgs;i++) {
				var currentDifferential = i-currentImagePos;			
				document.getElementById('TnsLi' + i).className = '';			
				if(document.getElementById('TnsImg' + i).src.indexOf(gi(sumIndexPosition(currentDifferential), 1)) == -1) {
					document.getElementById('TnsImg' + i).src = '/do/img/1x1.gif';
					document.getElementById('TnsImg' + i).src = gi(sumIndexPosition(currentDifferential), 1);	
				}
			}
		
		} else {
		
			for(i=maxImgs;i>=1;i--) {
				var currentDifferential = i-currentImagePos;			
				document.getElementById('TnsLi' + i).className = '';			
				if(document.getElementById('TnsImg' + i).src.indexOf(gi(sumIndexPosition(currentDifferential), 1)) == -1) {
					document.getElementById('TnsImg' + i).src = '/do/img/1x1.gif';
					document.getElementById('TnsImg' + i).src = gi(sumIndexPosition(currentDifferential), 1);	
				}
			}
		
		}
				
		document.getElementById('TnsLi' + currentImagePos).className = 'selectedimage';
			
	} else {
	
		var i;

		for(i=0;i<imgids.length;i++) {

			if(document.getElementById('TnsImg' + (i+1)).src.indexOf(gi(i, 1)) == -1) {
				document.getElementById('TnsImg' + (i+1)).src = '/do/img/galeries/load-anim-75.gif';
				document.getElementById('TnsImg' + (i+1)).src = gi(i, 1);
			}
			
			document.getElementById('TnsLi' + (i+1)).className = '';
		}
		
		document.getElementById('TnsLi' + (currentidx+1)).className = 'selectedimage';
		
		for(i=imgids.length;i<maxImgs;i++) {
			document.getElementById('TnsLi' + (i+1)).style.display = 'none';
			document.getElementById('TnsLi' + (i+1)).style.visibility = 'hidden';
		}
	
	}
	
	// footer
	if(imgfooters[currentidx] != '') {
		document.getElementById('DisplayImageFooter').innerHTML = imgfooters[currentidx];
		document.getElementById('DisplayImageFooter').style.display = '';
	} else {
		document.getElementById('DisplayImageFooter').innerHTML = imgfooters[currentidx];
		document.getElementById('DisplayImageFooter').style.display = 'none';
	}
	
	// register image view
	var visitU = '/do/galeries_view_jsvisit.aspx?imgid=' + gi(currentidx, 0) + '&r=' + Math.floor(1000000000000+1999999999999*Math.random());
	var visitIM = new Image();
	visitIM.src = visitU;
	visitIM.onload = function() { MD_Void(); }
	
}

function toggleMosaicView(enabled) {

	if(enabled && !mosaicview) {
	
		mosaicview = true;
		document.getElementById('MosaicList').style.display = 'block';
		document.getElementById('DisplayImage').style.display = 'none';
		document.getElementById('TnsList').style.display = 'none';
		mosaicViewPrint();
		
	} else {
		mosaicview = false;		
		document.getElementById('MosaicList').style.display = 'none';
		document.getElementById('DisplayImage').style.display = '';
		document.getElementById('TnsList').style.display = '';
		document.getElementById('MosaicList').innerHTML = '';
	}

}

function toggleMosaicPage(pg) {
	currentMosaicPage = pg;
	mosaicViewPrint();
}
	
function mosaicViewPrint() {
	
	var imgsPerPage = 28;
	var startI = currentMosaicPage * imgsPerPage;
	var endI = startI + imgsPerPage;

	if(endI > imgids.length) {
		endI = imgids.length;
	}
		
		
	//
	
	var navHtml = '';
	
	if(imgids.length > imgsPerPage) {

		for(i=0;i<Math.ceil(imgids.length/imgsPerPage);i++) {
			if(i==currentMosaicPage) {
				navHtml += '<a href="javascript:toggleMosaicPage('+i+');" class="selectedpage">' + (i+1) + '</a>';
			} else {
				navHtml += '<a href="javascript:toggleMosaicPage('+i+');">' + (i+1) + '</a>';
			}
		}
	
		navHtml = '<div class="galleryviewer-col1-mosaic-pagenav"><div class="galleryviewer-col1-mosaic-pagenav-label">P&aacute;ginas:</div>' + navHtml + '</div>'
		navHtml = navHtml + '<div class="clearblock"></div>'
		
	}
	
	//
		
	var mosaicHtml = '';

	for(i=startI;i<endI;i++) {
		mosaicHtml += '<li>';
		mosaicHtml += '<a href="javascript:mosaicViewSelectImage(' + i + ');">';
		mosaicHtml += '<img src="' + gi(i, 1) + '" width="70" height="76">';
		mosaicHtml += '</a>';
		mosaicHtml += '</li>';
	}
		
	mosaicHtml = navHtml + '<ul class="mosaic-images">' + mosaicHtml + '</ul>'
	mosaicHtml = mosaicHtml + '<div class="clearblock"></div>'
		
	document.getElementById('MosaicList').innerHTML = mosaicHtml;
		
}

function mosaicViewSelectImage(idx) {
	toggleMosaicView(false);
	setImageIndex(idx)
}

function toggleFullSize() {

	if(fullsize) {
	
		fullsize = false;
		MD_ToggleActiveStyleSheet('default');
		reorderAlbum();
		
	} else {
		
		fullsize = true;
		MD_ToggleActiveStyleSheet('FullSizeViewerCss');
		reorderAlbum();

	}
	
}

// --------------------------------------------------------------------------

-->