//zoek voor dingen met help zodra pagina is geladen

YAHOO.namespace("tooltip");

YAHOO.tooltip = function () {
	var $E = YAHOO.util.Event;
	var $D = YAHOO.util.Dom;
	
	var buildTooltip = function(node) {
		var parent = node;
				
		$E.addListener(parent, "mouseover", showTooltip, node);
		$E.addListener(parent, "mouseout", closeTooltip, node);
		$E.addListener(parent, "mousemove", moveTooltip, node);
	};

	var showTooltip = function(e, tooltipnode) {
		var tooltip = $D.get("tooltip");
		
		tooltip.innerHTML = tooltipnode.getAttribute('tooltip');
		tooltip.style.display = "block";
		moveTooltip(e, tooltipnode);
	};
		
	var moveTooltip = function(e, tooltipnode) {
	  var IE = document.all?true:false;
	  var tooltip = $D.get("tooltip");
	  
	  if (IE) { // grab the x-y pos.s if browser is IE
      mouse_x = event.clientX + document.documentElement.scrollLeft
      mouse_y = event.clientY + document.documentElement.scrollTop
    } else {  // grab the x-y pos.s if browser is NS
      mouse_x = e.pageX
      mouse_y = e.pageY
    } 
	
	  mouse_x = mouse_x + 10 //onderaan het pijltje
	  mouse_y = mouse_y + 10
	 	  
    tooltip.style.left = mouse_x + "px";
		tooltip.style.top = mouse_y + "px";
	};
	
	var closeTooltip = function(e, tooltipnode) {	
		var tooltip = $D.get("tooltip");
		if (tooltip) {  
			tooltip.style.display = "none";
			tooltip.style.top = "-100px";
			tooltip.style.left = "-100px"; 
		} 
	};
	
	var getElementsByAttribute = function(attrN,attrV,multi){
    //attrV=attrV.replace(/\|/g,'\\|').replace(/\[/g,'\\[').replace(/\(/g,'\\(').replace(/\+/g,'\\+').replace(/\./g,'\\.').replace(/\*/g,'\\*').replace(/\?/g,'\\?').replace(/\//g,'\\/');
    var multi=typeof multi!='undefined'?multi:false,
        cIterate=document.getElementsByTagName('*'),
        aResponse=[],
        attr,
        re=new RegExp(multi?'\\b'+attrV+'\\b':'^'+attrV+'$'),
        i=0,
        elm;
    while((elm=cIterate.item(i++))){
        attr=elm.getAttributeNode(attrN);
        if(attr &&
            attr.specified &&
            re.test(attr.value)
        )
            aResponse.push(elm);
    }
    return aResponse;
  };
	
	return {	  
	  checkElements: function(rootnode) {
      nodes = YAHOO.util.Dom.getElementsByAttribute("tooltip", null, rootnode);;
  						
  			//bouw tooltip
  			for (i in nodes) {
			  buildTooltip(nodes[i]);
  			}
    },
    
    hideTooltip: function() {
      closeTooltip();
    },
	  
		init: function(e, node) {
			var rootNode = node;

			var tooltip = document.createElement("div");
			tooltip.id = "tooltip";
			tooltip.setAttribute("id", "tooltip");
			tooltip.style.display = "none";
			tooltip.style.position = "absolute";
			tooltip.style.top = "-100px";
			tooltip.style.left = "-100px";
			document.body.appendChild(tooltip);
			
			YAHOO.tooltip.checkElements(document);
		}
	}
}();

YAHOO.util.Event.addListener(window, "load", YAHOO.tooltip.init, YAHOO.util.Dom.get("content"));