diff options
| author | LV-426 <lv-426@taproot.org.il> | 2014-12-10 15:31:43 +0200 |
|---|---|---|
| committer | Alon Levy <alon@pobox.com> | 2014-12-16 10:59:14 +0200 |
| commit | 2c770b193e6a4b840b7bf6e264dd01eee20e814a (patch) | |
| tree | 118a06077e726fcfd2ad1d16732014149f8e5e52 /src | |
| parent | 9fdc4656b4f9be1b1d360e897ebeae83175d9445 (diff) | |
load_from_backend(): post ajax link pointer processing
Diffstat (limited to 'src')
| -rw-r--r-- | src/model/graph.js | 19 |
1 files changed, 17 insertions, 2 deletions
diff --git a/src/model/graph.js b/src/model/graph.js index f27a39ee..901d02a3 100644 --- a/src/model/graph.js +++ b/src/model/graph.js @@ -633,13 +633,28 @@ function Graph() { data['node_set'].map(function(n_spec){ var n_spec = model_util.adapt_format_read_node(n_spec); + + util.assert(undefined != n_spec.id, 'load_from_backend: n_spec missing id'); + var n = __addNode(n_spec, false, false); n_set.push(n); }); data['link_set'].map(function(l_spec){ - var l_spec = model_util.adapt_format_read_link(l_spec); - var l = addLink(l_spec.__src_id, l_spec.__dst_id, l_spec.name, "perm"); + var l_ptr = model_util.adapt_format_read_link_ptr(l_spec); + + util.assert(undefined != l_ptr.id, 'load_from_backend: l_ptr missing id'); + + // resolve link ptr + var src = find_node__by_id(l_ptr.__src_id), + dst = find_node__by_id(l_ptr.__dst_id); + + // cleanup & reuse as link_spec + delete l_ptr.__src_id; + delete l_ptr.__dst_id; + var link_spec = l_ptr; + var link = model_core.create_link_from_spec(src, dst, link_spec); + var l = addLink(link, false); l_set.push(l); }); |
