Skip to content
Snippets Groups Projects
Commit 4aed5fea authored by Eike Cochu's avatar Eike Cochu
Browse files

fixed network controller

parent 4ad4298d
No related branches found
No related tags found
No related merge requests found
<div ui-view ng-cloak>
<div ng-cloak>
<div class="fullsize navpadding">
<div class="graph-legend overlay">
<label style="color:{{colors.articles}}">
......
......@@ -72,7 +72,6 @@
var id = 0,
ids = {},
container = $("#visgraph")[0],
edges = {};
$scope.colors = {
......@@ -130,6 +129,7 @@
ids[data.id] = id;
// create graph
var container = document.getElementById("visgraph");
$scope.graph = new vis.Network(container, $scope.data, $scope.options);
$scope.graph.on('selectNode', $scope.select);
$scope.graph.on('doubleClick', $scope.open);
......@@ -184,13 +184,12 @@
};
// construct new nodes
var constructor = function(result, node, key, nodeFunction) {
if(result.data && (!key || result.data[key])) {
var data = key ? result.data[key] : result.data,
newNodes = [],
var constructor = function(result, node, nodeFunction) {
if(result) {
var newNodes = [],
newEdges = [];
for(var i = 0; i < data.length; i++) {
var current = data[i];
for(var i = 0; i < result.length; i++) {
var current = result[i];
if(ids.hasOwnProperty(current.id)) {
if(edgeExists(ids[current.id], node.id))
continue;
......@@ -220,23 +219,23 @@
// node is article, load article to get topics
ArticleFactory.get({id:node.dbid}, function(data) {
for(var i = 0; i < data.topics.length; i++)
data.topics[i] = res.data.topics[i].topic;
constructor(data, node, 'topics', topicNode);
data.topics[i] = data.topics[i].topic;
constructor(data.topics, node, topicNode);
});
} else if(node.type === 'topic') {
// node is topic, load topic to get words and articles
if($scope.shown.words)
TopicFactory.get({id:node.dbid}, function(data) {
constructor(data, node, 'words', wordNode);
constructor(data.words, node, wordNode);
});
if($scope.shown.articles)
TopicFactory.articles({id:node.dbid}, function(data) {
constructor(data, node, null, articleNode);
constructor(data, node, articleNode);
});
} else if(node.type === 'word' && $scope.shown.topics) {
// node is word, load word to get topics
WordFactory.get({id:node.dbid}, function(data) {
constructor(data, node, 'topics', topicNode);
WordFactory.topics({id:node.dbid}, function(data) {
constructor(data, node, topicNode);
});
}
$scope.nodes.update(node);
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment