8 var _load = function() { |
8 var _load = function() { |
9 Rkns.$.getJSON(_opts.url, function(_data) { |
9 Rkns.$.getJSON(_opts.url, function(_data) { |
10 _proj.set(_data, {validate: true}); |
10 _proj.set(_data, {validate: true}); |
11 }); |
11 }); |
12 } |
12 } |
13 if (!_renkan.read_only) { |
13 var _save = function() { |
14 var _save = function() { |
14 var _data = _proj.toJSON(); |
15 var _data = _proj.toJSON(); |
15 if (!_renkan.read_only) { |
16 Rkns.$.ajax({ |
16 Rkns.$.ajax({ |
17 type: _opts.http_method, |
17 type: _opts.http_method, |
18 url: _opts.url, |
18 url: _opts.url, |
19 contentType: "application/json", |
19 contentType: "application/json", |
20 data: JSON.stringify(_data), |
20 data: JSON.stringify(_data), |
21 success: function(data, textStatus, jqXHR) { |
21 success: function(data, textStatus, jqXHR) { |
22 } |
22 } |
23 }); |
23 }); |
24 |
|
25 } |
24 } |
26 var _thrSave = Rkns._.throttle( |
25 |
27 function() { |
26 } |
28 setTimeout(_save, 100) |
27 var _thrSave = Rkns._.throttle( |
29 }, 1000); |
28 function() { |
30 _proj.on("add:nodes add:edges add:users", function(_model) { |
29 setTimeout(_save, 100) |
31 _model.on("change remove", function(_model) { |
30 }, 1000); |
32 _thrSave(); |
31 _proj.on("add:nodes add:edges add:users", function(_model) { |
33 }); |
32 _model.on("change remove", function(_model) { |
34 _thrSave(); |
33 _thrSave(); |
35 }); |
34 }); |
36 _proj.on("change", function() { |
35 _thrSave(); |
37 _thrSave(); |
36 }); |
38 }); |
37 _proj.on("change", function() { |
39 } |
38 _thrSave(); |
|
39 }); |
|
40 |
40 _load(); |
41 _load(); |
41 } |
42 } |