<!DOCTYPE html>
<html>

<head>
  <script data-require="jquery@2.0.3" data-semver="2.0.3" src="http://code.jquery.com/jquery-2.0.3.min.js"></script>
  <script data-require="underscore.js@1.6.0" data-semver="1.6.0" src="//cdnjs.cloudflare.com/ajax/libs/underscore.js/1.6.0/underscore-min.js"></script>
  <script data-require="backbone.js@1.1.2" data-semver="1.1.2" src="http://backbonejs.org/backbone-min.js"></script>
  <link href="style.css" rel="stylesheet" />
  <script src="console_log.js"></script>
  <script src="script.js"></script>
</head>

<body>
  <ul id="console_log"></ul>
</body>

</html>
$(document).ready(function() {
  Backbone.sync = function(method, model, options) {
    function success(result) {
      // Handle successful results from MyAPI 
      if (options.success) {
        options.success(result);
      }
    }

    function error(result) {
      // Handle error results from MyAPI 
      if (options.error) {
        options.error(result);

      }
    }

    options || (options = {});
    switch (method) {
      case 'create':
        console.log("here be dragons")
        return MyAPI.create(model, success, error);
      case 'update':
        return MyAPI.update(model, success, error);
      case 'patch':
        return MyAPI.patch(model, success, error);
      case 'delete':
        return MyAPI.destroy(model, success, error);
      case 'read':
        if (model.cid) {
          return MyAPI.find(model, success, error);
        } else {
          return MyAPI.findAll(model, success, error);
        }
    }
  };

  var book = new Backbone.Model({
    title: 'Javascript, the good parts',
    author: 'Douglas Crockford',
    published: 2008
  });
  
  book.save()
})
#console_log {
  background: lightgrey;
  border: 2px solid;
  padding: 5px;
}
console.log = function(_super, _bubble) {
  return function() {
    var args = Array.prototype.slice.apply(arguments);
    $("#console_log").append("<li>" + args + "</li>");
    if(_bubble) _super.apply(this, args);
  };
}(console.log, true);