// Photos
var photoArray = new Array (
	new Array("/img/broute/map/map1.gif", "230", "125", "Mapa de Euskal Herria"),
	new Array("/img/broute/map/map2.gif", "230", "125", "Mapa de Europa"),
	new Array("/img/broute/map/map3.gif", "230", "125", "Mapa del mundo")
);
// Number of photos in this gallery
var photoNum = photoArray.length;
// initial counter
var counter = 0;
// current width of image
var currentwidth = photoArray[counter][1];
// current height of image
var currentheight = photoArray[counter][2];
// current caption
var currentcaption = photoArray[counter][3];
// transition speed
var speed = 150;
//	var to check if busy doing transition
var transition_busy = 0;



// prevPhoto
function prevPhoto($number) {
	// only if not busy doing a transition
	if (transition_busy == 0) {
		// decrease counter if there is not a direct $number
		if ($number == null) {
			counter --
			} else {
			counter = ($number-1)
		};
		// loop to end if we hit below 0
		if (counter < 0) {
			counter = photoNum-1
		};
		//document.getElementById('mooshow_caption').innerHTML = counter;
		// now resize image container
		loadPhoto(counter);
	}
}



// nextPhoto
function nextPhoto($number) {
	// only if not busy doing a transition
	if (transition_busy == 0) {
		// decrease counter if there is not a direct $number
		if ($number == null) {
			counter ++
			} else {
			counter = ($number-1)
		};
		// loop to end if we hit below 0
		if (counter == photoNum) {
			counter = 0
		};
		// now resize image container
		loadPhoto(counter);
	}
}



// loads new photo
function loadPhoto() {
	// update navigation if navigation on
	if(document.getElementById('mooshow_navigation')){navigation();}
	// hide overlay nav and caption
	hide_elements();
	// show laoding animation
	document.getElementById('mooshow_loading').style.display = 'inline';
	// load in new image
	imgPreloader = new Image();
	// if image is preloaded
	imgPreloader.onload=function(){
		// when loaded hide loading animation
		document.getElementById('mooshow_loading').style.display = 'none';	
		// hide current photo
		document.getElementById('mooshow_image').style.opacity = 0;
		// resize container to new size
		resize();
	}
	// preloader src
	imgPreloader.src = photoArray[counter][0];
}



// resize image container
function resize() {
	// get current photo width and height
	currentwidth = document.getElementById('mooshow_image').width;
	currentheight = document.getElementById('mooshow_image').height;
	// call moo.fx effect
	resizeContatinerHeight.custom(currentheight,photoArray[counter][2]);
	resizeContatinerWidth.custom(currentwidth,photoArray[counter][1]);
}



// hide various mooShow elements
function hide_elements() {
	// clear cpation. fill with space
	if(document.getElementById('mooshow_caption')){
	document.getElementById('mooshow_caption').innerHTML = '&nbsp;';}
	// overlay navigation
	document.getElementById('mooshow_prev').style.display = 'none';
	document.getElementById('mooshow_next').style.display = 'none';
}



function switch_photo() {
	document.getElementById('mooshow_image').src=photoArray[counter][0];
	document.getElementById('mooshow_image').width=photoArray[counter][1];
	document.getElementById('mooshow_image').height=photoArray[counter][2];
	document.getElementById('mooshow_image').alt=photoArray[counter][3];
	document.getElementById('mooshow_image').name=counter;
	// update caption if it exists
	if(document.getElementById('mooshow_caption')){caption();}
	// show new image
	show_elements();
}



// show various mooShow elements
function show_elements() {
	// fade in photo
	fade_in('mooshow_image',speed*2);
	// fade in caption if captions on
	if(document.getElementById('mooshow_caption')){fade_in('mooshow_caption',speed);}
}



// show nav elements
function show_nav_overlay() {
	// overlay navigation
	document.getElementById('mooshow_prev').style.display = 'inline';
	document.getElementById('mooshow_next').style.display = 'inline';
}



// build navigation
function navigation(){
	// clear current links
	document.getElementById('mooshow_navigation').innerHTML = '';
	var i=0
	for (i=0;i< photoNum;i++) {
		
		// get current content	
		var content = document.getElementById('mooshow_navigation').innerHTML;
		
		// write links
		if(i==counter){
			document.getElementById('mooshow_navigation').innerHTML = content + ' '+(i+1)+' ';
			} else {
			document.getElementById('mooshow_navigation').innerHTML = content + ' <a title=\'Ver ' + photoArray[i][3]+'\'  href=\'#' +(i+1)+ '\' onclick=\"nextPhoto('+(i+1)+');\">'+(i+1)+'</a> ';
		}
		
		// add | between links
		if(i < photoNum-1) {
			var content = document.getElementById('mooshow_navigation').innerHTML;
			document.getElementById('mooshow_navigation').innerHTML = content + ' | ';}
		}
		
		
		// update next / prev links
		if (counter == photoNum-1) {
			document.getElementById('nextphoto').href = '#1'
			} else {
			document.getElementById('nextphoto').href = '#' + (counter+2)
		};
		if (counter == 0) {
			document.getElementById('prevphoto').href = '#' + photoNum
			} else {
			document.getElementById('prevphoto').href = '#' + (counter)
		};
		
		// añadir una anotacion personalizada
		var content = document.getElementById('mooshow_navigation').innerHTML;
		document.getElementById('mooshow_navigation').innerHTML = content + '<p id="mooshow_help">Ponte sobre los mapas y haz click sobre los iconos <span class="icons">+</span> y <span class="icons">-</span> icons o en los n&uacute;meros para ver los mapas.</p>';
}



// caption
function caption(){
	// uodate caption
	var caption;
	// add &nbsp; if no caption otherwise dive jumps
	if(photoArray[counter][3]=='') {
		caption='&nbsp;'
		} else {
		caption=photoArray[counter][3]
	}
	document.getElementById('mooshow_caption').innerHTML = caption;
}



// resize
window.onload = function() {
	
	// Crear contenido dentro de #mooshow (sólo se creará si el usuario dispone de JavaScript)
	document.getElementById('mooshow').innerHTML = '<div id="mooshow_container"><div id="mooshow_image_container"><img src="img/mooshow/blank.gif" alt="mooShow" width="230" height="125" id="mooshow_image" /><div id="mooshow_prev" title="imagen previa" onclick="prevPhoto();"><a href="#" onclick="prevPhoto();" id="prevphoto"></a></div><div id="mooshow_next" title="siguiente imagen" onclick="nextPhoto();"><a href="#" onclick="nextPhoto();" id="nextphoto"></a></div></div><div id="mooshow_loading"><img src="img/mooshow/loading.gif" alt="Barra de progreso de carga" id="mooshow_loading_image"/></div><div id="mooshow_caption"></div><div id="mooshow_navigation"></div></div>';
	
	transition_busy = 1;
	resizeContatinerHeight = new fx.Height('mooshow_image_container', {duration: speed, onComplete:function() {
	// display new image etc.
	switch_photo();
	transition_busy = 0;
	}});
	resizeContatinerWidth = new fx.Width('mooshow_container', {duration: speed});	
	// load first photo
	transition_busy = 0;
	nextPhoto(1);
} 



// fader effect
function fade_in($element,$speed) { 
	var fader = new fx.Opacity($element, {duration: $speed, onComplete:function() {
	// overlay navigation
	show_nav_overlay();
	}});
	fader.hide();
	fader.toggle();
}


