function imHi(imName){
 if (document.images) {
 document[imName].src = "images/" + imName + "H.gif";
 }
}
function imLo(imName){
 if (document.images) {
 document[imName].src = "images/" + imName + ".gif";
 }
}

// Tooltip code

var offsetxpoint=-60;
var offsetypoint=20;
var scrollbarWidth;
var ie=!!document.all && !window.opera;
var ns6=document.getElementById && !document.all;
var enabletip=false;
var tipobj;
var objBubble;
var objBubImg;
var oldOnload;
var imgProgress=new Image();
imgProgress.src="images/progressbar.gif";

function bubble_init(){
tipobj=document.getElementById("dhtmltooltip");
objBubble=document.getElementById("bubblebox");
objBubImg=document.getElementById("bubbleimg");
objBubImg.style.margin="170px";
objBubImg.src=imgProgress.src;
objBubImg.onload=bubbleLoaded;
document.onmousemove=positionAll;
scrollbarWidth=getScrollerWidth()+7;
}

addEvent(window, 'load', bubble_init);


function ietruebody(){
return (document.compatMode && document.compatMode!="BackCompat")? document.documentElement : document.body;
}

function positionAll(e){
positiontip(e);
positionBubble(e);
}

/*var objBody = document.getElementsByTagName("body").item(0);
// objOverlay.onclick = function() { func1(); return false; }

var objBubble = document.createElement("div");
objBubble.setAttribute('id','bubblebox');
// objBubble.style.display = 'none';
objBody.appendChild(objBubble);

var objBubImg = document.createElement("img");
objBubImg.style.border=0;
objBubImg.src='prodim/100x100/earrings/E00001/E00001_5247.jpg';
objBubble.appendChild(objBubImg);
*/

var bAddX=30;
var bAddY=30;
var bubbleImLoaded=false;
var enableBubble=false;
var tBubble;

function bubbleLoaded() { 
bubbleImLoaded=true;
//alert(enableBubble && bubbleImLoaded);
//  return false; 
 }
//objBubImg.onload=function() { bubbleLoaded=true; return false; }

function openBubble(url){
 objBubImg.onload=bubbleLoaded;
 objBubImg.src=url;
 enableBubble=true;
 objBubImg.style.margin="0";
 tBubble=setTimeout("timerTicked()",500);
 return false;
}

function timerTicked(){
 if(enableBubble){
  switchSelects('hidden');
  objBubble.style.visibility='visible';
  enableBubble=false;
 }
}

function positionBubble(e){
// if(enableBubble && bubbleImLoaded){
 if(enableBubble){
 var wTop=ie? ietruebody().scrollTop : window.pageYOffset;
 var clientY=ie? event.clientY : e.clientY;
 var wLeft=ie? ietruebody().scrollLeft : window.pageXOffset;
 var clientX=ie? event.clientX : e.clientX;
  
 var curX=(ns6)?e.pageX : event.clientX+ietruebody().scrollLeft;
 var curY=(ns6)?e.pageY : event.clientY+ietruebody().scrollTop;
 var rightedge=ie&&!window.opera? ietruebody().clientWidth-event.clientX-bAddX : 
     window.innerWidth-e.clientX-bAddX-scrollbarWidth;
 var bottomedge=ie&&!window.opera? ietruebody().clientHeight-event.clientY-bAddY :
    window.innerHeight-e.clientY-bAddY-scrollbarWidth;
 var jX;
  if(rightedge<objBubble.offsetWidth)
   jX=wLeft + clientX-objBubble.offsetWidth-bAddX;
  else 
   jX=curX+bAddX;
  if(wLeft>jX)
   jX=wLeft+bAddX;
 objBubble.style.left=jX+"px";
 
 var jY;  
  if(bottomedge<objBubble.offsetHeight)
   jY=wTop+clientY-objBubble.offsetHeight-bAddY;
  else
   jY=curY+bAddY;
  if(wTop>jY)
   jY=wTop+bAddY;
 objBubble.style.top=jY+"px";
 
// if(bottomedge)
// alert(wTop + " ::: " + objBubble.style.top);
// objBubble.style.visibility="visible";
// enableBubble=false;
 }
}


function closeBubble(){
 enableBubble=false;
 bubbleImLoaded=false;
 objBubble.style.visibility='hidden';
 objBubble.style.left='-1000px';
 objBubImg.style.margin='170px';
 objBubImg.src=imgProgress.src; 
 switchSelects('visible');
}


var clickmsgtext;
function setClickMessage(elem, msg){
 elem.onclick=clicktip;
 clickmsgtext=msg;
}

function clicktip(e){
tipobj.innerHTML=clickmsgtext.replace(/\n/g, "<br>");
 var curX=(ns6)?e.pageX : event.clientX+ietruebody().scrollLeft;
 var curY=(ns6)?e.pageY : event.clientY+ietruebody().scrollTop;
 var rightedge=ie&&!window.opera? ietruebody().clientWidth-event.clientX-offsetxpoint : 
     window.innerWidth-e.clientX-offsetxpoint-scrollbarWidth;
 var bottomedge=ie&&!window.opera? ietruebody().clientHeight-event.clientY-offsetypoint :
    window.innerHeight-e.clientY-offsetypoint-scrollbarWidth;
 var leftedge=(offsetxpoint<0)? offsetxpoint*(-1) : -1000;
  if (rightedge<tipobj.offsetWidth)
   tipobj.style.left=ie? ietruebody().scrollLeft+event.clientX-tipobj.offsetWidth+"px" : 
    window.pageXOffset+e.clientX-tipobj.offsetWidth+"px";
  else if (curX<leftedge)
   tipobj.style.left="5px";
  else
   tipobj.style.left=curX+offsetxpoint+"px";
  if (bottomedge<tipobj.offsetHeight)
   tipobj.style.top=ie? ietruebody().scrollTop+event.clientY-tipobj.offsetHeight-offsetypoint+"px" :  window.pageYOffset+e.clientY-tipobj.offsetHeight-offsetypoint+"px";
  else
   tipobj.style.top=curY+offsetypoint+"px";
 tipobj.style.visibility="visible";
}

