// JavaScript Document

var currentpos=0;
var currentthumbpos=0;
var thumbnailnum;
var current_imgid=0;
var moving = false;
var finishedsizing=0;
var preloadimg="no"//Preload images ("yes" or "no"):
var myloadedimage = new Array();
     myloadedimage[0]=1;
var imggallery=new Array()
var firstimagestart=1;
var nextorprev=0;
var fadeout=1;
var currentDBID = 0;

function loadinfo(){
	if(fadeout==0){
		var fademe = new Fx.Style('iptc_info','opacity', {duration:transspeed });
		fademe.set(0);
		fadeout=1;
	}else{
		var fademe = new Fx.Style('iptc_info','opacity', {duration:transspeed });
		fademe.set(.75,0);
		fadeout=0;
	}
	
}
function areweready(loadarea, imgindex, img_id){
	if ( finishedsizing++ ) { 
		modifyimage(loadarea, imgindex, img_id);
		finishedsizing = 0;
	}
}

function modifyimage(loadarea, imgindex, img_id ){
	function loadimagenow(){
		//alert("Load Image Now Called");
		if (document.getElementById) {
			
				if(current_imgid!=img_id){
					
					var imgobj=document.getElementById(loadarea);
					var iptch=document.getElementById('iptc_info');
					var photonum=document.getElementById('photocount')
					var phototitle=document.getElementById('imgtitle')
					imgobj.innerHTML=returnimgcode(imggallery[imgindex]);
					iptch.innerHTML=returniptc(imggallery[imgindex]);
					photonum.innerHTML=(Number(imgindex)+1)+". z "+imggallery.length+" fotek";
					phototitle.innerHTML="<strong>"+tempgallery[img_id][4]+"</strong> "+tempgallery[img_id][7];
					initImage(loadarea);
					current_imgid=img_id;
					myloadedimage[imgindex]=1;

					currentDBID = imggallery[imgindex][9];
				}
			}
		return false
	}
	if(myloadedimage[imgindex]==null){	
		new Asset.image(imggallery[imgindex][0], {onload: loadimagenow});
		
	}else{
		loadimagenow();
	}
	
}

function returnimgcode(theimg){
	var imghtml=""
	if (theimg[1]!="")
		imghtml=''
	imghtml+='<img src="'+theimg[0]+'" border="0" id="'+theimg[8]+'" />'
	if (theimg[1]!="")
		imghtml+=''
	return imghtml
}
function returniptc(theimg){
	var iptchtml = ''+
	'<div class=\'iptc_left\'><br/>'+
			'	Title <br/>'+
			'	Author <br/>'+
			'	Copyright <br/><br/>'+
			'	Description <br/><br/>'+
			'</div>'+
			'<div class=\'iptc_right\'><br/>'+
			'	'+theimg[4]+'<br/>'+ //title
			'	'+theimg[5]+'<br/>'+ // author
			'	'+theimg[6]+'<br/><br/>'+ //copyright
			'	'+theimg[7]+'<br/><br/>'+ // description
			'</div>';
	return iptchtml
}

function initImage(imageId) {
	var fader = new Fx.Style(imageId,'opacity', {duration:fadespeed});
	fader.set(0);
	fader.start(0,1);
	var titlefade = new Fx.Style('imgtitle','opacity', {duration:transspeed });
		titlefade.set(0);
		titlefade.start(0,1);
	var fadeiptc = new Fx.Style('iptc_btn','opacity', {duration:transspeed });
		fadeiptc.set(0);
		fadeiptc.start(0,1);
	if(fadeout==0){
		var fademe = new Fx.Style('iptc_info','opacity', {duration:transspeed });
		fademe.set(0);
		fadeout=0;
	}else{
		var fademe = new Fx.Style('iptc_info','opacity', {duration:transspeed });
		fademe.start(0,1);
		fadeout=1
	}
}

