/* Saves the Full JSON at each modification */
Rkns.jsonIO = function(_renkan, _opts) {
var _proj = _renkan.project;
if (typeof _opts.http_method == "undefined") {
_opts.http_method = 'PUT';
}
var _load = function() {
Rkns.$.getJSON(_opts.url, function(_data) {
console.log("Setting data");
_proj.set(_data);
});
}
var _save = function() {
var _data = _proj.toJSON();
Rkns.$.ajax({
type: _opts.http_method,
url: _opts.url,
contentType: "application/json",
data: JSON.stringify(_data),
success: function(data, textStatus, jqXHR) {
}
});
}
var _thrSave = Rkns._.throttle(_save, 2000);
_load();
_proj.on("add:nodes add:edges add:users", function(_model) {
_model.on("change remove", function(_model) {
_thrSave();
});
});
}