var inscroll=false;
var maxbasket=false;
var globquery='';
var prevel='';
var isdragging=false;
var globname='';
//var jcar;

function hoverOverMenu (ele,rid,rname,where) {
	return;
	$.getJSON("GetRecById.php",{rid:rid},function(data){
	var rhres=data.hres;
	var rname=data.rname;
	var jpegname=data.rname;
	var rimgsrc=data.imgsrc;
	var inbasket=data.inbasket;
	var pos=$(ele).offset({ border: true });
	var ew=$(ele).width()-1;
	var vt=pos['top']+2;
	var vl=pos['left']+2;
	//alert(prevel+" "+ele.src);
	if ($("#popmenu").is(":visible")&&prevel==$(ele).attr("id"))
		return;
	if (isdragging)
		return;
	prevel=$(ele).attr("id");	
	$("#popmenu").hide();
	$("#popmenu").animate({
		opacity:0.8
	});
	var str='<span style="float:right;">';
	if (inbasket)
		str+='<img class="smallbuttons" onclick="removeBasket(this,'+rid+',\''+where+'\');return false;" src="images/addlightbox.png" width="24" height="25"  alt="Collection Bin remove" title="Collection Bin remove"/>';
	else
		str+='<img  class="smallbuttons" onclick="addBasket(this,'+rid+');return false;" src="images/removelightbox.png"  width="24" height="25"  alt="Collection Bin add" title="Collection Bin add"/></a>';
	//str+='</span><span style="float:right;">';
	//str+='<a href="GetHRES.php?fn='+jpegname+'"  ><img  class="smallbuttons" src="images/download.png" width="24" height="25" alt="high-res" title="high-res"/></a></span>';
	str+='</span>';
	$("#popmenu").css("top",vt);
	$("#popmenu").css("left",vl+ew-24);
	$("#popmenu").css("width","auto");	
	$("#popmenu").html(str);
	$("#popmenu").slideDown("fast",function(){
		//$("#popmenu").stop();								 
}); 
//$("#popmenu").fadeIn("slow"); 
//alert(vt+" "+vl);
  });
}
function hoverOutMenu (rid) {
$("#popmenu").slideUp("fast",function(){
}); 
}
function showDLLB(data){
	//alert(data.text+" "+data.fn);
	if (data.text =="failed")
		$("#dllb").html("<br /><br />The Zip process has failed.");
	else
		{
		$("#dllb").html("<br /><br />Zip process complete. Use your browser's download dialog to complete download...");	
		window.location.href=data.fn;
		}

}
function startDLLB() {
$("#dllb").html("<img src='images/ajax-loader-circle.gif'/>");
$.getJSON("ZipLightBox.php",{},showDLLB);
}
function downloadLB(sb){
if (sb > 0){
var vhtml='<span id="dllb" style="border:1px solid gray;padding:50px;">Click the link below to begin the zip and dowload of your Collection Bin: <br /><br /><a style="color:white;font:bold;" onclick="startDLLB();return false;">Begin Download</a></span>';
 var vt='Download Collection Bin<br /><br />'+'<a alt="close" title="Close" class="buttonsright" onclick="Boxy.get(this).hideAndUnload();"><img src="images/exit.png"/></a>';
 var popup=new Boxy(vhtml, {
 draggable: true,
 clickToFront: true,
 closeable: false,
 title: vt
 });
}
}
function getV(vt){
	window.location.href="newsearch6a.php?"+setURL()+"&v="+vt;
}
function nextPreview(rid) {
window.location.href="newpreview.php?"+setURL(rid);	
}
function goodchars(e, goods)
{
var key, keychar;
key = getkey(e);

if (key == null) return true;

// get character
keychar = String.fromCharCode(key);
keychar = keychar.toLowerCase();
goods = goods.toLowerCase();

// check goodkeys
if (goods.indexOf(keychar) != -1)
	return true;

// control keys
if ( key==null || key==0 || key==8 || key==9 || key==13 || key==27 )
   return true;

// else return false
return false;
}
 
