/*
 * Site side flemish eye javascript utils.
 */
dojo.require("dojo.fx");

//------------------------------------------------------------------------------
function eventDetailsToggle(link, detailsDivId) {
  var detailsDiv = dojo.byId(detailsDivId);

  if (dojo.hasClass(detailsDiv, "transition")) {
    // In this case we're transitioning, forget the click.
    return false;
  }

  dojo.addClass(detailsDiv, "transition");

  //----------------------------------------------------------------------------
  // The div is open, we'll close it.
  if (dojo.hasClass(detailsDiv, "open")) {
    dojo.removeClass(detailsDiv, "open");
    var wipeOut = dojo.fx.wipeOut({ node: detailsDiv});
    dojo.connect(wipeOut, 'onEnd', dojo.hitch(detailsDiv, function() {
      dojo.removeClass(this, 'open');
      dojo.removeClass(this, 'transition');
      dojo.addClass(this, 'closed');
    }));
    wipeOut.play();
  }

  //----------------------------------------------------------------------------
  // The div is closed, we'll open it.
  if (dojo.hasClass(detailsDiv, "closed")) {
    dojo.removeClass(detailsDiv, "closed");
    var wipeIn = dojo.fx.wipeIn({node: detailsDiv});
    dojo.connect(wipeIn, 'onEnd', dojo.hitch(detailsDiv, function() {
      dojo.removeClass(this, 'closed');
      dojo.removeClass(this, 'transition');
      dojo.addClass(this, 'open');
    }));
    wipeIn.play();
  }
  return false;
}
