Piotr Labudda vor 7 Jahren
Ursprung
Commit
cf714072c7
1 geänderte Dateien mit 5 neuen und 130 gelöschten Zeilen
  1. 5 130
      SE/se-lib/Route/UrlAction/BiAuditGraph.php.network-graph.js

+ 5 - 130
SE/se-lib/Route/UrlAction/BiAuditGraph.php.network-graph.js

@@ -214,8 +214,8 @@ var Utils = (function __makeUtils() {
 			allNodesSet: allNodesSet,
 			allEdgesSet: allEdgesSet,
 			visibleNodesSet: visibleNodesSet,
-			nodes: nodes.map(mapStatsNodeToGraphNode), // TODO: RMME
-			edges: edges.map(mapStatsEdgeToGraphEdge),
+			// nodes: nodes.map(mapStatsNodeToGraphNode), // TODO: RMME
+			// edges: edges.map(mapStatsEdgeToGraphEdge),
 			paths: paths,
 			isLoading: false,
 			sentRequestId: 0,
@@ -400,7 +400,6 @@ var p5UI__NetworkGraph = createReactClass({
 		}
 	},
 	getInitialState: function () {
-		// if (this.props.selected) this._updateSelected(this.props.selected);
 		return Object.assign({
 			initialized: false,
 			isLoading: false,
@@ -447,60 +446,6 @@ var p5UI__NetworkGraph = createReactClass({
 
 	reloadGraph: function () {
 		this.props.store.dispatch({ type: 'RELOAD_NODES' })
-		return;
-
-		if (this._network) {
-			// this._network.setData({ nodes: [], edges: [] });
-			// var edges = this._edges.getDataSet();
-			var networkFit = (function (network) {
-				var _network = network;
-				return function () {
-					DBG && console.log('DBG:networkFit');
-					_network.fit();
-				}
-			})(this._network);
-			// {
-			// 	var edges = this._edges.map(function(e) { return e; }); // DataSet to Array
-			// 	this._edges.clear();
-			// 	var animAddEdges = (function (this__edges, edges, wait) {
-			// 		return function (callback) {
-			// 			DBG && console.log('DBG:animAddEdges', { edges });
-			// 			if (edges.length > 0) {
-			// 				var edge = edges.pop();
-			// 				this__edges.add(edge);
-			// 				setTimeout(function () {
-			// 					animAddEdges(callback)
-			// 				}, wait);
-			// 			}
-			// 		}
-			// 	})(this._edges, edges, 10);
-			// 	animAddEdges(animAddEdges);
-			// }
-			{
-				var nodes = this._nodes.map(function(e) { return e; }); // DataSet to Array
-				this._nodes.clear();
-				var animAddNodes = (function (this__nodes, nodes, wait, onFinishCallback) {
-					return function (callback) {
-						DBG && console.log('DBG:animAddNodes', { nodes });
-						if (nodes.length > 0) {
-							var node = nodes.pop();
-							this__nodes.add(node);
-							setTimeout(function () {
-								animAddNodes(callback)
-							}, wait);
-						} else if (onFinishCallback) {
-							setTimeout(function () {
-								onFinishCallback()
-							}, 500);
-						}
-					}
-				})(this._nodes, nodes, 200, networkFit);
-				animAddNodes(animAddNodes);
-			}
-			// DBG && console.log('DBG: reloadGraph', { 'this._nodes': this._nodes, 'this._edges': this._edges, edges: edges });
-			// this._network.setData({ nodes: this._nodes, edges: this._edges });
-			// this._network.fit() // zoom out to fit container size
-		}
 	},
 
 	testOnClick1: function () {
@@ -552,78 +497,8 @@ var p5UI__NetworkGraph = createReactClass({
 		// 		})
 		// 	}
 		// }
-
-		if (this.props.selected.length != nextProps.selected.length) {
-			// this._updateSelected(nextProps.selected)
-		}
 		return false;
 	},
-	_updateSelected: function (selected) { // TODO: move to RaportOutputPanel Store
-		var state = this.props.store.getState();
-		var idsSelected = (selected || []).map( function (node) { return node.id } )
-
-		var nodes = [];
-		// var edges = state.edges.filter(function (edge) { // use idsSelected - TODO: RMME
-		// 	return ( -1 !== idsSelected.indexOf(edge.source) || -1 !== idsSelected.indexOf(edge.target) );
-		// })
-		{
-			// TODO: find all paths with selected fids
-			var foundPaths = state.paths.filter(function (path) {
-				for (var i = 0, totalFids = path.fids.length, fid = null; i < totalFids; i++) {
-					fid = path.fids[i];
-					DBG && console.log('DBG:foundPaths ', {fid: ''+fid, path});
-					if ( -1 !== idsSelected.indexOf(fid) ) return true;
-				}
-				return false;
-			})
-			// TODO: add missing nodes (not selected but on path)
-			var addFidsToGraph = Array.from(new Set(foundPaths.reduce(function (ret, path) {
-				return ret.concat(path.fids.filter(function (fid) {
-					return ( -1 === idsSelected.indexOf(fid) );
-				}))
-			}, [])));
-			// TODO: view only combined path or all not selected nodes? - trying: not selected nodes
-			// TODO: convert found paths to graph edges
-		}
-		DBG && console.warn('DBG: TODO set edges by selectd nodes...', { state_nodes: state.nodes, state_edges: state.edges, idsSelected, foundPaths, addFidsToGraph });
-		// this._nodes = new vis.DataSet();
-		{ // TODO: convert fid to node on found list
-			{ // if (!this._allNodes) {
-				this._allNodes = new vis.DataSet();
-				this._allNodes.update(state.nodes);
-			}
-
-			var this__allNodes = this._allNodes;
-			var this__nodes = this._nodes;
-			addFidsToGraph.forEach(function (fid) {
-				var node = this__allNodes.get(fid)
-				this__nodes.update(node);
-			})
-		}
-		DBG && console.log('DBG: check edges: ', { 'this._edges.length': this._edges.length, 'state.edges.length': state.edges.length });
-		if (this._edges.length != state.edges.length) {
-			DBG && console.log('DBG: TODO: update edges', { 'state.edges': state.edges });
-
-			var this__edges = this._edges;
-			state.edges.forEach(function (edge) {
-				var foundEdge = this__edges.get(edge.id);
-				if (!foundEdge) {
-					this__edges.add(edge);
-				} else {
-					var listPathId = (-1 !== foundEdge.listPathId.indexOf(edge.pathId)) ? foundEdge.listPathId : foundEdge.listPathId.concat(edge.pathId);
-					var mergedEdge = Object.assign(foundEdge, {
-						listPathId: listPathId,
-						width: 1 + (listPathId.length - 1) / 10,
-					});
-					this__edges.update(mergedEdge);
-				}
-			})
-		}
-		if (this._network) {
-			// this._network.setData({ nodes: this._nodes, edges: this._edges });
-			// this._network.fit() // zoom to fit container size
-		}
-	},
 	render: function () {
 		return h('div', { style: { 'position': "relative" } }, [
 			h('div', {
@@ -666,8 +541,8 @@ var p5UI__RaportOutputPanel = createReactClass({
 		var initSelected = [];
 		if (DBG_INIT_SELECTED) {
 			var state = this.props.store.getState()
-			initSelected = state.nodes.filter(function (node) {
-				return ( -1 !== DBG_INIT_SELECTED.indexOf(node.id));
+			initSelected = DBG_INIT_SELECTED.map(function (fid) {
+				return state.allNodesSet.get(fid)
 			})
 			this.props.store.dispatch( this.props.storeActions.setSelected(initSelected) )
 		}
@@ -695,7 +570,7 @@ var p5UI__RaportOutputPanel = createReactClass({
 	render: function () {
 		var state = this.props.store.getState()
 		DBG && console.log('DBG:render - state', state);
-		var nodes = state.nodes || [];
+		var nodes = state.allNodesSet.map(function (node) { return node; });
 
 		return h(React.Fragment, {}, [
 			h(Typeahead, {