var Fancybox = function(spec) {

 var elementId = spec.elementId;
 var element = elementId ? document.getElementById(elementId) : null;
 var url = spec.url;
 var $zone = jQuery('#' + spec.zone);

 var show = function() {
  var updatedUrl = url;
  var params = {elementId:elementId};  
  $zone.tapestryZone('update', {
   url : updatedUrl, 
   params : params
  });
  return false;
 };
 
 var dialog = {href: "#"+elementId+"_content"};

 var display = function() {
	setTimeout(function(){
	var fbc = $j("#fancyBoxContainer").empty();
	if(fbc.length == 0) fbc = $j("<div/>").attr("id","fancyBoxContainer").css("display","none").appendTo("body");
	$j(dialog.href).appendTo(fbc);
	$j(dialog).fancybox({
		scrolling	: 'no',
		titleShow	: false,
		width		: 300,
		height		: 75,
		autoDimensions: false
	}).trigger("click");
	},50);
};

 return {
  show : show,
  _display: display,
  hide: function() {
	 $j.fancybox.close();
 	}
 };
}
