From 54a334b5ae6f8e83d71f1785bb359284d689ca62 Mon Sep 17 00:00:00 2001 From: LV-426 Date: Wed, 5 Nov 2014 00:18:30 +0200 Subject: load_from_backend(): - support backend graph cloning upon initialization - call upon Graph object creation not yet enabled by default --- scripts/model/graph.js | 42 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) (limited to 'scripts/model') diff --git a/scripts/model/graph.js b/scripts/model/graph.js index 4bfcc9d5..e3db1a1a 100644 --- a/scripts/model/graph.js +++ b/scripts/model/graph.js @@ -478,6 +478,48 @@ function Graph(el) { } this.empty = empty; + /** + /** + * perform initial DB load from backend + */ + // @ajax-trans + function load_from_backend() { + + function on_success(data){ + var n_set = []; + var l_set = []; + var len; + + len = data['node_set'].length; + for (var i = 0; i < len; i++) { + var n_raw = data['node_set'][i]; + var n = model_util.adapt_format_read_node(n_raw); + n_set.push(n); + } + + len = data['link_set'].length; + for (var i = 0; i < len; i++) { + var l_raw = data['link_set'][i]; + var l = model_util.adapt_format_read_link(l_raw); + l_set.push(l); + } + + len = n_set.length + for (var i = 0; i < len; i++) { + var n = n_set[i]; + graph.addNode(n.id, n.type, n.state) + } + + len = l_set.length + for (var i = 0; i < len; i++) { + var l = l_set[i]; + graph.addLink_byIds(l.sourceId, l.targetId, l.name, "perm") + } + } + + rz_api_backend.clone(0, on_success); + } + function load_from_json(json) { var data = JSON.parse(json); var i, node, link; -- cgit v1.3.1