/*

B-Lex 2011

Tested with:
    - Firefox 4 RC2
    - Opera 11.01
    - Safari 4

*/

function convertAllButtons()
{
  var buttons = $$('.cbutton');
  for (var bnr = 0; bnr < buttons.length; bnr++)
    convertButton(buttons[bnr]);
}

function convertButton(buttonnode)
{
  // prevent converting the button twice
  if (buttonnode.hasClass("cbutton_replaced"))
    return;

  var bcontent = document.createDocumentFragment();

  var btnleft = document.createElement("div");
  btnleft.className = "cbutton_left";
  bcontent.appendChild(btnleft);

  if (buttonnode.hasClass("hasarrowleft"))
  {
    var arrowleft = document.createElement("div");
    arrowleft.className = "arrowleft";
    bcontent.appendChild(arrowleft);
  }

  var btnmid = document.createElement("div");
  btnmid.className = "cbutton_mid";

  // move all content from the original button to the middle part of the button
  while (buttonnode.childNodes.length > 0)
      btnmid.appendChild(buttonnode.firstChild);

  bcontent.appendChild(btnmid);

  if (buttonnode.hasClass("hasarrowright"))
  {
    var arrowright = document.createElement("div");
    arrowright.className = "arrowright";
    bcontent.appendChild(arrowright);
  }

  var btnright = document.createElement("div");
  btnright.className = "cbutton_right";
  bcontent.appendChild(btnright);

  buttonnode.appendChild(bcontent);
  buttonnode.addClass("cbutton_replaced");
}
