var mouseX, mouseY;
var visiblediv=0;

function getMousePos(e){
	if (!e)
		var e = window.event||window.Event;
	
	if('undefined'!=typeof e.pageX){
		mouseX = e.pageX;
		mouseY = e.pageY;
	} else {
		mouseX = e.clientX + document.body.scrollLeft;
		mouseY = e.clientY + document.body.scrollTop;
	}
}
if(window.Event && document.captureEvents)
 	document.captureEvents(Event.MOUSEMOVE);
document.onmousemove = getMousePos;

function showObject(eventObj, objName)
{

//pozycja myszki
// Detect if the browser is IE or not.
// If it is not IE, we assume that the browser is NS.
   var IE = document.all?true:false


// Temporary variables to hold mouse x-y pos.s
   var tempX = 0;
   var tempY = 0;
   
// If NS -- that is, !IE -- then set up for mouse capture
   if (!IE) document.captureEvents(Event.MOUSEMOVE)
// Main function to retrieve mouse x-y pos.s
// grab the x-y pos.s if browser is IE
  if (IE)
  {
    tempX = event.clientX + document.body.scrollLeft;
    tempY = event.clientY + document.body.scrollTop;
  }
  else
  {  // grab the x-y pos.s if browser is NS

    tempX = mouseX;
    tempY = mouseY;

  }
  // catch possible negative values in NS4
  if (tempX < 0){tempX = 0};
  if (tempY < 0){tempY = 0};

   var styleObject = getStyleObject(objName);
   styleObject.left=tempX+15;
   styleObject.top=tempY-15;

   eventObj.cancelBubble = true;
   if(changeObjectVisibility(objName, 'visible')) return true;
   else return false;
}
function getElementPosition(elemID) {
    var offsetTrail = document.getElementById(elemID);
    var offsetLeft = 0;
    var offsetTop = 0;
    while (offsetTrail) {
        offsetLeft += offsetTrail.offsetLeft;
        offsetTop += offsetTrail.offsetTop;
        offsetTrail = offsetTrail.offsetParent;
    }
    if (navigator.userAgent.indexOf("Mac") != -1 && 
        typeof document.body.leftMargin != "undefined") {
        offsetLeft += document.body.leftMargin;
        offsetTop += document.body.topMargin;
    }
    return {left:offsetLeft, top:offsetTop};
}

function getElementPosition2(elemID) {
    var offsetTrail = document.getElementById(elemID);
    var offsetLeft = 0;
    var offsetTop = 0;
    while (offsetTrail) {
        offsetLeft += offsetTrail.offsetLeft;
        offsetTop += offsetTrail.offsetTop;
        offsetTrail = offsetTrail.offsetParent;
    }
    if (navigator.userAgent.indexOf("Mac") != -1 && 
        typeof document.body.leftMargin != "undefined") {

    }
    return {left:offsetLeft, top:offsetTop};
}