function in_array(str,ar){
var found='';
var l=ar.length;
for (i=0;i<l;i++)
	if (ar[i]==str)
		found=str;
return found;
}
function isAlpha(str) {
var regex=/^[0-9A-Za-z]+$/; //^[a-zA-z]+$/
if(regex.test(str)){
return true;
} else {
return false;
}
}
function isBool(str) {
ba = new Array("and", "or", "not");
	if (in_array(str,ba))
		return true;
	else return false;
}
function isOp(str) {
ba = new Array("contains", "startswith", "endswith", "not", "greater", "less", "equals");
	if (in_array(str,ba))
		return true;
	else return false;
}
function isSort(str) {
ba = new Array("unsorted","rname","cdate","notes","photo");
if (in_array(str,ba))
		return true;
	else return false;
}
function isView(str) {
ba = new Array("thumbs","list","preview");
	if (in_array(str,ba))
		return true;
	else return false;
}
function strtr(str, from, to) {
    var subst;
    for (i = 0; i < from.length; i++) {
        subst = (to[i]) ? to[i] : to[to.length-1];
        str = str.replace(new RegExp(str[str.indexOf(from[i])], 'g'), subst);
    }
    return str;
}
function isDate(str) {
strtmp = strtr (str,".","/");
	if (Date.parse(str) )
		return true;
	else return false;
}
function checkInput(str,type) {
switch (type) {
case 'boolean':
    if (!isBool(str)||str.length > 4) str='';
    	break;
case 'operator':
    if (!isOp(str)||str.length > 14) str='';
    	break;
case 'date':
    if (!isDate(str)||str.length > 11) str='';
    	break;
case 'string':
    if (!isAlpha(str)||str.length > 20) str='';
    break;
case 'number':
    if (isNaN(str)||str.length > 7) str=1;
    break;
case 'sort':
    if (!isSort(str)||str.length > 11) str='';
    break;
case 'view':
    if (!isView(str)||str.length > 7) str='';
    break;
}
return str;
}
function setURL(rid,rname,str) {
	var u = Spry.Utils.getLocationParamsAsObject();
	var qs= u.qs ? "&qs="+checkInput(u.qs,'string') : "";
	var qs1= u.qs1 ? "&qs1="+checkInput(u.qs1,'string') : "";
	var qs2= u.qs2 ? "&qs2="+checkInput(u.qs2,'date') : "";
	var qs2a= u.qs2a ? "&qs2a="+checkInput(u.qs2a,'date') : "";
	var qs3= u.qs3 ? "&qs3="+checkInput(u.qs3,'string') : "";
	var b1= u.b1 ? "&b1="+checkInput(u.b1,'operator') : "";
	var b2= u.b2 ? "&b2="+checkInput(u.b2,'operator') : "";
	var b2a= u.b2a ? "&b2a="+checkInput(u.b2a ,'operator'): "";
	var b3= u.b3 ? "&b3="+checkInput(u.b3 ,'operator'): "";
	var ao1= u.ao1 ? "&ao1="+checkInput(u.ao1,'boolean') : "";
	var ao2= u.ao2 ? "&ao2="+checkInput(u.ao2,'boolean') : "";
	var ao2a= u.a2a ? "&ao2a="+checkInput(u.ao2a,'boolean') : "";
	var ao3= u.ao3 ? "&ao3="+checkInput(u.ao3,'boolean') : "";
	var ps= u.page ? "&page="+checkInput(u.page,'number') : "";
	var so= u.so ? "&so="+checkInput(u.so,'sort') : "";
	var p= u.ph ? "&p="+checkInput(u.ph,'number') : "";
	var rid1= u.rid ? "&rid="+checkInput(u.rid ,'number'): "";
	var v= u.v ? "&v="+checkInput(u.v ,'view'): "&v=thumbs";
	var o= u.o ? "&o="+checkInput(u.o,'number') : "&o=0";
	var rname1= u.rname ? "&rname="+checkInput(u.rname,'string') : "";
	rname1=rname?"&rname="+checkInput(rname,'string'):rname1;
	var str1=str?checkInput(str,'string'):"";
	//str1='';
//alert(ps);	
var cb='st=1'+qs+qs1+qs2+qs2a+qs3+p+b1+b2+b2a+b3+ao1+ao2+ao2a+ao3+ps+so+rid1+p+v+o+rname1+str1;
//alert(cb);
return cb;
}
function setQuickURL(qs,ps) {
	var u = Spry.Utils.getLocationParamsAsObject();
	var qs= !qs ? "&qs="+checkInput(u.qs,'string') : "&qs="+qs;
	var ps= !ps ? "&page="+checkInput(u.ps,'number') : "&page="+ps;
	var so= u.so ? "&so="+checkInput(u.so,'sort') : "";
	var p= u.ph ? "&p="+checkInput(u.ph,'number') : "";
	var v= u.v ? "&v="+checkInput(u.v,'view') : "thumbs";
	//var o= u.o ? "&o="+u.o : "0";
	
var cb='st=1'+qs+ps+p+so+v;//+o;
return cb;
}
function startSite(ie) {
	dragDrop();
	$("#loader").html('');
//if ($.browser.safari) {
 //  alert("this is safari!");
//}
}
function dragDrop() {
	$('.thumb').draggable({
		helper: 'clone',
		scroll: true,
		opacity: 0.5,
		drag: function(){
      		isdragging-true;
			$("#popmenu").stop(true,true);
		},
		start: function(){
      		isdragging-true;
		},
		stop: function(){
      		isdragging-false;
		}
	});
$("#cb").droppable({
		accept: ".thumb",
		activeClass:"redborder", 
		hoverClass:"blueborder",
		drop: function(ev, ui) {
				$that=$(this);
				dropOnBasket(ui.draggable.attr("id"));
				clearPopMenu();
	   }
});
$('.lb').draggable({
		helper: 'clone',
		scroll: true,
		opacity: 0.5,
//		cursorAt: {top:20,left:20},
		drag: function(){
      		isdragging-true;
//			$("#popmenu").hide();
			$("#popmenu").stop(true,true);
		},
		start: function(){
      		isdragging-true;
		},
		stop: function(){
      		isdragging-false;
		}
	});

	$('.buildresults').droppable({
		accept: '.lb',
		drop: function(ev, ui) {
			$("#popmenu").hide();
			var $that = $(this);
			ui.draggable.hide("explode", { pieces: 20}, 500);  
  			$.ajax({
  				type: "GET",
  				url: "PopBasketDD.php?rid="+ui.draggable.attr('id')
 			});
			url="SizeofBasketDD.php";
			$("#numinlb").load(url);
			var x=$("#numinlb").html();
		//alert(x);
		if (x=='1') {
			$("#cb").html("<br /><br /><br /><br /><br /><br />");
		}
		}
	});

}
function clearPopMenu() {
	$("#popmenu").hide();
	$("#popmenu").queue("fx", []);
	$("#popmenu").stop();
}
function dragDropLB(){
clearPopMenu();
$('.lb').draggable({
		helper: 'clone',
		scroll: true,
		opacity: 0.5,
//		cursorAt: {top:20,left:20},
		start: function(){
     		$("#popmenu").stop();
		}
	});

	$('.buildresults').droppable({
		accept: '.lb',
		drop: function(ev, ui) {
     		$("#popmenu").queue("fx", []);
			$("#popmenu").stop();
			var $that = $(this);
			ui.draggable.hide("explode", { pieces: 20}, 500);  
  			alert(ui.draggable.attr('id'));
			$.ajax({
  				type: "GET",
  				url: "PopBasketDD.php?rid="+ui.draggable.attr('id')
 			});
			url="SizeofBasketDD.php";
			$("#numinlb").load(url);
			var x=$("#numinlb").html();
		//alert(x);
		if (x=='1') {
			$("#cb").html("<br /><br /><br /><br /><br /><br />");
		}
		}
	});

}

