
function init() {	
	var wrapperEl = document.getElementById('QualityReports');

	var qiTds = wrapperEl.getElementsByTagName('td');
	for (var i=0;i<qiTds.length;i++) {
        if (!qiTds[i].onclick) {	
            qiTds[i].onclick = function(e) {
                assignLink(e);
            }
        }
		qiTds[i].onmouseover = function(e) {
			changeCursor(e, "pointer");
			setStatusText(e, "over");
		}
		qiTds[i].onmouseout = function(e) {
			changeCursor(e, "default");
			setStatusText(e, "out");
		}
	}
	var qiThs = wrapperEl.getElementsByTagName('th');
	for (var j=0;j<qiThs.length;j++) {
        if (!qiThs[j].onclick) {
            qiThs[j].onclick = function(e) {
                assignLink(e);
            }
        }
		qiThs[j].onmouseover = function(e) {
			changeCursor(e, "pointer");
			setStatusText(e, "over");
		}
		qiThs[j].onmouseout = function(e) {
			changeCursor(e, "default");
			setStatusText(e, "out");
		}
	}
	var qiAs = wrapperEl.getElementsByTagName('a');
	for (var k=0;k<qiAs.length;k++) {
        if (!qiAs[k].onclick) {
            qiAs[k].onclick = function(e) {
                QIPopUp(this.href);		
                return false;
            }
        }
		qiAs[k].onmouseover = function(e) {
			setStatusText(e, "over");
		}
		qiAs[k].onmouseout = function(e) {
			setStatusText(e, "out");
		}
		qiAs[k].onmousemove = function(e) {
			setStatusText(e, "over");
		}
	}
}

function assignLink(e) {
	var oClickSrc = getSrcElement(e);
	var oFirstChild = oClickSrc.getElementsByTagName('a')[0];
	if ( oFirstChild != null ) {
		if ( typeof oFirstChild == 'object' ) {
			if ( oFirstChild.href != null ) {
				
					QIPopUp(oFirstChild.href);
					
			} //else { alert("oFirstChild has no 'href' property!"); }
		} //else { alert("oFirstChild is not an object!"); }
	} //else { alert("oFirstChild is null!"); }
}

function changeCursor(e, cursorStyle) {
	var oMouseMoveSrc = getSrcElement(e);
	var oFirstChild = oMouseMoveSrc.getElementsByTagName('a')[0];
	if ( oFirstChild != null ) {
		if ( typeof oFirstChild == 'object' ) {
			if ( oFirstChild.href != null ) {
				oMouseMoveSrc.style.cursor = cursorStyle;
			}
		}
	}
}

function setStatusText(e, mouseAction) {
	var mouseAction;
	var oMouseMoveSrc = getSrcElement(e);
	if (mouseAction == "over") {
		if ((oMouseMoveSrc.parentNode.id == '') && (oMouseMoveSrc.id != '')) {
			window.status = oMouseMoveSrc.id;
		}
		else if ((oMouseMoveSrc.parentNode.id == '') && (oMouseMoveSrc.id == '')) {
			window.status = oMouseMoveSrc.parentNode.parentNode.id;
		}
		else if (oMouseMoveSrc.href && (oMouseMoveSrc.href.indexOf("popupQualityReports") < 0)) {
			window.status = oMouseMoveSrc.href;
		}
		else {
			window.status = oMouseMoveSrc.parentNode.id;
		}
	}
	else {
		window.status = '';
	}
}

function getSrcElement(e) { // if IE, set e to window.event
	var eventSrc;
	if (!e) { e = window.event; }
	if (typeof e == 'object') {
		eventSrc = e.srcElement ? e.srcElement : e.target;
	}
	return eventSrc;
}

// Quality Indicators PopUps
// Usage: <a onclick="QIPopUp(this.href); return false;" href="/specialties/heart/qi_exp_label.aspx">PCI volume</a>
function QIPopUp(url) {
	if (url.indexOf("popupQualityReports") > 0) {
		// if "popupQualityIndicator" is in URL string, popup a small window
		fnOpenWindow(url,'QualityReportsPopUp',250,150);
	}
	else {
		// if "popupQualityIndicator" is NOT in URL string, don't open a popup
		window.location = url;
	}
}


init();
