//////////////////////////////////////////////////////////////////
// qTip - CSS Tool Tips - by Craig Erskine
// http://qrayg.com | http://solardreamstudios.com
//
// Inspired by code from Travis Beckham
// http://www.squidfingers.com | http://www.podlob.com
//
// Extended for tricus Systemhaus by Jens Kuesters
// http://www.tricus.net
//////////////////////////////////////////////////////////////////

var qTipTag = "a"; //Which tag do you want to qTip-ize? Keep it lowercase!//
var qTipX = -30; //This is qTip's X offset//
var qTipY = 25; //This is qTip's Y offset//
var developerKey = 'DYA06U0sb964'; //websnapr.com

//There's No need to edit anything below this line//
tooltip = {
  name : "qTip",
  offsetX : qTipX,
  offsetY : qTipY,
  tip : null
}

tooltip.init = function () {
	var tipNameSpaceURI = "http://www.w3.org/1999/xhtml";
	if(!tipContainerID){ var tipContainerID = "qTip";}
	var tipContainer = document.getElementById(tipContainerID);

	if(!tipContainer) {
	  tipContainer = document.createElementNS ? document.createElementNS(tipNameSpaceURI, "div") : document.createElement("div");
		tipContainer.setAttribute("id", tipContainerID);
	  document.getElementsByTagName("body").item(0).appendChild(tipContainer);
	}

	if (!document.getElementById) return;
	this.tip = document.getElementById (this.name);
	if (this.tip) document.onmousemove = function (evt) {tooltip.move (evt)};

	var a, sTitle, sRel, sClass, arrClass, bHasClass, bShowThumb;
	var anchors = document.getElementsByTagName (qTipTag);

	for (var i = 0; i < anchors.length; i ++) {
		a = anchors[i];
		sTitle = a.getAttribute("title");
		sClass = a.getAttribute("class");
		if( !sClass )
			sClass = a.className;
		//alert(a.getAttribute('href') + " - " + sClass);
		bHasClass = false;
		bShowThumb = true;
		
		if( sClass ) {
			arrClass = sClass.split(" ");
			for( x = 0; x < arrClass.length; x++) {
				if( arrClass[x] == "previewlink" ) {
					bHasClass = true;
				}
				if( arrClass[x] == "link-internal" || arrClass[x] == "link-pdf" || arrClass[x] == "link-doc" || arrClass[x] == "link-xls" ) {
					bShowThumb = false;
				}
			}
		}
		
		sRel = a.getAttribute("rel");
		//alert(a.getAttribute('href') + " - " + sTitle + " - " + bHasClass);
		if( (sTitle || bHasClass ) && !sRel ) {
			if( a.getAttribute('href').substr(0,4) != "http" ) {
				bShowThumb = false;
			}
			//alert(a.getAttribute('href') + " " + bShowThumb);
			a.setAttribute("tiptitle", sTitle);
			a.setAttribute("showthumb", bShowThumb+"");
			a.removeAttribute("title");
			a.onmouseover = function() {tooltip.show(this.getAttribute('tiptitle'), this.getAttribute('href'), this.getAttribute('showthumb'))};
			a.onmouseout = function() {tooltip.hide()};
		}
	}
}

tooltip.move = function (evt) {
	var x=0, y=0;
	
	if (document.all) {//IE
		x = (document.documentElement && document.documentElement.scrollLeft) ? document.documentElement.scrollLeft : document.body.scrollLeft;
		y = (document.documentElement && document.documentElement.scrollTop) ? document.documentElement.scrollTop : document.body.scrollTop;
		x += window.event.clientX;
		y += window.event.clientY;
		
	} else {//Good Browsers
		x = evt.pageX;
		y = evt.pageY;
	}
	this.tip.style.left = (x + this.offsetX) + "px";
	this.tip.style.top = (y + this.offsetY) + "px";
}

tooltip.show = function (text, url, showThumbnail) {
	if (!this.tip || (!text && showThumbnail != "true")) return;
	if (text == 'null') text = '';
	
	if( showThumbnail == "true" ) {
		var thumb = "<img src=\"http://images.websnapr.com/?key=" + encodeURIComponent(developerKey) + "&url=" + url + "\" width=\"202\" height=\"152\" alt=\"Vorschau\" class=\"thumbnail\" />";
		this.tip.innerHTML = thumb + text;
	} else{
		this.tip.innerHTML = text;
	}
	this.tip.style.display = "block";
}

tooltip.hide = function () {
	if (!this.tip) return;
	this.tip.innerHTML = "";
	this.tip.style.display = "none";
}

window.onload = function () {
	tooltip.init ();
}