function checkbutton(mynum){
	if ( mynum == 0 ) {
		mm_shl('back','hidden');
		mm_shl('more','visible');
	} else if ( mynum < thumbnailnum - maxthumbvisible ) {
		mm_shl('back','visible');
		mm_shl('more','visible');
	} else {
		mm_shl('back','visible');
		mm_shl('more','hidden');
	}
}
function checknext(mynum){
	thumbmax=(Number(thumbnailnum)-1);
	if ( mynum < 1 ) {
		mm_shl('prev','hidden');
		mm_shl('next','visible');
	} else if ( mynum <  thumbmax ) {
		mm_shl('prev','visible');
		mm_shl('next','visible');
	} else {
		mm_shl('prev','visible');
		mm_shl('next','hidden');
	}
}

function mm_shl() { //v6.0
	var obj,args=arguments;
	if ((obj=MM_findObj(args[0]))!=null) {
		if (obj.style) {
			obj=obj.style;
		}
		obj.visibility=args[1];
	}
}


function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function addposition(addwidth){
	if ( !moving ) {
		 // if animagic is still moving the image..don't update the current position till it's done
		if(addwidth=="minus"){
			currentpos-=1;
		}else if(addwidth=="plus"){
			currentpos+=1;
		}
	}
	return currentpos;
}
function movethumbs(way){
	if(way=='plus'){
		move=(currentthumbpos+moveamount);
		var movethumbs = new Fx.Styles('thumbgall', {duration: transspeed, transition: Fx.Transitions.quadOut});
		movethumbs.start({ left: [currentthumbpos, move]});
		currentthumbpos+=moveamount;
	
	}else if(way=='minus'){
		move=(currentthumbpos-moveamount);
		var movethumbs = new Fx.Styles('thumbgall', {duration: transspeed, transition: Fx.Transitions.quadOut});
		movethumbs.start({ left: [currentthumbpos, move]});
		currentthumbpos-=moveamount;		
	}
}

function MM_openBrWindow(theURL,winName,features) { //v2.0
  window.open(theURL,winName,features);
}
var thumbopen=0
	function thumbs(){
		var resizethumb = new Fx.Styles('thumbhide',{duration:transspeed, transition: Fx.Transitions.quadOut});
		var movethumbs = new Fx.Styles('thumbbox', {duration: transspeed, transition: Fx.Transitions.quadOut});
		if(thumbopen==1){	
			
			resizethumb.start({'height': 119});
			movethumbs.start({ 'top': [-120, 0]});
			thumbopen=0
		}else{
			resizethumb.start({'height': 0});
			movethumbs.start({ 'top': [0, -120]});
			thumbopen=1
		}
	}
	
// JavaScript Document
function initGallery ( tempgallery, count, first_id, startwidth, startheight ) {
	imggallery = tempgallery;
	if (preloadimg=="yes"){
		for (x=0; x<imggallery.length; x++){
			var myimage=new Image()
			myimage.src=imggallery[x][0]
		}
	}
	thumbnailnum = imggallery.length;
	current_imgid = first_id;
	currentwidth=startwidth;
	currentheight=startheight;
	currentDBID = imggallery[current_imgid][9];
	window.addEvent('load', function() {
		if(thumbnailnum>maxthumbvisible){
			lefthtml = "<div id='leftmore'><ul><li><a href=\"javascript:checkbutton(addposition('minus'));movethumbs('plus');\"><img src='modules/e2_photo_gallery/rsrc/buttonblank.gif' width='15' height='115' border='0' /></a></li></ul></div>";
			righthtml = "<div id='rightmore'><ul><li><a href=\"javascript:checkbutton(addposition('plus'));movethumbs('minus');\"><img src='modules/e2_photo_gallery/rsrc/buttonblank.gif' width='15' height='115' border='0' /></a></li></ul></div>";
			$('back').setHTML(lefthtml);
			$('more').setHTML(righthtml);
		}
		var setloadersize = new Fx.Styles('main_image_wrapper',{duration:transspeed,onComplete: function(){loadfirstimage(currentwidth,currentheight)}});
		setloadersize.start({
			'width':imggallery[0][1],
			'height':imggallery[0][2]	
		});
	});
	
	
}
window.addEvent('domready', function() {
	initGallery( tempgallery, tempgallery.length, tempgallery[0][8], tempgallery[0][1], tempgallery[0][2], 0 );
});

