/* GERERIC MMH AJAX POPUPS */
// add favs
addfavpopup = {
	name : "addfavpop",
	backpopname : "faqpopbackground",
	addfav : null
};
var addfavcontent = '<div class="linertop"><\/div><div class="body"><p class="addfavpopupclosebox"><a href="#" id="closeaddfavbutton"><img src="/images/pixel.gif" alt="" width="24" height="21" /><\/a><\/p><div id="ajaxmessage"><\/div><\/div><div class="linerbottom"></div>';

addfavpopup.init = function () {
	if (!document.getElementById) return;
	// generate addfav layer
	this.addfav = document.createElement ("div");
	this.addfav.setAttribute ("id", this.name);
	this.addfav.className = "ajaxpopup";
	document.body.appendChild (this.addfav);
	this.addfav.innerHTML = addfavcontent;
	this.addfav = document.getElementById(this.name);
	// Background
	if (!document.getElementById(this.backpopname)) {
		this.backpopnamelayer = document.createElement ("div");
		this.backpopnamelayer.setAttribute ("id", this.backpopname);
		document.body.appendChild (this.backpopnamelayer);
	} else {
		this.backpopnamelayer = document.getElementById(this.backpopname);
	}
	var a;
	var anchors = document.getElementsByTagName("a");
	for (var i = 0; i < anchors.length; i ++) {
		a = anchors[i];
		if (a.className == "addfavpopup") {
			a.onclick = function(evt) {
				addfavpopup.move(evt);
				// ajax call	
				sendRequestPost(this.getAttribute('rel'));
				addfavpopup.show(this.getAttribute('rel')); 
				return false; 
			};
			
		}
	}
};

addfavpopup.removehelper = function(evt) {
	// ajax call	
	sendRequestPost(document.getElementById("removefavnow").getAttribute('rel'));
	addfavpopup.show(document.getElementById("removefavnow").getAttribute('rel')); 
	return false; 
};



//this gets the position sorted out
addfavpopup.move = function (evt) {
	// determin screen dimensions
	var screenwidth, screenheight;
	if (self.innerHeight) // all except Explorer
	{
		screenwidth = self.innerWidth;
		screenheight = self.innerHeight;
	}
	else if (document.documentElement && document.documentElement.clientHeight)
		// Explorer 6 Strict Mode
	{
		screenwidth = document.documentElement.clientWidth;
		screenheight = document.documentElement.clientHeight;
	}
	else if (document.body) // other Explorers
	{
		screenwidth = document.body.clientWidth;
		screenheight = document.body.clientHeight;
	}
	
	// determin mouse position
	var x=0, y=0;
	if (document.all) { // Explorer
		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 { // Mozilla
		x = evt.pageX;
		y = evt.pageY;
	}
	//check if tooltip fits screen width/height 
	if ((x + 320) > screenwidth && (x - 320) > 10) {
		x = x-320-24;
	} else {
		x = x-15; // offset
	};	
	/* if ((y + 200) > screenheight) {
		y = y-200-24;
	} else {
		y = y;
	};
	*/
	y = y-15; // offset
		
	this.addfav.style.left = (x+10) + "px";
	this.addfav.style.top = (y+10) + "px";
};

// show the addfav
addfavpopup.show = function (text) {
	if (!this.addfav) return;
	// Without the next line, Explorer5/Mac has a redraw problem.
	this.addfav.style.display = "block";
	// show background
	var pageheight = document.body.scrollHeight;
	this.backpopnamelayer.style.height = pageheight+"px";
	this.backpopnamelayer.style.display = "block";
	addfavpopup.addfavpopuphide(this.addfav);
};

// hide the addfav
addfavpopup.addfavpopuphide = function() {
	if (!document.getElementById) return false;
	if (this.addfav) {
		document.getElementById('closeaddfavbutton').onclick = function() {
			document.getElementById(addfavpopup.name).style.display = "none";
			document.getElementById(addfavpopup.backpopname).style.display = "none";
			document.getElementById("ajaxmessage").innerHTML = "";
			return false;
		};
		document.getElementById(addfavpopup.backpopname).onclick = function() {
			document.getElementById(addfavpopup.name).style.display = "none";
			document.getElementById(addfavpopup.backpopname).style.display = "none";
			document.getElementById("ajaxmessage").innerHTML = "";
			return false;
		};
	} 
};

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

// HELPER FUNCTIONS
/*
// Events helper
function addEvent(elm, evType, fn, useCapture) {
	if (elm.addEventListener) {
		elm.addEventListener(evType, fn, useCapture);
		return true;
	} else if (elm.attachEvent) {
		var r = elm.attachEvent('on' + evType, fn);
		return r;
	} else {
		elm['on' + evType] = fn;
	}
}

// Events helper
function removeEvent(elm, evType, fn, useCapture) {
	if (elm.removeEventListener) {
		elm.removeEventListener(evType, fn, useCapture);
		return true;
	} else if (elm.detachEvent) {
		var r = elm.detachEvent('on' + evType, fn);
		return r;
	} else {
		elm['on' + evType] = fn;
	}
}

function cancelClick(e) {
	if (window.event){
		window.event.cancelBubble = true;
		window.event.returnValue = false;
		return;
	}
	if (e){
		e.stopPropagation();
		e.preventDefault();
	}
}
*/