function rowaddEvent(objObject, strEventName, fnHandler) {
// DOM-compliant way to add an event listener
if (objObject.addEventListener)
objObject.addEventListener(strEventName, fnHandler, false);
// IE/windows way to add an event listener
else if (objObject.attachEvent)
objObject.attachEvent("on" + strEventName, fnHandler);
}
function rowsetMouseOver (thisEvent) {
var targetEl = thisEvent.srcElement;
targetEl = targetEl.nodeName == 'TR' ? targetEl : targetEl.parentNode;
targetEl = targetEl.nodeName == 'TR' ? targetEl : targetEl.parentNode;
targetEl = targetEl.nodeName == 'TR' ? targetEl : targetEl.parentNode;
if (targetEl.nodeName != 'TR') return;
targetEl.hasHilite = true;
targetEl.className+=" rowFocus";
}
function rowsetMouseOut (thisEvent) {
var targetEl = thisEvent.srcElement;
var newClass = '';
targetEl = targetEl.nodeName == 'TR' ? targetEl : targetEl.parentNode;
targetEl = targetEl.nodeName == 'TR' ? targetEl : targetEl.parentNode;
targetEl = targetEl.nodeName == 'TR' ? targetEl : targetEl.parentNode;
if (targetEl.nodeName != 'TR') return;
newClass = targetEl.className.replace(new RegExp(' rowFocus\\b','g'), '');
targetEl.hasHilite = false;
setTimeout('removeHilite("' + targetEl.id + '")',10);
}
function removeHilite (objId) {
var targetEl = document.getElementById(objId);
if (!targetEl.hasHilite) {
targetEl.className = targetEl.className.replace(new RegExp(' rowFocus\\b','g'), '');
}
}
function goToBaseURL (newUrl,e) {
if ((e.target ? e.target : e.srcElement).tagName != 'TD') return false;
if (e == null || typeof(e) == 'undefined' || !e.shiftKey) {
document.location=document.getElementsByTagName('base')[0].href + newUrl;
} else {
var newWin = window.open (document.getElementsByTagName('base')[0].href + newUrl);
}
return true;
}
rowFocus = function() {
var sfEls = document.getElementsByTagName("tbody");
for (var i=0; i<sfEls.length; i++) {
if (sfEls[i].className == 'rowHilite') {
for (var j=0; j<sfEls[i].rows.length; j++) {
if (typeof sfEls[i].rows[j].className == 'string') {
if (sfEls[i].rows[j].className.search(/noHilite/) == -1) {
sfEls[i].rows[j].hasHilite = false;
if (sfEls[i].rows[j].id == "") sfEls[i].rows[j].id = 'rowHilite' + i + '_' + j;
rowaddEvent(sfEls[i].rows[j],'mouseover',rowsetMouseOver);
rowaddEvent(sfEls[i].rows[j],'mouseout',rowsetMouseOut);
var tags = sfEls[i].rows[j].getElementsByTagName('a');
for (var k=0; k<tags.length; k++) {
rowaddEvent(tags[k],'mouseover', rowsetMouseOver);
rowaddEvent(tags[k],'mouseout', rowsetMouseOut);
}
}
}
}
}
}
}
// Attach to startup for IE
if (window.attachEvent) window.attachEvent("onload", rowFocus);
