var IE = document.all?true:false;
if(window.addEventListener){ // Mozilla, Netscape, Firefox
	document.addEventListener('mousemove', getMouseXY, false);
} else { // IE
	document.attachEvent('onmousemove', getMouseXY);
}
var tempX = 0;
var tempY = 0;

function insideDiv (el,chkdiv) {
  if (!el.parentNode) {
    return false;
  } else if (el.parentNode.id == chkdiv) {
    return true;
  } else {
    return insideDiv(el.parentNode,chkdiv);
  }
}

function getMouseXY(e) {
  if (IE) {
    tempX = event.clientX + document.body.scrollLeft //+ Xcorr;
    tempY = event.clientY + document.body.scrollTop  //+ Ycorr;
  } else {
    tempX = e.pageX;
    tempY = e.pageY;
  }
}

function findCoords(anObj) {
  var coordArr = new Array();
  var objx=0;
  var objy=0;
  var objp;
  if(anObj.offsetParent){
    objp=anObj;
    while(objp.offsetParent){
      objp=objp.offsetParent;
      objx+=objp.offsetLeft;
      objy+=objp.offsetTop;
    }
  }
  coordArr[0] = objx + anObj.offsetLeft;
  coordArr[1] = objy + anObj.offsetTop;
  coordArr[2]=  coordArr[0] + anObj.offsetWidth;
  coordArr[3]=  coordArr[1] + anObj.offsetHeight;
  return (coordArr);
}

function MessDisplay(MsgName,i,x,y,hideSel) {
  if (!IE) {
    hideSel="no";
  }
  if (i==1) {
    if (document.getElementById(MsgName).style.display=="block") {
      MessDisplay(MsgName,0,0,0,"yes")
    }
  } else {
    mesArr = findCoords(document.getElementById(MsgName));
  }
  var visValue="";
  if (i==1) {
    dispVal = 'block';
    visValue = 'hidden';
  } else {
    dispVal = 'none';
    visValue = 'visible';
  }
  if (x=="") {
    x=tempX;
  } else {
    x=x.toString()
    if (x.substr(0,1) == "x") {
      sign = x.substr(1,1)
      addVal = parseInt(sign+(x.split(sign)[1]));
      x=tempX+addVal;
    }
  }
  document.getElementById(MsgName).style.left = x;
  if (y=="") {
    y=tempY;
  } else {
    y=y.toString()
    if (y.substr(0,1) == "y") {
      sign = y.substr(1,1)
      addVal = parseInt(sign+(y.split(sign)[1]));
      y=tempY+addVal;
    }
  }
  if (insideDiv(document.getElementById(MsgName),"PageDiv")) {
    y = y - 95;
  }
  document.getElementById(MsgName).style.top = y;
  document.getElementById(MsgName).style.display = dispVal;
  if (i==1) {
    mesArr = findCoords(document.getElementById(MsgName));
  }

  if (hideSel=='yes') {
    selectName = document.getElementsByTagName("SELECT");
    for (sNam=0; sNam<selectName.length; sNam++) {
      if ((insideDiv(selectName[sNam],MsgName) == false)&&(selectName[sNam] != "length")&&(selectName[sNam] != "level")){
        selArr = findCoords(selectName[sNam]);
        if ( (((selArr[0] >= mesArr[0]) && (selArr[0] <= mesArr[2])) && ((selArr[1] >= mesArr[1])&&(selArr[1] <= mesArr[3]))) ||
             (((selArr[0] >= mesArr[0]) && (selArr[0] <= mesArr[2])) && ((selArr[3] >= mesArr[1])&&(selArr[3] <= mesArr[3]))) ||
             (((selArr[2] >= mesArr[0]) && (selArr[2] <= mesArr[2])) && ((selArr[1] >= mesArr[1])&&(selArr[1] <= mesArr[3]))) ||
             (((selArr[2] >= mesArr[0]) && (selArr[2] <= mesArr[2])) && ((selArr[3] >= mesArr[1])&&(selArr[3] <= mesArr[3]))) ||
             (((mesArr[0] >= selArr[0]) && (mesArr[0] <= selArr[2])) && ((mesArr[1] >= selArr[1])&&(mesArr[1] <= selArr[3]))) ||
             (((mesArr[0] >= selArr[0]) && (mesArr[0] <= selArr[2])) && ((mesArr[3] >= selArr[1])&&(mesArr[3] <= selArr[3]))) ||
             (((mesArr[2] >= selArr[0]) && (mesArr[2] <= selArr[2])) && ((mesArr[1] >= selArr[1])&&(mesArr[1] <= selArr[3]))) ||
             (((mesArr[2] >= selArr[0]) && (mesArr[2] <= selArr[2])) && ((mesArr[3] >= selArr[1])&&(mesArr[3] <= selArr[3]))) ) {
          selectName[sNam].style.visibility = visValue;
        }
      }
    }
  }
}