function newDD() {
$('#collbasketa').droppable({activeClass:"redBorder", hoverClass:"greenBorder", tolerance:"pointer", accept:".thumb"});
//$('#collbasketa').droppableEnable();
}
function fadeIt(ele,url,ele1,url1){
	$(ele).fadeOut("normal",function(){
   		$(ele).load(url,'',function(){
			$(ele).fadeIn("normal");
			if (ele1){
				$(ele1).fadeOut("normal",function(){
   					$(ele1).load(url1,'',function(){
						$(ele1).fadeIn("normal");
			 		 });

	 		 	});
			};
 		 });
	});
}
function getPreviewAll (rid,rname) {
	var vhash=window.location.href;
	var u = Spry.Utils.getLocationParamsAsObject();
	var h = Spry.Utils.getURLHashParamsAsObject(vhash);
	if (!rid||!rname) {
		var rname=u.rname;
		var rid=u.rid;
		}
	if (!rid||!rname) {
		rid=h.rid;
		rname=h.rname;
		}
//	var cb='&qs='+qs+'&page='+ps+'&so='+so+'&qs1='+qs1+'&qs2='+qs2+'&qs3='+qs3+'&ao1='+ao1+'&ao2='+ao2+'&b1='+b1+'&b2='+b2+'&b3='+b3;
var vget="GetPreviewImage.php?rid="+rid+"&rname="+rname;
///	alert(vget);
	var vget1="GetMetaData.php?rid="+rid;
	qs=u.qs;qs1=u.qs1;qs2=u.qs2;qs3=u.qs3;qs2a=u.qs2a;
//	alert(globquery);
	if (qs||qs1||qs2||qs2a||qs3)
		if (!globquery)
			globquery='st=1&'+window.location.search;
	window.location.href=vget;
	getPreviewButtons(rid,rname);
	$('#tabletext').load(vget1);
	fadeIt('#leftdivid',vget);
	//alert(vget);
	//Spry.Utils.updateContent('tabletext',vget1);
	//fadeIt(,'#rightdivid',vget1);
	//parent.location.hash = "rid="+rid+"&rname="+rname;
}
function getPreviewStart () {
	if (firstpanel==1){
		$("#leftarrow").hide();
		$("#firstarrow").hide();
	}
	else {
		$("#leftarrow").show();
		$("#firstarrow").show();
	}
	if (lastpanel==totalpanels){
		$("#rightarrow").hide();
		$("#lastarrow").hide();
	}
	else {
		$("#rightarrow").show();
		$("#lastarrow").show();
	}

	var vhash=window.location.href;
	var u = Spry.Utils.getLocationParamsAsObject();
	var h = Spry.Utils.getURLHashParamsAsObject(vhash);
	var r=u.rid;
	var rn=u.rname;
	if (r) {
		rid=r;
		rname=rn;
	}
	else {
		rid=h.rid;
		rname=h.rname;
	}
	var vget="GetPreviewImage.php?rid="+rid+"&rname="+rname;
	var vget1="GetMetaData.php?rid="+rid;
	getPreviewButtons(rid,rname);
	$("#tabletext").load(vget1);
	fadeIt('#leftdivid',vget);
	var qs='';qs1='';qs2='';qs3='';qs2a='';
	qs=u.qs;qs1=u.qs1;qs2=u.qs2;qs3=u.qs3;qs2a=u.qs2a;
//	alert(globquery);
	if (qs||qs1||qs2||qs2a||qs3)
		if (!globquery)
			globquery='st=1&'+window.location.search;
//	alert('in ' + globquery);
	//Spry.Utils.updateContent('tabletext',vget1);
	//parent.location.hash = vget;
}
function dropOnBasket(rid) {
var x=$("#numinlb").html();
if (x=='20') {
	 var vt='Collection Bin Full<br /><br />'+'<a alt="close" title="Close" class="buttonsright" onclick="Boxy.get(this).hideAndUnload();"><img src="images/exit.png"/></a>';
var vhtml='<span style="width:300px;height:300px;text-align:left;vertical-align:middle;padding:10px;"><span style="text-align:center;">The maximum number of images per each instance of your Collection Bin is 20. <br /><br />You may do the following: </span><br /> <br />1) Download your current Collection Bin with the "Download Collection Bin" button<br /><br />2) Empty your current Collection Bin with the "Empty Collection Bin" button<br /><br />3) Hover over an image and select the "Remove from Collection Bin" button, <br /><br />4) Click the image in the Collection Bin and select the "Remove from Collection Bin button<br /><br />5) Drag the image out of our Collection Bin...</span>';
 var popup=new Boxy(vhtml, {
 draggable: false,
 clickToFront: true,
 closeable: false,
 title: vt
 });
   }
else {
 	var url="UpdateBasketDD.php?rid="+rid;
	$("#cb").load(url,{},dragDropLB);
	url="SizeofBasketDD.php";
	$("#numinlb").load(url);
	}
//window.location.href="newsearch6a.php?"+setURL();
//window.location.href="newsearch6a.php?"+setURL()+"#basket";
}
function addBasket(el,rid) {
//   alert('add');
   if (maxbasket) {
	 var vt='Collection Bin Full<br /><br />'+'<a alt="close" title="Close" class="buttonsright" onclick="Boxy.get(this).hideAndUnload();"><img src="images/exit.png"/></a>';
 var popup=new Boxy(vhtml, {
 draggable: false,
 clickToFront: true,
 closeable: false,
 title: vt
 });
   }
   else {
	   if ($.browser.msie) {
		   document.getElementById("addbox").src="images/addlightbox.png";
		   document.getElementById("addbox").title="Remove from Collection Bin";
		   document.getElementById("addbox").alt="remove from Collection Bin";
		   document.getElementById("addbox").onclick="removeBasket(this,'"+rid+"');";
	   }
	  else {
  $(el).attr({ 
          src: "images/addlightbox.png",
          title: "Remove from Collection Bin",
          alt: "remove from Collection Bin"
        });
	$(el).attr( { "ONCLICK" : "removeBasket(this,'"+rid+"');" } ); 
	  }
//	var url="PushBasket.php?rid="+rid;
	//Spry.Utils.updateContent('collbasket',url);
//	$("#collbasketa").load(url);
 	var url="UpdateBasketDD.php?rid="+rid;
	$("#cb").load(url,{},dragDropLB);
	url="SizeofBasketDD.php";
	$("#numinlb").load(url);
	}
}
function startThumbs() {
	$("#loader").ajaxStart(function(){
   		$(this).show();
	});
	$("#loader").ajaxStop(function(){
   		$(this).hide();
	});
   getPage();
   dragDrop();
}
function updateBasket(data) {
	var url="GetBasket.php";
	//Spry.Utils.updateContent('collbasket',url);
	$("#collbasketa").load(url);
}
function removeBasket(el,rid,where) {
	//alert('remove');
	   if ($.browser.msie) {
		   document.getElementById("addbox").src="images/removelightbox.png";
		   document.getElementById("addbox").title="Add to Collection Bin";
		   document.getElementById("addbox").alt="add to Collection Bin";
		   document.getElementById("addbox").onclick="addBasket(this,'"+rid+"');";
	   }
	  else {
	$(el).attr({ 
          src: "images/removelightbox.png",
          title: "Add to Collection Bin",
          alt: "add to Collection Bin"
        });
	$(el).attr( { "ONCLICK" : "addBasket(this,'"+rid+"');" } ); 
	  }
//	var url="PopBasket.php?rid="+rid;
	//Spry.Utils.updateContent('collbasket',url);
//	$("#collbasketa").load(url);
//	maxbasket=false;
			$.ajax({
  				type: "GET",
  				url: "PopBasketDD.php?rid="+rid
 			});
		url="SizeofBasketDD.php";
		$("#numinlb").load(url);
		var x=$("#numinlb").html();
	 
	$("#cb"+rid).hide("explode", { pieces: 20}, 500,function(){
			clearPopMenu();
		});  
 
	if (x<='1') 
			$("#cb").html("<br /><br /><br /><br /><br /><br />");
	clearPopMenu();
}
function emptyLB(sb) {
	var url="EmptyBasketDD.php";
	$("#numinlb").html("0");
	$("#cb").html("<br /><br /><br /><br /><br />");
	maxbasket=false;
	$.ajax({
  		type: "GET",
  		url: "EmptyBasketDD.php"
 	});
}
function printLB(sb) {
	var url="PrintBasket.php";
	var t="Printer Friendly view";
	var p="width=750,height=550,menubar=1";
	ppwin = window.open (url,t,p);
	if (window.focus) 
		ppwin.focus();
}
function searchAssoc(rn) {
	var temp = rn.split('-');
	vq=temp[0]+'-'+temp[1];
	window.location.href="newsearch6a.php?"+setQuickURL(vq,"1");
}
function showButtons(data) {
	var rid=data.id;
	var rname=data.name;
	var rnotes=data.notes;
	var rsrc=data.src;
	var rhres=data.hres;
	var rimgsrc=data.imgsrc;
	var surl=data.surl;
	var inbasket=data.inbasket;
	maxbasket=data.maxbasket;
	surl=window.location.href;
	var vhtml='<div class="buttonmenu">';
	if (inbasket)
 		vhtml+='<img id="addbox" alt="Collection Bin remove" title="Remove from Collection Bin" src="images/addlightbox.png" onclick="javascript:removeBasket(this,\''+rid+'\');"/>';
	else
 		vhtml+='<img id="addbox" alt="Collection Bin add" title="Add to Collection Bin" src="images/removelightbox.png" onclick="javascript:addBasket(this,\''+rid+'\');"/>';
 vhtml+='<a class="buttons" href="'+rhres+'" target="_self" title="Open High Res JPEG" alt="Open HighRes"><img src="images/download.png"/></a>';
 vhtml+='<a class="buttons" target="_self" href="printPreview.php?rid=\''+rid+'\'" onclick="printPreview('+rid+');return false;" alt="print" title="Print Friendly View"><img src="images/print.png"/></a>';
vhtml+='&nbsp;&nbsp;&nbsp;&nbsp;<a  style="color:white;" onclick="returnToSearch();return false;" alt="Close Preview" title="Close Preview"><img src="images/exit.png"/></a><br />';
vhtml+='</div>';
//document.getElementById('buttonmenu999').innerHTML=vhtml;
$("#buttonmenu999").html(vhtml);
}
function returnToSearch(){
	//alert('retrun '+globquery);
	window.location.href="newsearch6a.php?"+setURL();
}
function openPreview(rid,rname){
//	window.location.href="newpreview.php?"+setURL(rid,rname);
	var url="/images/newimages/jpegs/highres/"+rname;
	var t="High Res JPEG";
	var p="width=640,height=480,menubar=1";
	if ($.browser.msie) 
	 window.open (url);
	else
	 window.open (url,t,p);
	
//	alert('preview');
}
function showPopUp(data) {
//alert('before');
	var rid=data.id;
	var rname=data.name;
	var jpegname=data.rname;
	var rnotesa=data.notes;
	var rnotes=rnotesa.replace(/\\/gi, "");
	var rsrc=data.src;
	var rhres=data.hres;
	var rimgsrc=data.imgsrc;
	//var rcdate=data.rcdate==""?"No Date":data.rcdate;
	var rcdate=data.rcdate;
	var radded=data.radded;
	var format=data.format;
	var dsize=data.dsize;
	var w=data.w;
	var photog1=data.photog;
	var photog=(photog1&&photog1!="undefined")?"Photographer: "+photog1+"<br />":"";
	var inbasket=data.inbasket;
	maxbasket=data.maxbasket;
	var vhtml='';
	var su=setURL();
     var hpad=w<680?(Math.round(w/2)):0;
	var vf=w<680?'center':'left';
vhtml='<div id="pbuttons" class="buttonmenu"><span style="text-align:center;"><a  class="buttons" onclick="searchAssoc(';
 vhtml+="'"+rname+"');"
 vhtml+='"><img src="images/assocbutton.png" alt="Search Associated Images" title="Search for Images associated with this Record Name"/></a>'; 
if (inbasket)
 vhtml+='<img id="addbox" alt="Collection Bin remove" title="Remove from Collection Bin" src="images/addlightbox.png" onclick="javascript:removeBasket(this,\''+rid+'\');"/>';
else
 vhtml+='<img style="margin-top:-4px;" id="addbox" alt="Collection Bin add" title="Add to Collection Bin" src="images/removelightbox.png" onclick="javascript:addBasket(this,\''+rid+'\');"/>';
 vhtml+='<a class="buttons" href="GetHRES.php?fn='+jpegname+'" target="_self"  title="Open High Res JPEG" alt="Open HighRes"><img src="images/download.png"/></a>';
 vhtml+='<a class="buttons" target="_self" href="printpreview.php?rid=\''+rid+'\'"  onclick="printPreview('+rid+');return false;" alt="print" title="Print Friendly View"><img src="images/print.png"/></a>';
 vhtmlie=vhtml+"</div><br />";
vhtml+='</span><span id="spinner" style="margin-left:30%;position:absolute;right:5;">&nbsp;</div><a alt="close" title="Close" class="buttonsright" onclick="Boxy.get(this).hideAndUnload();"><img src="images/exit.png"/></a></div>';
var vhtmla='<div class="popdiv"><span class="boxymiddle" style="max-width:160px;float:left;">Associated<br />Images<br /><div class="assoclist"></div></span><span id="pimage" class="boxymiddle" style="border:0;"><div id="pbuttonsie"></div><a target="_self"  onclick="openPreview('+rid+',\''+jpegname+'\');return false;"';
 vhtmla+='">'+rimgsrc+'</a></span><br /><div id="ptext"';
 if ($.browser.msie)
	vhtmla+='style="overflow:auto;';
 else
	vhtmla+='style="overflow:hidden;';
 if ($.browser.safari)
 	vhtmla+='width:720px;';
 else
 	vhtmla+='width:870px;';
 vhtmla+='height:80px;margin-top:5px;margin-bottom:1px;padding-bottom:6px;border:1px solid #333;">'+rname+'<br />'+photog+' Date: '+rcdate+'<br />'+rnotes+'</div></div><br />';
// alert(vhtml1);
vhtmlpre='<div id="bi"><img src="images/ajax-loader-circle.gif"/></div> ';
var vy=25;
var vx=Math.round($(window).width()/2)-(400);
//if ($.browser.msie) {
//	vx=1;vy=1;
//	}
if ($(window).height()<800) {
	vy=1;vx=1;
	}
	vy=1;vx=1;
globname=rname;
 
var popup=new Boxy(vhtmla, {
 draggable: true,
 closeable: false,
 clickToFront: true,
 center: true,
 fixed: true,
 modal:true,
 title: vhtml,
 afterShow: function (){
 //alert('after');
	//if ($.browser.msie) $("#pbuttonsie").html(vhtmlie);
	$("#spinner").html('<img src="http://ails.arc.nasa.gov/ails/images/ajax-loader-circle.gif"/>');
	var vrid="."+rid;
	jCarBuild(".assoclist",rname);
	if (!$.browser.msie)
		$('#ptext').jScrollPane({scrollbarMargin:1,reinitialiseOnImageLoad:false,showArrows:true, arrowSize:20,scrollbarWidth: 16});
	$("#loader").html('');
//	$('#mycarousel').jcarousel({
 //       vertical: true,
  //      scroll: 5,
   //     itemLoadCallback: mycarousel_itemLoadCallback
 //  });
 }
 }).moveTo(vx,vy);
//popup.resize(970,560);
//globpopup=popup;
//popup.moveTo('','100');
}
function jCarBuild(ele,rname){
	$("#spinner").html('<img src="http://ails.arc.nasa.gov/ails/images/ajax-loader-circle.gif"/>');
 var jc='<div class="assocpanel">';
 //alert(rname);
 $.getJSON("GetAssocjs.php",{q:rname},function(data) {
		//alert ('in');
		var jcar=data;
		//$("#fred").html(jCarPaint(1,5,'vertical','start'));
		for (i=0;i<jcar.length;i++)
			if (jcar[i].src!='')
				jc+=jcar[i].src+'</div><div class="assocpanel">';
		jc+='</div>';
		$(ele).html(jc);
		$(ele).jScrollPane({scrollbarMargin:1,reinitialiseOnImageLoad:false,showArrows:true, arrowSize:20,scrollbarWidth: 16});
$("#spinner").html('');
});
}

