﻿var Expanded = null;
var Expanding = null;
var Step = 0;
var Steps = 15;

function Toggle(id)
{
  if (Expanding)
    return;
  
  var div = document.getElementById(id);
  
  div.style.visibility = "hidden";
  
  if (Expanded)
    Expanded.style.visibility = "hidden";
  
  if (div === Expanded)
    Expanding = null;
  else
    Expanding = div;
  
  Step = 0;
  Transition();
}
function Transition()
{
  if (Expanding)
    Expanding.style.height = Expanding.childNodes[0].offsetHeight * (Step / Steps) + "px";
  
  if (Expanded)
    Expanded.style.height = Expanded.childNodes[0].offsetHeight * ((Steps - Step) / Steps) + "px";
  
  if (Step < Steps)
  {
    Step++;
    setTimeout("Transition();", 30);
  }
  else
  {
    Expanded = Expanding;
    Expanding = null;
    
    if (Expanded)
      Expanded.style.visibility = "visible";
  }
}
