function getEvent(eventobj) {
	if(eventobj.stopPropagation) {
		eventobj.stopPropagation();
		eventobj.preventDefault();
		return eventobj;
	} else {
		window.event.returnValue = false;
		window.event.cancelBubble = true;
		return window.event;
	}
}

function yaf_mouseover() {

    var evt = getEvent(window.event);
	
	if(evt.srcElement) evt.srcElement.style.cursor = "hand";
	else if(evt.target)	evt.target.style.cursor = "pointer";

    return false;
}

function yaf_left(obj) {
	var x = 0;
	while(obj) {
		x += obj.offsetLeft;
		obj = obj.offsetParent;
	}
	return x;
}

function yaf_top(obj) {
	var y = obj.offsetHeight;
	while(obj){
		y += obj.offsetTop;
		obj = obj.offsetParent;
	}
	return y;
}
/*
function yaf_popit(menuName) {

    var target, newmenu, evt = getEvent(window.event);

    if (!document.getElementById) {
        throw ('ERROR: missing getElementById');
        return false;
    }

    if (evt.srcElement)
        target = evt.srcElement;
    else if (evt.target)
        target = evt.target;
    else {
        throw ('ERROR: missing event target');
        return false;
    }

    newmenu = document.getElementById(menuName);

    if (window.themenu && window.themenu.id != newmenu.id)
        yaf_hidemenu();

    window.themenu = newmenu;

    if (!window.themenu.style) {
        throw ('ERROR: missing style');
        return false;
    }

    if (themenu.style.visibility == "") {
        var x = yaf_left(target);
        // Make sure the menu stays inside the page
        // offsetWidth or clientWidth?!?
        if (document.documentElement) {
            if (x + themenu.offsetWidth > document.documentElement.offsetWidth - 20)
                x += target.offsetWidth - themenu.offsetWidth;
        }

        themenu.style.visibility = "visible";
        themenu.style.zIndex = "100";
        themenu.style.left = x.toString() + "px";
        themenu.style.top = yaf_top(target).toString() + "px";
    } else yaf_hidemenu();
    return false;
}
*/
function yaf_popit(menuName, param) {


    var target,newmenu,evt=getEvent(window.event);

	if(!document.getElementById) {
		throw('ERROR: missing getElementById');
		return false;
	}
	
	if(evt.srcElement)
		target = evt.srcElement;
	else if(evt.target)
		target = evt.target;
	else {
		throw('ERROR: missing event target');
		return false;
	}

	newmenu = document.getElementById(menuName);

	if(window.themenu && window.themenu.id!=newmenu.id)
		yaf_hidemenu();

	window.themenu = newmenu;

	if (param != undefined && param != null) {
	    var rows = newmenu.getElementsByTagName("tr");
	    for (i = 0; i < rows.length; i++) {
	        rows[i].getElementsByTagName("a")[0].href = rows[i].getElementsByTagName("a")[0].href.replace("{0}", param);
	    }
	}
    

	if(!window.themenu.style){
		throw('ERROR: missing style');
		return false;
	}

	if(themenu.style.visibility == "") {
		var x = yaf_left(target);
		// Make sure the menu stays inside the page
		// offsetWidth or clientWidth?!?
		if(document.documentElement) {
			if(x + themenu.offsetWidth>document.documentElement.offsetWidth - 20)
				x += target.offsetWidth - themenu.offsetWidth;
		}

		themenu.style.visibility = "visible";
		themenu.style.zIndex = "100";
		themenu.style.left = x.toString() + "px";
		themenu.style.top = yaf_top(target).toString()+"px";
    } else yaf_hidemenu();

    document.onclick = yaf_hidemenu;
	
	return false;
}





function yaf_hidemenu() {
	if(window.themenu) {
		window.themenu.style.visibility = "";
		window.themenu = null;
	}
}

function mH(cell,hover) {
	if(hover) {
		cell.className = "postheader";
		try {
			cell.style.cursor = "pointer";
		}
		catch(e) {
			cell.style.cursor = "hand";
		}
	} else {
		cell.className = "";
	}
}


if(document.addEventListener) document.addEventListener("click",function(e){window.event=e;},true);
if (document.addEventListener) document.addEventListener("mouseover", function(e) { window.event = e; }, true);

function yaf_go(action) {
    document.getElementById('action').value = action;
    var a; if (a = document.forms['dForm']) a.submit(); else document.dForm.submit();
}