function printPreview (rid) {
	var url="PrintPreview.php?rid="+rid;
	var t="Printer Friendly view";
	var p="width=750,height=650,menubar=1,scrollbars=1";
	if ($.browser.msie)
		ppwin = window.open (url);
	else
		ppwin = window.open (url,t,p);
	
	if (window.focus) 
		ppwin.focus();
}
function showAssocPopUp(data) {
	var rid=data.id;
	var rname=data.name;
	var jpegname=data.rname;
	var rnotes=data.notes;
	var rsrc=data.src;
	var rhres=data.hres;
	var rimgsrc=data.imgsrc;
	var lrimgsrc=data.lrimgsrc;
	var w=data.w;
	var rcdate=data.rcdate;
	var radded=data.radded;
	var format=data.format;
	var dsize=data.dsize;
	var photog1=data.photog;
	var photog=(photog1&&photog1!="undefined")?"Photographer: "+photog1:"";
	var inbasket=data.inbasket;
	maxbasket=data.maxbasket;
	var vhtml='';
	var su=setURL();
    var hpad=w<680?(Math.round(w/2)):0;
 vhtml='<a  class="buttons" onclick="searchAssoc(';
 vhtml+="'"+rname+"');"
 vhtml+='"><img src="images/assocbutton.png" alt="Search Associated Images" title="Search for Images associated with this Record Name"/></a>'; 
if (inbasket)
 vhtml+='<img id="addbox" alt="Collection Bin remove" title="Remove from Collection Bin" src="images/addlightbox.png" onclick="javascript:removeBasket(this,\''+rid+'\');"/>';
else
 vhtml+='<img style="margin-top:-4px;" id="addbox" alt="Collection Bin add" title="Add to Collection Bin" src="images/removelightbox.png" onclick="javascript:addBasket(this,\''+rid+'\');"/>';
 vhtml+='<a href="GetHRES.php?fn='+jpegname+'"  ><img  class="buttons" src="images/download.png" alt="high-res" title="high-res"/></a>';
 vhtml+='<a class="buttons" target="_self" href="printpreview.php?rid=\''+rid+'\'"  onclick="printPreview('+rid+');return false;" alt="print" title="Print Friendly View"><img src="images/print.png"/></a>';
 vhtmlie=vhtml+"</div><br />";
vhtml+='<span id="spinner" style="margin-left:30%;position:absolute;right:5;">&nbsp;</div><a alt="close" title="Close" class="buttonsright" onclick="Boxy.get(this).hideAndUnload();"><img src="images/exit.png"/></a>';
var vhtmla='<a target="_self"  onclick="openPreview('+rid+',\''+jpegname+'\');return false;"';
 vhtmla+='">'+rimgsrc+'</a>';
 vtext=rname+'<br />'+photog+'<br />Date: '+rcdate+'<br />'+rnotes+'<br /><br />';

$("#pbuttons").html(vhtml);
//if ($.browser.msie) $("#pbuttonsie").html(vhtmlie);
jQuery.each(jQuery.browser, function(i) {
  if($.browser.msie||$.browser.safari){
	$("#spinner").html('<img src="http://ails.arc.nasa.gov/ails/images/ajax-loader-circle.gif"/>');
	$("#pimage").html(vhtmla);
	$("#ptext").html(vtext);
	$("#spinner").html('');
	$("#loader").html('');
  } else {
	fader("#pimage",vhtmla,lrimgsrc);
	fader("#ptext",vtext);
  }
});


//$("#pimage").html(vhtmla);
//$("#ptext").html(vtext);
}
function fader(ele,html,src,vtext) {
//	$("#ptext").html('');
	$("#spinner").html('<img src="http://ails.arc.nasa.gov/ails/images/ajax-loader-circle.gif"/>');
	$(ele).fadeOut("normal",function(){
	 	jQuery("#popimage").attr("src", src);
		$("#popimage").preload({
    		placeholder:'images/ajax-loader-circle.gif',
    		notFound:'exit.png',
			onFinish: function (){
				$(ele).html(html);
				$(ele).fadeIn("normal");
	//			$("#ptext").html(vtext);
	//			$("#ptext").fadeIn("normal");
				$("#spinner").html('');
			}

		});
	});
		$("#loader").html('');

}


