loadHook = function() {
  /*
  $('.edit').button({
    'icons': {
      'primary': 'ui-icon-disk'
    }
  });
  $('button:submit').button({
    'icons': {
      'primary': 'ui-icon-triangle-1-e'
    }
  });
  */
}

function initTabs(sel) {
  $(sel).tabs({
    'load': function(event, ui) {
      checkForms();
    }
  });
}
function addTab(el, title, url, select) {
  var nb = $(el).parents('.ui-tabs');
  nb.tabs('add', url, title);
  if (select) {
    nb.tabs('select', nb.tabs('length') - 1);
  }
  return false;
}
function link(el) {
  if ($(el).hasClass('ui-tabs')) {
    var nb = $(el);
  } else {
    var nb = $(el).parents('.ui-tabs');
  }
  nb.tabs('url', nb.tabs('option', 'selected'), el.href);
  nb.tabs('load', nb.tabs('option', 'selected'));
  return false;
}
function reloadTab(el) {
  if ($(el).hasClass('ui-tabs')) {
    var nb = $(el);
  } else {
    var nb = $(el).parents('.ui-tabs');
  }
  nb.tabs('load', nb.tabs('option', 'selected'));
  return false;
}
function closeTab(el) {
  if ($(el).hasClass('ui-tabs')) {
    var nb = $(el);
  } else {
    var nb = $(el).parents('.ui-tabs');
  }
  nb.tabs('remove', nb.tabs('option', 'selected'));
  nb.tabs('select', 0);
  return false;
}
function relUrl(url) {
  return url;
}
function checkForms() {
  $('.rpc').jsonRpc();
  loadHook();
}
function rpc(url, data) {
  if (!data) {
    data = null;
  }
  $.ajax(
    {
      'url': relUrl(url),
      'type': 'POST',
      'data': data,
      'success': function(json) {
        $(this).jsonRpcExec(json)
      }
    }
  );    
}

$(document).ready(
  checkForms
);

$(document).ajaxComplete(
  function() {
    checkForms();
  }
);


