var showBubble;
var loadOwners;

window.onload = (function(old) {

	try{
		document.execCommand("BackgroundImageCache", false, true);
	} catch(e){ }


	function getOffset(element, x, y) {
		if (x == null || y == null)
			return getOffset(element, 0, 0);
		else if (element == null)
			return [x,y];
		else
			return getOffset(element.offsetParent, x+element.offsetLeft, y+element.offsetTop);
	}
	function contains(a,b) {
		if (b == null)
			return false;
		return (a==b) || contains(a, b.parentNode);
	}
	
	var container = new Element('div',{
		id: 'bubble',
		html : '<div class="top"></div><div class="middle"></div><div class="bottom"></div>'
	});

	showBubble=function(el,tags){
		arr=getOffset(el);
		container.style.left=arr[0]-30 + "px";
		container.style.top=arr[1]+"px";
		container.getElement('.middle').set('html',tags);
	};
	loadOwners=function(portfolioid){
		new Request({
			url:'/portfolio/directory_owners_list.digi', 
			data:{portfolioid:portfolioid},
			method:'get',
			onSuccess:function(text,xml){
				var users;
				eval('users='+text);
				str='<b>Owners:</b><br />';
				for(var i=0;i<users.length;i++){
					user=users[i];
					if(user.profilef)
						str+="<a target='_blank' href='/user_profile_view.digi?userid="+parseInt(user.userid)+"' >";
					str+=decodeURIComponent(user.firstname.replace(/\+/g,' '))+" "+decodeURIComponent(user.lastname.replace(/\+/g,' '));
					if(user.profilef)
						str+="</a>";
					if(i<users.length-1)
						str+=", ";
				}
				container.getElement('.middle').set('html',str);
			},
			onFailure:function(){
			}
		}).send();
		return 'Loading owners..';
	}

	
	
	return function() {
		if (old)
			old.apply(this, arguments);

		//var table = document.getElementById("digiSpot_Inner").getElementsByTagName("table")[0];

		document.body.appendChild(container);
		//var values = container.getElementsByTagName("span");
		/*
		table.onmouseover = function(evt) {
			var target = evt? evt.target : event.srcElement;
			if (target.nodeName.toUpperCase() == "IMG") {
				var portfolio = portfolios[((target.parentNode.href || "").match(/com\/([^\/]+)\//) || "")[1]];

				if (portfolio) {
					var offset = getOffset(target);
					container.style.left = offset[0]+5+"px";
					container.style.top  = offset[1]+40+"px";
				
					values[0].firstChild.data = portfolio[0];
					values[1].firstChild.data = portfolio[1];
					values[2].firstChild.data = portfolio[2];
				}
			}
		}
		//*/
		document.body.onmouseout = function(evt) {
			var related = evt? evt.relatedTarget : event.toElement;
			if (!contains(container, related)) {
				container.style.left = "-10000px";
			}
		}
	}
})(window.onload);