function getstarted(width, height, loadarea, imgindex, img_id, current_imgid, db_id){
	checknext(img_id);
	if(current_imgid!=img_id){
		if(firstimagestart==1){
			currentwidth=firstimagewidth;
			currentheight=firstimageheight;
			firstimagestart=0;		
		}
		if(nextorprev==1){
			currentwidth=cwidth;
			currentheight=cheight;
			nextorprev=0;		
		}
		var resizeDivHeight = new Fx.Styles('main_image_wrapper',{duration:transspeed, onComplete: function(){modifyimage(loadarea, imgindex, img_id);currentheight=height;currentwidth=width;} });
		var fader = new Fx.Style('imgloader','opacity', {duration:fadespeed, onComplete: function(){	resizeDivHeight.start({'height': [currentheight,height],'width': [currentwidth,width]});} });
		fader.start(1,0);	
		var fadeiptc = new Fx.Style('iptc_btn','opacity', {duration:transspeed });
		fadeiptc.set(0);
		var titlefade = new Fx.Style('imgtitle','opacity', {duration:transspeed });
		titlefade.set(0);
		fadeout=0
		if(fadeout==0){
		var fademe = new Fx.Style('iptc_info','opacity', {duration:transspeed });
		fademe.set(0);
		fadeout=0;
		}else{
			var fademe = new Fx.Style('iptc_info','opacity', {duration:transspeed });
			fademe.start(1,0);
			fadeout=0
		}
	}
}
function loadfirstimage(currentwidth,currentheight){
	var fadefirst = new Fx.Style('imgloader','opacity', {duration:fadespeed });
	fadefirst.set(0);
	var firsttitlefade = new Fx.Style('imgtitle','opacity', {duration:transspeed });
	firsttitlefade.set(0);
	function setfirstimage(){
		var newHTML = "<img src='"+tempgallery[0][0]+"' />";
		$('imgloader').setHTML(newHTML);
	
		var firsttitle=document.getElementById('imgtitle');
		firsttitle.innerHTML="<strong>"+tempgallery[0][4]+"</strong> "+tempgallery[0][7];
		fadefirst.start(0,1);
		//firsttitlefade.start(0,1);
		currentheight=imggallery[0][2];
		currentwidth=imggallery[0][1];
	}
	new Asset.image(imggallery[0][0], {onload: setfirstimage});
}
function nextimage(current_imgid){
	
	newimgid = Number(current_imgid)+1;
	newwidth =imggallery[newimgid][1]
	newheight =imggallery[newimgid][2]
	newimgindex =imggallery[newimgid][8]
	newimgid = imggallery[newimgid][8]
	cwidth=imggallery[current_imgid][1]
	cheight=imggallery[current_imgid][2]
	checknext(newimgid);
	nextorprev=1;
	getstarted(Number(newwidth), Number(newheight), 'imgloader',Number(newimgindex) ,Number(newimgid) , Number(current_imgid), Number(cwidth), Number(cheight))
}

function previmage(current_imgid){
	newimgid = Number(current_imgid)-1;
	newwidth =imggallery[newimgid][1]
	newheight =imggallery[newimgid][2]
	newimgindex =imggallery[newimgid][8]
	newimgid = imggallery[newimgid][8]
	cwidth=imggallery[current_imgid][1]
	cheight=imggallery[current_imgid][2]
	checknext(newimgid);
	nextorprev=1;
	getstarted(Number(newwidth), Number(newheight), 'imgloader',Number(newimgindex) ,Number(newimgid) , Number(current_imgid), Number(cwidth), Number(cheight))
}

function showImage()
{
	window.open("/imageDetail.php?leaf-ID="+currentDBID, "_blank", "width=800");
}
