/************************************************************************/
/* Nelsou.com                                                           */
/* ===========================                                          */
/*                                                                      */
/* Copyright (c) 2007 by Nelson (nelsou.com@gmail.com)                  */
/*                                                                      */
/* =========================                                            */
/* $Id: javascripts/nels_effect.js,v 1.0 Nelson Exp $                   */
/* File Last Updated:                                                   */
/* 17:02 19/09/2007                                                     */
/************************************************************************/

function Morphing(obj, tab, timer)
{
  if (!tab.duration)
    tab.duration = 24;
  if (timer == 0)
    for (param in tab)
      if (param != "duration")
      {
        if (!obj.style[param])
          obj.style[param] = "0px";
        tab[param] = (tab[param] - parseInt(obj.style[param])) / tab.duration;
      }

  for (param in tab)
    if (param != "duration")
      obj.style[param] = parseInt(obj.style[param]) + tab[param] + 'px';
  timer++;
  if (timer < tab.duration)
    setTimeout(function() { Morphing(obj, tab, timer) }, 0.04)
}

function Fade(obj, tab, timer)
{
  if (!tab.opacity)
    tab.opacity = 0;
  if (!tab.duration)
    tab.duration = 6;

  if (!obj.style.opacity)
    alert('No opacity style on '+obj.id)
  else
  {
    if(timer == 0)
      tab.opacity = (tab.opacity - parseFloat(obj.style.opacity)) / tab.duration;
    obj.style.opacity = parseFloat(obj.style.opacity) + tab.opacity;
    timer++;
    sex = tab;
    if (timer < tab.duration)
      setTimeout(function() { Fade(obj, tab, timer) }, 0.04)
    else if (tab.end)
      obj.style.display = tab.end;
  }
}
