chiark / gitweb /
I'm sure I've done something since I remembered to commit...
[familyTree.git] / cgiFiles / ancestorGraph.py
1 #!/usr/bin/python
2
3 import cgi
4 #import cgitb
5 #cgitb.enable()
6 import sys
7 sys.path.append('/home/naath/familyTreeProject/familyTree')
8 import askQuestion as aQ
9 import make_dot as d
10
11
12 def add_parents(ID,Self):
13
14         [parents, parentIDs,parentNames] = aQ.find_parents(ID)
15
16         pair = []
17         for i in range(len(parents)):
18                 newSelf = parents[i]
19                 if parentIDs[i]!=0:
20                         newID = parentIDs[i]
21                         if not d.has_node(newSelf):
22                                 d.add_person(newSelf)
23                                 add_parents(newID,newSelf)
24                 else:
25                         d.add_person(newSelf)
26                 pair.append(newSelf)
27
28         d.add_marriage(pair[0],pair[1],[Self],1)
29
30 def make_graph(ID):
31         global allAncestors
32
33         d.start_dot(8)
34                 
35
36         Self = aQ.find_person(ID)[0]
37         d.add_highlight(Self)
38
39         add_parents(ID,Self)
40         d.create_dot()
41         d.add_subgraphs()
42         d.end_dot()
43         d.render_dot()
44
45 form = cgi.FieldStorage()
46
47 ID = form.getvalue('id')
48
49 conn = aQ.connect()
50 make_graph(ID)
51 aQ.close(conn)
52