//  ---------------------------------------------------------------------------
//  smotth appearance and fading away

var fadeInc = 0.025;
var fadeTime = '25';

//  ---------------------------------------------------------------------------
function setFadeParams (element, time, inc) {
  if (!element) return null;
  element = isString (element) ? document.getElementById (element) : element;
  element.fadeTime = time; 
  element.fadeInc = inc; 
  return element;
}

//  ---------------------------------------------------------------------------
function startAppear (element) {
  clearTimeout(element.fadeId);
  var func = function () {appear(element)};
  element.appearId = setInterval(func, element.fadeTime ? element.fadeTime : fadeTime); 
}

//  ---------------------------------------------------------------------------
  function appear (element) {
    setOpacity(element, getOpacity(element)+(element.fadeInc ? element.fadeInc : fadeInc));
    if (getOpacity(element) >= 1) clearTimeout(element.appearId);
 }

//  ---------------------------------------------------------------------------
function startFade (element) {
  clearTimeout(element.appearId);
  var func = function () {fade(element)};
  element.fadeId = setInterval(func, element.fadeTime ? element.fadeTime : fadeTime); 
}

//  ---------------------------------------------------------------------------
   function fade (element) {
    setOpacity(element, getOpacity(element)-(element.fadeInc ? element.fadeInc : fadeInc));
    if (getOpacity(element) <= 0) clearTimeout(element.fadeId);
  }

//  ---------------------------------------------------------------------------
