function pause(millis) 
{
  var date = new Date();
  var curDate = null;

  do { curDate = new Date(); } 
    while(curDate-date < millis);
}

function getEl (id) {
	return document.getElementById(id);
}

function getAbsX(elt) 
{ 
	return (elt.x) ? elt.x : getAbsPos(elt,"Left"); 
}

function getAbsY(elt) 
{ 
	return (elt.y) ? elt.y : getAbsPos(elt,"Top"); 
}

function getAbsPos(elt,which) 
{
    iPos = 0;
    while (elt != null) 
    {
        iPos += elt["offset" + which];
        elt = elt.offsetParent;
    }
    return iPos;
}

function showInfo(elm,text){
  var infobox = getEl('infobox');
  if(text!=''){
    infobox.innerHTML=text;
    infobox.style.display='block';
    if((getAbsX(elm) - infobox.offsetWidth - 10) < 0 )
      infobox.style.left=getAbsX(elm) + 10 + "px";
    else
      infobox.style.left=getAbsX(elm) - infobox.offsetWidth - 10 + "px";
    var max_bottom = document.body.clientHeight+document.body.scrollTop;
    var posy = getAbsY(elm) + 13;
    if(max_bottom<(posy+infobox.offsetHeight-13))
      infobox.style.top=getAbsY(elm) - infobox.offsetHeight - 13 + "px";
    else
      infobox.style.top=posy + "px";
  }
}

function hideInfo(){
  var infobox = getEl('infobox');
  infobox.style.display='none';
}

function showGamesbox(elm,ctext,text){
  var dlg = getEl('games_box');
  var txt = getEl('games_box_text');
  var cap = getEl('games_box_caption');
  txt.innerHTML=text;
  cap.innerHTML=ctext;
  dlg.style.display='block';

  if (/MSIE (\d+\.\d+);/.test(navigator.userAgent)){
    dlg.style.left=getAbsX(elm) + 25 + "px";
    dlg.style.top=getAbsY(elm) + "px";
  }else{ 
    dlg.style.left=getAbsX(elm) + 25 + "px";
    dlg.style.top=getAbsY(elm)  + "px";
  }
}

function showDialog(dlg){
  var dialog = getEl(dlg);
  dialog.style.display='block';

  dialog.style.left=document.body.offsetWidth/2 - dialog.offsetWidth/2 + 'px';
  dialog.style.top=document.body.offsetHeight/2 - dialog.offsetHeight/2 + "px"; 
}

function closeDialog(ctrl){
  var dlg = getEl(ctrl);
  dlg.style.display='none';
}

function dialog(name, url, w, h, l, t, x){
	args="width="+w+",height="+h+",left="+l+",top="+t+",status=no,resizable=yes,scrollbars=no";
	remote=window.open(url, name, args);
	if(remote != null && remote.opener == null) remote.opener = self;
	if(x == 1) return remote;
}

function CharsCount(id,max){
  document.getElementById("c"+id).value=max-document.getElementById(id).value.length;
  if(document.getElementById("c"+id).value<=0){
    document.getElementById(id).value=document.getElementById(id).value.substr(0,max);
    document.getElementById("c"+id).value=0;
  }
}

