aboutsummaryrefslogtreecommitdiff
path: root/backend
diff options
context:
space:
mode:
Diffstat (limited to 'backend')
-rwxr-xr-xbackend/server.py10
1 files changed, 10 insertions, 0 deletions
diff --git a/backend/server.py b/backend/server.py
index 9191d8a..5525eb5 100755
--- a/backend/server.py
+++ b/backend/server.py
@@ -47,9 +47,19 @@ def lookupNodes(names, useReducedTree):
"commonName": None,
"imgName": None,
}
+ # Get child info
query = f"SELECT node, child FROM {edgesTable} WHERE node IN ({queryParamStr})"
for (nodeName, childName) in cur.execute(query, names):
nodeObjs[nodeName]["children"].append(childName)
+ # Order children by tips
+ for (nodeName, nodeObj) in nodeObjs.items():
+ childList = nodeObj["children"]
+ childToTips = {}
+ query = "SELECT name, tips FROM {} WHERE name IN ({})".format(nodesTable, ",".join(["?"] * len(childList)))
+ for (n, tips) in cur.execute(query, childList):
+ childToTips[n] = tips
+ childList.sort(key=lambda n: childToTips[n], reverse=True)
+ # Get parent info
query = f"SELECT node, child, p_support FROM {edgesTable} WHERE child IN ({queryParamStr})"
for (nodeName, childName, pSupport) in cur.execute(query, names):
nodeObjs[childName]["parent"] = None if nodeName == "" else nodeName