mirror of
https://github.com/moodle/moodle.git
synced 2025-01-19 14:27:22 +01:00
MDL-18963 Applied Matt's patch. Merged from MOODLE_19_STABLE
This commit is contained in:
parent
59080eee21
commit
6b0b62adf0
@ -255,8 +255,20 @@ YAHOO.graderreport.mouseoverHandler = function (e) {
|
||||
if (elTarget.className.search('grade cell') > -1) {
|
||||
|
||||
// each time we go over a new cell, we need to put it's tooltip into a div to stop it from
|
||||
// popping up on top of the panel. Still looking for a way to set the header differently
|
||||
if (elTarget.childNodes.length == 1) {
|
||||
// popping up on top of the panel.
|
||||
|
||||
// don't do anything if we have already made the tooltip div
|
||||
var makeTooltip = true
|
||||
for (var k=0; k < elTarget.childNodes.length; k++) {
|
||||
if (typeof(elTarget.childNodes[k].className) != 'undefined') {
|
||||
if (elTarget.childNodes[k].className.search('tooltipDiv') > -1) {
|
||||
makeTooltip = false;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// if need to, make the tooltip div and append it to the cell
|
||||
if (makeTooltip) {
|
||||
|
||||
tempNode = document.createElement("div");
|
||||
tempNode.className = "tooltipDiv";
|
||||
@ -265,8 +277,17 @@ YAHOO.graderreport.mouseoverHandler = function (e) {
|
||||
elTarget.title = null;
|
||||
}
|
||||
|
||||
tooltipNode = elTarget.childNodes[1];
|
||||
|
||||
// Get the tooltip div
|
||||
elChildren = elTarget.childNodes;
|
||||
for (var m=0; m < elChildren.length; m++) {
|
||||
if (typeof(elChildren[m].className) != 'undefined') {
|
||||
if (elChildren[m].className.search('tooltipDiv') > -1) {
|
||||
tooltipNode = elChildren[m];
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
//build and show the tooltip
|
||||
YAHOO.graderreport.panelEl.setBody(tooltipNode.innerHTML);
|
||||
YAHOO.graderreport.panelEl.render(elTarget);
|
||||
YAHOO.graderreport.panelEl.show()
|
||||
@ -277,8 +298,8 @@ YAHOO.graderreport.mouseoverHandler = function (e) {
|
||||
YAHOO.graderreport.mouseoutHandler = function (e) {
|
||||
|
||||
var classVar = '';
|
||||
var searchString = '';
|
||||
var newTargetClass = '';
|
||||
var elTarget = YAHOO.util.Event.getTarget(e);
|
||||
var newTarget = YAHOO.util.Event.getRelatedTarget(e);
|
||||
|
||||
// deals with an error if the mouseout event is over the lower scrollbar
|
||||
@ -291,17 +312,17 @@ YAHOO.graderreport.mouseoutHandler = function (e) {
|
||||
|
||||
// if we are over any part of the panel, do not hide
|
||||
// do this by walking up the DOM till we reach table level, looking for panel tag
|
||||
while ((typeof(newTarget.id)) == 'undefined' || (newTarget.id != 'user-grades')) {
|
||||
while ((typeof(newTarget.id) == 'undefined') || (newTarget.id != 'user-grades')) {
|
||||
|
||||
try {
|
||||
newTargetClass = newTarget.className;
|
||||
} catch (err) {
|
||||
// we've gone over the scrollbar
|
||||
// we've gone over the scrollbar again
|
||||
YAHOO.graderreport.panelEl.hide()
|
||||
return false;
|
||||
}
|
||||
|
||||
if (newTargetClass.search('yui-panel') > -1) {
|
||||
searchString = /yui-panel|grade cell/;
|
||||
if (newTargetClass.search(searchString) > -1) {
|
||||
// we're in the panel so don't hide it
|
||||
return false;
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user