jQuery.fn.tabify = function(options){
  if (!options) options = {};
  return this.find('ul.tabs li a').click(function(e){
    e.preventDefault();
    var $href = jQuery(this);
    var $li = $href.closest('li');
    $li.addClass('active').siblings().removeClass('active');
    var $tab_content = $li.closest('div.tabs').find('div.tab_content:first');
    var active_class_name = $href.attr('class');
    var $active = $tab_content.find('div.'+active_class_name+':first');
    $tab_content.children().hide();
    if ($active.length<1) {
      $active = $tab_content.append('<div class="'+active_class_name+'">loading...'+active_class_name+'</div>');
      if (options[active_class_name+'_url']) $active.load(options[active_class_name+'_url']);
    }
    $active.show();
  });
};

