equal
deleted
inserted
replaced
|
1 Rkns.Serializers.BasicJson = Rkns.Utils.inherit(Rkns.Serializers._Base); |
|
2 |
|
3 Rkns.Serializers.BasicJson.prototype._init = function() { |
|
4 this.load(this._project._opts.url); |
|
5 } |
|
6 |
|
7 Rkns.Serializers.BasicJson.prototype.load = function(_url) { |
|
8 var _this = this; |
|
9 Rkns.$.getJSON(_url, function(_data) { |
|
10 _this.deserialize(_data); |
|
11 _this.handleCallbacks(); |
|
12 }); |
|
13 } |
|
14 |
|
15 Rkns.Serializers.BasicJson.prototype.deserialize = function(_serializedData) { |
|
16 if (typeof _serializedData === "string") { |
|
17 _serializedData = JSON.parse(_serializedData); |
|
18 } |
|
19 var _proj = this._project; |
|
20 _proj.title = _serializedData.title || "(untitled project)"; |
|
21 if (typeof _serializedData.users === "object" && _serializedData.users) { |
|
22 _proj.users.addElements( |
|
23 Rkns._(_serializedData.users).map(function(_userData) { |
|
24 return new Rkns.Model.User(_proj, _userData); |
|
25 }) |
|
26 ); |
|
27 } |
|
28 if (typeof _serializedData.nodes === "object" && _serializedData.nodes) { |
|
29 _proj.nodes.addElements( |
|
30 Rkns._(_serializedData.nodes).map(function(_nodeData) { |
|
31 return new Rkns.Model.Node(_proj, _nodeData); |
|
32 }) |
|
33 ); |
|
34 } |
|
35 if (typeof _serializedData.edges === "object" && _serializedData.edges) { |
|
36 _proj.edges.addElements( |
|
37 Rkns._(_serializedData.edges).map(function(_edgeData) { |
|
38 return new Rkns.Model.Edge(_proj, _edgeData); |
|
39 }) |
|
40 ); |
|
41 } |
|
42 } |