fade_ids=Array();
var IE = document.all?true:false;
if(!IE) document.captureEvents(Event.KEYPRESS);
if(!IE) document.captureEvents(Event.MOUSEMOVE);

function setOpacity(elem_id,val){
  var elem=document.getElementById(elem_id);
  elem.style.opacity=val/100;
  elem.style.filter='alpha(opacity='+val+')';
}
function getOpacity(elem_id){
  var elem=document.getElementById(elem_id);
  return elem.style.filter*100;
}

function opacity_fade(elem_id,from_val,till_val,opac_step){
  if(!opac_step) var opac_step=2;
  else opac_step=Math.abs(opac_step);
  if(from_val>till_val) opac_step*=-1;
  setOpacity(elem_id,from_val);
  if((from_val<till_val && from_val+opac_step<till_val) || (from_val>till_val && from_val+opac_step>till_val)){
    setTimeout('opacity_fade(\''+elem_id+'\','+(from_val+opac_step)+','+till_val+','+opac_step+')',30);
    fade_ids[fade_ids.length]=elem_id;
  }else{
    var tarr=Array();
    for(i=0; i<fade_ids.length; i++) if(fade_ids[i]!=elem_id) tarr[tarr.length]=fade_ids[i];
    fade_ids=tarr;
    setOpacity(elem_id,till_val);
    if(till_val==0) show_or_hide(false,elem_id);
  }
}


function show_or_hide(flag,elem_id,fade,timeout){
  var elem=document.getElementById(elem_id);
  var elem_pm=document.getElementById(elem_id+'_1');
  var elem_th=document.getElementById('th_'+elem_id);
  if(!fade) fade=false;
  else fade=(typeof(fade)=='number' ? fade : 10);
  if(timeout) setTimeout('show_or_hide('+flag+',\''+elem_id+'\','+fade+')',timeout);
  else if(elem){
    if(flag==-1) flag=(elem.style.visibility=='hidden');
    if(flag){      elem_th.className='profmenu2_';      elem_pm.innerHTML='-';
      elem.style.visibility='visible';
      elem.style.display='';
      if(fade) opacity_fade(elem_id,0,100,fade);
    }else{
      if(fade) opacity_fade(elem_id,100,0,fade);
      else{        elem_th.className='profmenu2';        elem_pm.innerHTML='+';
        elem.style.visibility='hidden';
        elem.style.display='none';
      }
    }
  }
}