/**
 * fade in and out ...
 *
 * Created on 11.09.2008
 * Project: asurvey
 *
 * '$Id: fading.js,v 1.2 2008/09/12 07:46:59 abaethe Exp $'
 *
 */


var global_opacity;
var global_opacity_element;
var global_opacity_limit;

function fade_out(opacity, element)
{
  if( !opacity )
    opacity = global_opacity;
  if( !element )
    element = global_opacity_element;

  var anidiv = document.getElementById(element);

  if( opacity >= 0 )
  {
    if( (navigator.appName.indexOf("Microsoft") !=-1) && (parseInt(navigator.appVersion) >= 4) )
    {
      anidiv.style.filter = 'alpha(opacity='+opacity+')';
      //anidiv.filters.alpha.opacity = opacity;
    }
    else 
    {
      anidiv.style.MozOpacity = opacity/100;
      // anidiv.style.opacity = opacity/100;  // Opera style
    }

    opacity -= 5;

    if( opacity < 5 )
      anidiv.style.visibility = 'hidden';

    global_opacity = opacity;
    global_opacity_element = element;
    setTimeout("fade_out()",30);
  }
  else 
  {
    return;
  } 
}



function fade_in(opacity, element, limit)
{
  if( typeof opacity == 'undefined' )
    opacity = global_opacity;
  if( typeof element == 'undefined' )
    element = global_opacity_element;
  if( typeof limit == 'undefined' )
  {
    if( global_opacity_limit )
      limit = global_opacity_limit;
    else
      limit = 100;
  }

  var anidiv = document.getElementById(element);

  if( (anidiv.style.visibility == 'hidden') || (anidiv.style.visibility == '') )
    anidiv.style.visibility = 'visible';  // just 2 make sure

  if( opacity <= limit )
  {
    if( (navigator.appName.indexOf("Microsoft") !=-1) && (parseInt(navigator.appVersion) >= 4) )
    {
      anidiv.style.filter = 'alpha(opacity='+opacity+')';
      //anidiv.filters.alpha.opacity = opacity;
    }
    else 
    {
      anidiv.style.MozOpacity = opacity/100;
      // anidiv.style.opacity = opacity/100;  // Opera style
    }

    opacity += 5;
  
    global_opacity = opacity;
    global_opacity_element = element;
    global_opacity_limit = limit;
    setTimeout("fade_in()",30);
  }
  else 
  {
    return;
  } 
}