function showObjectHere(eventObj, objName,objParentZ)
{
//pozycja myszki
// Detect if the browser is IE or not.
// If it is not IE, we assume that the browser is NS.
   var IE = document.all?true:false
// Temporary variables to hold mouse x-y pos.s
   var tempX = 0;
   var tempY = 0;
   var tempXW = 0;
   var tempYH = 0;

   var styleObject  = getStyleObject(objName);



   if (styleObject.visibility=='visible') 
   {

     return true;
   }

 //  alert (styleObject2.visibility);
// If NS -- that is, !IE -- then set up for mouse capture
   if (!IE) document.captureEvents(Event.MOUSEMOVE)


// Main function to retrieve mouse x-y pos.s
// grab the x-y pos.s if browser is IE
  if (IE)
  {
    tempX = event.clientX + document.body.scrollLeft;
    tempY = event.clientY + document.body.scrollTop;
    myelement=document.getElementsByName(objName);
    divheight=myelement.item(0).offsetHeight;
    divwidth=myelement.item(0).offsetWidth;

    var nav = document.getElementById(objParentZ);


    nav.onmouseleave  = function ()
    {
      eventObj.cancelBubble = false;
      changeObjectVisibility(objName, 'hidden');
      return true;
    };

    position=getElementPosition (objParentZ);
    tempX=position.left;
    tempY=position.top;
    //alert (tempY + " " +document.body.scrollTop);
    tempXW=myelement.item(0).offsetWidth;
    tempYH=myelement.item(0).offsetHeight;


  }
  else
  {  // grab the x-y pos.s if browser is NS
    myelement=document.getElementById(objName);
    divheight=myelement.offsetHeight;
    divwidth=myelement.offsetHeight;

    position=getElementPosition (objParentZ);
    tempX=position.left;
    tempY=position.top;
    var mOver=true;
    var m2Over=true;

    var nav = document.getElementById(objParentZ);
    var nav2= document.getElementById(objName);




    nav.onmouseout  = function ()
    {
  
      eventObj.cancelBubble = true;
      changeObjectVisibility(objName, 'hidden');
      return true;
    };
  }

  // catch possible negative values in NS4


   if (tempX < 0){tempX = 0};
   if (tempY < 0){tempY = 0};
//   alert (tempX + ":" + (tempY));
//   if (tempX-divwidth > screen.width ){tempX =screen.width - divwidth - 50 };
//   if (tempY > screen.height ){tempY = screen.height-divheight-tempYH - 50};

    //alert (tempX+" x "+tempY);
   xxx = document.getElementById (objName);


   xxx.style.left=tempX+"px";
   xxx.style.top=(tempY-divheight)+"px" ;


   eventObj.cancelBubble = true;
   if(changeObjectVisibility(objName, 'visible')) return true;
   else return false;
}
function showObjectHere2(eventObj, objName,objParentZ,objParentX,dupa)
{
//pozycja myszki
// Detect if the browser is IE or not.
// If it is not IE, we assume that the browser is NS.
   var IE = document.all?true:false
// Temporary variables to hold mouse x-y pos.s
   var tempX = 0;
   var tempY = 0;
   var PtempX = 0;
   var PtempY = 0;

   var tempXW = 0;
   var tempYH = 0;

   var styleObject  = getStyleObject(objName);
   


   if (styleObject.visibility=='visible') return true;

 //  alert (styleObject2.visibility);
// If NS -- that is, !IE -- then set up for mouse capture
   if (!IE) document.captureEvents(Event.MOUSEMOVE)


// Main function to retrieve mouse x-y pos.s
// grab the x-y pos.s if browser is IE
  if (IE)
  {
    tempX = event.clientX + document.body.scrollLeft;
    tempY = event.clientY + document.body.scrollTop;
    myelement=document.getElementsByName(objName);
    myelement.position='relative';
    myelement.zIndex=-10;
//    alert (myelement.zIndex);
    divheight=myelement.item(0).offsetHeight-3;
    divwidth=myelement.item(0).offsetWidth;
    myelement=document.getElementById(objParentZ);
    tempX=myelement.offsetLeft-divwidth;
    tempY=myelement.offsetTop;
    var nav = document.getElementById(objParentZ);
    nav.onmouseleave  = function ()
    {
      eventObj.cancelBubble = false;
      changeObjectVisibility(objName, 'hidden');
      return true;
    };


    //alert (tempY + " " +document.body.scrollTop);
   // tempXW=myelement.item(0).offsetWidth;
   // tempYH=myelement.item(0).offsetHeight;


  }
  else
  {  // grab the x-y pos.s if browser is NS
    myelement=document.getElementById(objName);
    divheight=myelement.offsetHeight;
    divwidth=myelement.offsetWidth;
    myelement=document.getElementById(objParentZ);
    tempX=myelement.offsetLeft-divwidth;
    tempY=myelement.offsetTop;
   // alert (tempX + ":" + (tempY));

    var nav = document.getElementById(objParentZ);
    nav.onmouseout  = function ()
    {

      eventObj.cancelBubble = true;
      changeObjectVisibility(objName, 'hidden');
      return true;
    };
  }

  // catch possible negative values in NS4



  if (tempX < 0){tempX = 0};
   if (tempY < 0){tempY = 0};

//   if (tempX-divwidth > screen.width ){tempX =screen.width - divwidth - 50 };
//   if (tempY > screen.height ){tempY = screen.height-divheight-tempYH - 50};

   styleObject.left=tempX;
   styleObject.top=tempY-divheight-tempY ;

   eventObj.cancelBubble = true;
   if(changeObjectVisibility(objName, 'visible')) return true;
   else return false;
}


function nothing()
{

  return true;
}

function hideObject(eventObj, objName)
{

   eventObj.cancelBubble = true;
   if(changeObjectVisibility(objName, 'hidden')) return true;
   else return false;
}

function hideObjectX()
{
   event.cancelBubble = true;
   if(changeObjectVisibility(this, 'hidden')) return true;
   else return false;
}



function getStyleObject(objectId)
{

   // cross-browser function to get an object's style object given its id
   if(document.getElementById && document.getElementById(objectId))
	// W3C DOM
      return document.getElementById(objectId).style;
   else if (document.all && document.all(objectId))
   // MSIE 4 DOM
      return document.all(objectId).style;
   else if (document.layers && document.layers[objectId])
   // NN 4 DOM.. note: this won't find nested layers
   	return document.layers[objectId];
   else return false;
}

function changeObjectVisibility(objectId, newVisibility)
{
   // get a reference to the cross-browser style object and make sure the object exists
   var styleObject = getStyleObject(objectId);
   if(styleObject)
   {
   	styleObject.visibility = newVisibility;
   	return true;
   }
   else
   {

   	//we couldn't find the object, so we can't change its visibility
      return false;
   }
}

function changeObjectDisplay(objectId, newVisibility)
{
   // get a reference to the cross-browser style object and make sure the object exists
   var styleObject = getStyleObject(objectId);
   if(styleObject)
   {
   	styleObject.display = newVisibility;
   	return true;
   }
   else
   {

   	//we couldn't find the object, so we can't change its visibility
      return false;
   }
}

      function ShowHide(objName){

               if (document.getElementById(objName).style.display=='')
               {
                    document.getElementById(objName).style.display='none';
               }
               else{
                    document.getElementById(objName).style.display = '';

               }


          }

      function Show(objName){

               if (document.getElementById(objName).style.display=='')
               {
                 return;
               }
               else{
                    document.getElementById(objName).style.display = '';

               }


          }

      function Hide(objName){

               if (document.getElementById(objName).style.display=='')
               {
                    document.getElementById(objName).style.display='none';
               }
               else{
                   return;

               }


          }
