var pjs_zindex = 100

var pjs_output = '<div id="pjs_container" style="height:'+pjs_container_height+'px; width:'+pjs_container_width+'px; margin: 0px; float:left; position:relative; overflow:hidden">'
var pjs_controls = ''

for(i in pjs_images) {
	pjs_tmp_img = '<img class="pjs_images" width="'+pjs_container_width+'" height="'+pjs_container_height+'" src="'+pjs_gallery_source+pjs_images[i]+'" id="pjs_img_'+i+'" />'
	pjs_tmp_link = pjs_links[i] ? '<a href="'+pjs_links[i]+'">'+pjs_tmp_img+'</a>' : pjs_tmp_img
	pjs_output += '<div id="pjs_'+i+'" class="pjs_layer" style="z-index:'+pjs_zindex+';position:absolute;width:'+pjs_container_width+'px; height:'+pjs_container_height+'px">'+pjs_tmp_link+'</div>'
	var pjs_active_preview = i == 0 ? ' active' : ''
	pjs_controls = '<div class="pjs_imgPreviewWrapper"><img src="'+pjs_gallery_source+pjs_images[i]+'" class="pjs_imgPreview'+pjs_active_preview+'" id="pjs_imgPreview_'+i+'" /></div>'+pjs_controls
	pjs_zindex--
}

pjs_output += '<div id="pjs_preloader" style="position:absolute; z-index:101; width:'+pjs_container_width+'px; height:'+pjs_container_height+'px; background:#FFF;text-align:center;"><img src="images/'+pjs_wait_img+'" id="wait" style="margin-top:100px;" alt="Wait&hellip;" /></div><div id="pjs_controls">'+pjs_controls+'</div></div>'

document.write(pjs_output)

var pjs_total_divs = pjs_images.length-1
var pjs_zindex_low = 100-pjs_total_divs
var pjs_current_div = 0
var pjs_cnt_img = 0
var pjs_layer = $(".pjs_layer")
var pjs_stop_all = false

$(document).ready(function(){
	$(".pjs_images").one("load",function(){
		pjs_cnt_img++;
		pjs_checkSt()
	})
	.each(function(){
		if(this.complete || (jQuery.browser.msie && parseInt(jQuery.browser.version) == 6))
			$(this).trigger("load");
		}); 
	
	$("#pjs_container").hover(function(){
		$("#pjs_controls").stopTime()
		$("#pjs_controls").oneTime(100,function(){
			$("#pjs_controls").fadeIn()
		})
	},function(){
		$("#pjs_controls").stopTime();
		$("#pjs_controls").oneTime(250,function(){
			$("#pjs_controls").fadeOut()
		})
	})
	
	$("img.pjs_imgPreview").click(function(){
		if(!$(this).hasClass('active')) {
			pjs_stop_all = true;
			$("#pjs_container").stopTime("pjs");
			var thisId = $(this).attr('id').split('_')
			var divNo = parseInt(thisId[2])
			$("#pjs_container").stopTime();
			
			$("#pjs_"+divNo).css('z-index',100)
			newZIndex = 99;
			var startPoint = divNo == pjs_total_divs ? 0 : divNo + 1
			for(i=0;i<pjs_total_divs;i++) {
				$("#pjs_"+startPoint).css('z-index',newZIndex)
				newZIndex--
				startPoint = startPoint == pjs_total_divs ? 0 : startPoint + 1
			}
			$("#pjs_"+divNo).css('opacity',1)
			pjs_nextPreview(divNo)
			pjs_current_div = divNo
			$("#pjs_container").oneTime(2000,function(){
				pjs_stop_all = false
				pjs_loadNext()
			})
		}
	})
})

//	Check if all images are loaded. If yes, start the slideshow
function pjs_checkSt() {
	if(pjs_cnt_img == pjs_total_divs) {
		$("#pjs_preloader").fadeOut()
		pjs_loadNext()
	}
}

function pjs_loadNext(divNo) {
	$("#pjs_container").stopTime("pjs");
	pjs_next_div = pjs_current_div == pjs_total_divs ? 0 : pjs_current_div+1
	$("#pjs_container").oneTime(pjs_slide_duration,"pjs",function(){
		$("#pjs_"+pjs_current_div).animate({opacity:0},pjs_slide_transition,function(){
			if(!pjs_stop_all) {
				pjs_nextPreview(pjs_next_div)
				//	Increment z-index for all divs but current
				pjs_layer.each(function(){
					if($(this).attr('id') != 'pjs_'+pjs_current_div) {
						var pjs_tmp_index = $(this).css('z-index')
						$(this).css('z-index',parseFloat(pjs_tmp_index)+1)
					}
				})
				//Put current div at the bottom of the pile
				$("#pjs_"+pjs_current_div).css('z-index',pjs_zindex_low)
				$("#pjs_"+pjs_current_div).css('opacity',1)
			
				//Increment layer count
				pjs_current_div = pjs_next_div
				pjs_loadNext()
			}
		})
	})
}

//	Change preview image in the controls
function pjs_nextPreview(cnt) {
	$("img.pjs_imgPreview").removeClass('active')
	$("#pjs_imgPreview_"+cnt).addClass('active')
}