function mycarousel_itemAddCallback(carousel, json) {
	var ji=json.length;
    carousel.size(ji-1);
	for (i=1;i<ji;i++) 
		if (json[i].src){
			carousel.add(i,json[i].src);
		}
			$("#loader").html('');

    
};
function mycarousel_itemLoadCallback(carousel, state) {
			alert('load callback');
 
 $.getJSON("GetAssocjs.php",{q:globname},function(data) {
			mycarousel_itemAddCallback(carousel, data);
        });
}
function buildAdvSearch() {
var str='<form name="sort" action="newsearch6a.php" method="GET"><p><input type="hidden" name="v"/><input type="hidden" name="page" value="1"/>Image Name:<select  class="styleselect" name="b1" id="b1" size="1"><option value="contains">Contains</option><option value="startswith">Starts with</option><option value="endswith">Ends with</option><option value="not">Not</option><option value="greater">Greater than</option><option value="less">Less than</option><option value="equals">Equals</option></select> <input class="styleinput" type="text" name="qs1" id="qs1">	<select   class="styleselect" name="ao1" id="ao1" size="1">	  <option value="and">And</option>	  <option value="or">Or</option>	  <option value="not">Not</option>        </select> </p> <p>Image Creation Date:   <select  class="styleselect" name="b2" id="b2" size="1">     <option value="greater">Greater than</option>     <option value="less">Less than</option>     <option value="equals">Equals</option>     <option value="not">Not</option>     </select>   <input class="styleinput" type="text" name="nqs2" id="qs2">    <select   class="styleselect" name="ao2" id="ao2" size="1">     <option value="and">And</option>     <option value="or">Or</option>     <option value="not">Not</option>   </select></p> <p>Image Creation Date:   <select  class="styleselect" name="b2a" id="b2a" size="1">     <option value="less">Less than</option>     <option value="greater">Greater than</option>     <option value="equals">Equals</option>     <option value="not">Not</option>     </select>   <input class="styleinput" type="text" name="nqs2a" id="qs2a">   <select  class="styleselect"  name="ao2a" id="ao2a" size="1">     <option value="and">And</option>     <option value="or">Or</option>     <option value="not">Not</option>   </select></p>	<p>Image Description:      <select  class="styleselect" name="b3" id="b3" size="1">        <option value="contains">Contains</option>        <option value="startswith">Starts with</option>        <option value="endswith">Ends with</option>        <option value="not">Not</option>        <option value="greater">Greater than</option>        <option value="less">Less than</option>        <option value="equals">Equals</option>      </select>      <input class="styleinput" type="text" name="qs3" id="qs3">      <select  class="styleselect"  name="ao3" id="ao3" size="1">     	<option value="and">And</option>     	<option value="or">Or</option>     	<option value="not">Not</option>  	  </select></p></p><p>Photographer:      <select class="styleselect"  name="p" id="p">        <option value=""></option>      </select></p><p>Sort By: 	<input type="hidden" name="page" value="1"/>	<select class="styleselect" name="so" id="so" size="1">	  <option value="unsorted">Unsorted</option>	  <option value="rname">Name</option>	  <option value="cdate">Creation Date</option>	  <option value="notes">Notes/Description</option>	  <option value="photo">Photographer</option>	</select></p><div style="display:inline;"><input class="menudiv" type="image" src="images/search.png"  align="bottom" alt="Run Search" title="Run Search"/></div> </form>	';
 return str;
}
function getAdvSearch() {
 var vhtml="AdvSearch.php";
 var vt='Advanced Search<br /><br />'+'<a alt="close" title="Close" class="buttonsright" onclick="Boxy.get(this).hideAndUnload();"><img src="images/exit.png"/></a>';
Boxy.load(vhtml, {
 draggable: true,
 clickToFront: true,
 closeable: false,
 title: vt,
 	afterShow:function(){
		$(".dpick").datepicker({ 
  	 	 showOn: "both", 
  	 	 buttonImage: "images/calendar.gif", 
  	 	 buttonImageOnly: true,
		 yearRange: '1900:2020',
		 dateFormat: 'mm.dd.yy'
	}); 
}
});
}
function openPopUp(rid,url,surl) {
//alert('open');
$("#loader").html('<img id="loader" src="images/ajax-loader-circle.gif" align="right"/>');
$.getJSON("GetRecById.php",{rid:rid},showPopUp);
}
function getPreviewButtons(rid) {
$("#loader").html('<img id="loader" src="images/ajax-loader-circle.gif" align="right"/>');
$.getJSON("GetRecById.php",{rid:rid},showButtons);
}
function getAssocPopUp(rid) {
//$("#loader").html('<img id="loader" src="images/ajax-loader-circle.gif" align="right"/>');
var ele="#ptext"+rid;
$(ele).hide("fadeout","normal");
$.getJSON("GetRecById.php",{rid:rid},showAssocPopUp);
}
function getASearch() {
	  var rn1='';
	  var rn2='';
	  var rn3='';
	  var q='';
	  var rn1=$('input#rname').val();
	  var rn2=$('input#cdate').val();
	  var rn3=$('input#notes').val();
	  var b1=$('select#bools1').val()	  
	  var b2=$('select#bools2').val()	  
	  var ao1=$('select#andor1').val()	  
	  var ao2=$('select#andor2').val()	  

	getPage($('select#so1').val(),'1','',qs);
	parent.location.hash = 'qa='+q+'&so='+$("select#so").val();

}
function getPage(so,ps,qs,qa) {
var vhash=window.location.href;
//alert(vhash);
var hashparams = Spry.Utils.getURLHashParamsAsObject(vhash);
//var hashparams = Spry.Utils.getURLParamsAsObject(vhash);

//alert('gp; '+hashparams.qs);
if (!qs)
		qs=hashparams.qs;
	if (!ps)
		ps=hashparams.page;
	if (!so)
		var so=hashparams.so;
	if (ps <1 || ps > 100 || isNaN(ps))
		ps=1;
	if (!qs)
		qs='astrobiology';
	if (!so || !$("#so").containsOption(so) )
		so='unsorted';
	if (!qs)
		return;
	var vget='qs='+qs+'&page='+ps+'&so='+so;
	//alert(parent.location.href);
	//Spry.Utils.updateContent('sresultdiv',"GetPages.php?"+vget);
	$.getJSON("GetPagesjson.php",{qs:qs,page:ps,so:so},function(data) {
			$("#linediv").html(data.paging);
			$("#sresultdiv").html(data.build);
			
	});
	//$("#sresultdiv").load("GetPages.php?"+vget);
	updateBasket();
	parent.location.hash =vget;
//	parent.location.href ="newsearch6.php?"+vget;
	globquery=vget;
	$("select#so").selectOptions(so);
}
function showQ(data) {
	globquery=data.q;
}
function getAPage(so,ps,qs1,qs2,qs3,ao1,ao2,b1,b2,b3) {
	if (!qs1&&!qs2&&!qs3)
		return;
	if (ps <1 || ps > 100 || isNaN(ps))
		ps=1;
	var qs='';
	if (!so)
		var so=$("select#so").val();
	if (!qs1) qs1='';
	if (!qs2) qs2='';
	if (!qs3) qs3='';
	if (!ao1) ao1='';
	if (!ao2) ao2='';
	if (!b1) b1='';
	if (!b2) b2='';
	if (!b3) b3='';
	var vget='qs='+qs+'&page='+ps+'&so='+so+'&qs1='+qs1+'&qs2='+qs2+'&qs3='+qs3+'&ao1='+ao1+'&ao2='+ao2+'&b1='+b1+'&b2='+b2+'&b3='+b3;
	//Spry.Utils.updateContent('sresultdiv',"GetPages.php?"+vget);
	$("#sresultdiv").load("GetPages.php?"+vget);
	parent.location.hash =vget;
	updateBasket();
	globquery=vget;
	$("select#so").selectOptions(so);
}
function getSort() {
var hashparams = Spry.Utils.getLocationHashParamsAsObject();
var urlparams = Spry.Utils.getLocationParamsAsObject();
	qs=urlparams.qs;
	qs1=urlparams.qs1;
	qs2=urlparams.qs2;
 	qs3=urlparams.qs3;
	ao1=urlparams.ao1;
	ao2=urlparams.ao2;
	b1=urlparams.b1;
	b2=urlparams.b2;
	b3=urlparams.b3;
	ps=urlparams.page;
	so=urlparams.so;
if (!qs&&!qs1&&!qs2&&!qs3) {
var qs=hashparams.qs;
var qs1=hashparams.qs1;
var qs2=hashparams.qs2;
var qs3=hashparams.qs3;
}
var vget='qs='+qs+'&page='+ps+'&so='+so+'&qs1='+qs1+'&qs2='+qs2+'&qs3='+qs3+'&ao1='+ao1+'&ao2='+ao2+'&b1='+b1+'&b2='+b2+'&b3='+b3;
window.location="newsearch6a.php?st=1&"+vget;
$('select#so').val()=so;
//if (!qs1&&!qs2&&!qs3) 
//	getPage($('select#so').val(),'1',hashparams.qs);
//else
//	getAPage($('select#so').val(),'1',hashparams.qs1,hashparams.qs2,hashparams.qs3,hashparams.ao1,hashparams.ao2,hashparams.b1,hashparams.b2,hashparams.b3);

}
function getElementLeft(Elem) {
		var elem;
		if(document.getElementById) {
			var elem = document.getElementById(Elem);
		} else if (document.all){
			var elem = document.all[Elem];
		}
		xPos = elem.offsetLeft;
		tempEl = elem.offsetParent;
  		while (tempEl != null) {
  			xPos += tempEl.offsetLeft;
	  		tempEl = tempEl.offsetParent;
  		}
		return xPos;
}
function getElementTop(Elem) {
	
		if(document.getElementById) {	
			var elem = document.getElementById(Elem);
		} else if (document.all) {
			var elem = document.all[Elem];
		}
		yPos = elem.offsetTop;
		tempEl = elem.offsetParent;
		while (tempEl != null) {
  			yPos += tempEl.offsetTop;
	  		tempEl = tempEl.offsetParent;
  		}
		return yPos;
}
function getElementHeight(Elem) {
		if(document.getElementById) {
			var elem = document.getElementById(Elem);
		} else if (document.all){
			var elem = document.all[Elem];
		}
			xPos = elem.offsetHeight;
		return xPos;
}