function openTip(thetext, thecolor, thewidth){
if (ns6||ie){
 if (typeof thewidth!="undefined") tipobj.style.width=thewidth+"px"; else tipobj.style.width="200px";
 if (typeof thecolor!="undefined" && thecolor!="") tipobj.style.backgroundColor=thecolor; else tipobj.style.backgroundColor='#FFFFFF';
 tipobj.innerHTML=thetext.replace(/\n/g, "<br>");
 enabletip=true;
 return false;
 }
}

function positiontip(e){
 if (enabletip){
 var curX=(ns6)?e.pageX : event.clientX+ietruebody().scrollLeft;
 var curY=(ns6)?e.pageY : event.clientY+ietruebody().scrollTop;
 var rightedge=ie&&!window.opera? ietruebody().clientWidth-event.clientX-offsetxpoint : 
      window.innerWidth-e.clientX-offsetxpoint-scrollbarWidth;
 var bottomedge=ie&&!window.opera? ietruebody().clientHeight-event.clientY-offsetypoint :
    window.innerHeight-e.clientY-offsetypoint-scrollbarWidth;
 var leftedge=(offsetxpoint<0)? offsetxpoint*(-1) : -1000;
  if (rightedge<tipobj.offsetWidth)
   tipobj.style.left=ie? ietruebody().scrollLeft+event.clientX-tipobj.offsetWidth+"px" : 
    window.pageXOffset+e.clientX-tipobj.offsetWidth+"px";
  else if (curX<leftedge)
   tipobj.style.left="5px";
  else
   tipobj.style.left=curX+offsetxpoint+"px";
  if (bottomedge<tipobj.offsetHeight)
   tipobj.style.top=ie? ietruebody().scrollTop+event.clientY-tipobj.offsetHeight-offsetypoint+"px" :  window.pageYOffset+e.clientY-tipobj.offsetHeight-offsetypoint+"px";
  else
   tipobj.style.top=curY+offsetypoint+"px";
 tipobj.style.visibility="visible";
 }
}

function closeTip(){
 if (ns6||ie){
 enabletip=false;
 tipobj.style.visibility="hidden";
 tipobj.style.left="-1000px";
 //tipobj.style.backgroundColor='';
 //tipobj.style.width='';
 }
}

function getScrollerWidth() {
    var scr = null;
    var inn = null;
    var wNoScroll = 0;
    var wScroll = 0;

    // Outer scrolling div
    scr = document.createElement('div');
    scr.style.position = 'absolute';
    scr.style.top = '-1000px';
    scr.style.left = '-1000px';
    scr.style.width = '100px';
    scr.style.height = '50px';
    // Start with no scrollbar
    scr.style.overflow = 'hidden';

    // Inner content div
    inn = document.createElement('div');
    inn.style.width = '100%';
    inn.style.height = '200px';

    // Put the inner div in the scrolling div
    scr.appendChild(inn);
    // Append the scrolling div to the doc
    document.body.appendChild(scr);

    // Width of the inner div sans scrollbar
    wNoScroll = inn.offsetWidth;
    // Add the scrollbar
    scr.style.overflow = 'auto';
    // Width of the inner div width scrollbar
    wScroll = inn.offsetWidth;

    // Remove the scrolling div from the doc
    document.body.removeChild(
        document.body.lastChild);

    // Pixel width of the scroller
    return (wNoScroll - wScroll);
}

 
 function addEvent(elem, type, handler){
  if (elem.addEventListener)
   elem.addEventListener(type, handler, false);
  else if (elem.attachEvent)
   elem.attachEvent("on" + type, handler);
 }


 function switchSelects(v){
// alert(ie);
 if(ie)
  for(var f=0; f<document.forms.length; f++)
   for(var e=0; e<document.forms[f].length; e++)
    if (document.forms[f].elements[e].options)
     document.forms[f].elements[e].style.visibility = v; 
 }
 
 
 document.getElementsByClassName = function(cl) {
  var retnode = [];
  var myclass = new RegExp('\\b'+cl+'\\b');
  var elem = this.getElementsByTagName('*');
   for (var i = 0; i < elem.length; i++) {
   var classes = elem[i].className;
    if (myclass.test(classes)) retnode.push(elem[i]);
   }
  return retnode;
 };



addEvent(window, 'load', top_init);
 function top_init(){
   popupDiv({
    pd_prefix: 'tp_',
    shift_x: 0,
    shift_y: 15,
//     shift_y_rel: 'clientHeight',
    on_time: 250,
    hp_class_on: 'tp_lmenuLinkOn',
    hp_class_off: 'tp_lmenuLinkOff'
   }).fn_start();  
  }