function getElementWidth(Elem) {
		if(document.getElementById) {
			var elem = document.getElementById(Elem);
		} else if (document.all){
			var elem = document.all[Elem];
		}
			xPos = elem.offsetWidth;
		return xPos;
	
}
function isTooTall(Elem,Elem1,vdefault) {
	var etop=getElementTop(Elem);
	var eh=getElementHeight(Elem);
	var eetop=getElementTop(Elem1);
	if ((etop+eh)>eetop )
	{
//	document.getElementById(Elem1).style.width='48%';
 //   document.getElementById(Elem1).style.margin='2%';
  //  document.getElementById('rightdiv1').style.margin='5%';
   // document.getElementById('mygallery').style.border='8px solid #666';
	$(Elem1).style.width='48%';
    $(Elem1).style.margin='2%';
    $('rightdiv1').style.margin='5%';
    $('mygallery').style.border='8px solid #666';
	}
	else
	{
	//document.getElementById(Elem1).style.width=vdefault;
    //document.getElementById(Elem1).style.marginRight='0px';
    //document.getElementById(Elem1).style.marginLeft='0px';
    //document.getElementById('mygallery').style.borderLeft='8px none #666';
    //document.getElementById('mygallery').style.borderRight='8px none #666';
	$(Elem1).style.width=vdefault;
    $(Elem1).style.marginRight='0px';
    $(Elem1).style.marginLeft='0px';
    $('mygallery').style.borderLeft='8px none #666';
    $('mygallery').style.borderRight='8px none #666';
	}
    //document.getElementById(Elem1).style.visibility='visible';
    $(Elem1).style.visibility='visible';
	showhide('showresults','block');
	showhide('footer','none');
}
function mouseisDown(vdir) {
	IntervalId = setInterval(function () {
	var vs=1;
	if (!inscroll) vs=0;
	if (vdir=='next' )
		stepcarousel.stepBy('mygallery', vs);
	else if (vdir=='previous' )
		stepcarousel.stepBy('mygallery', -vs);
	inscroll=true;
},500,vdir);
}
function clearIV() {
clearInterval( IntervalId );
inscroll=false;
}
function getFirstStep() {
	stepcarousel.stepTo('mygallery', 1);
	$("#lastarrow").show();
	$("#rightarrow").show();
	$("#leftarrow").hide();
	$("#firstarrow").hide();
}
function getLastStep() {
	stepcarousel.stepTo('mygallery', totalpanels);
	$("#lastarrow").hide();
	$("#rightarrow").hide();
	$("#leftarrow").show();
	$("#firstarrow").show();
}
function getStep(vdir) {
var vs=Math.round(Math.abs(document.getElementById('footer').clientWidth/120))-2;
//var vs=Math.round(Math.abs($("#footer").clientWidth/100));
//alert(vs);
//vs=11;
if (!inscroll)
	if (vdir=='next')
		stepcarousel.stepBy('mygallery', vs);
	else
		stepcarousel.stepBy('mygallery', -vs);
	if (firstpanel==1){
		$("#leftarrow").hide();
		$("#firstarrow").hide();
	}
	else {
		$("#leftarrow").show();
		$("#firstarrow").show();
	}
	if (lastpanel==totalpanels){
		$("#rightarrow").hide();
		$("#lastarrow").hide();
	}
	else {
		$("#rightarrow").show();
		$("#lastarrow").show();
	}
	
}
function saveHighRes(rname) {
 vhtml='GetHRES.php?fn='+rname;
 window.location=vhtml;
}
function openHighRes(rname) {
	var t1=rname.split('.');
	var rname1=t1[0]+'.jpg';
//var url='http://ails.arc.nasa.gov/images/newimages/jpegs/highres/'+rname1;
	var url="/images/newimages/jpegs/highres/"+rname1;
	var t="High Res JPEG of "+rname1;
	var p="width=640,height=480,menubar=1";
	mywindow = window.open (url,t,p);

//window.location.href=url;	
}
function getFaq(fn) {
 var vhtml="faq"+fn+".htm";
 var vt='Frequently Asked Questions<br /><br />'+'<a alt="close" title="Close" class="buttonsright" onclick="Boxy.get(this).hideAndUnload();"><img src="images/exit.png"/></a>';
 Boxy.load(vhtml, {
 draggable: true,
 clickToFront: true,
 closeable: false,
 title: vt
 });
}

