chiark / gitweb /
I'm sure I've done something since I remembered to commit...
[familyTree.git] / familyTree / marriageSQL.py
index fddd6f75106ed1fe2050d24a2169d4e54b8b5bd2..b69be0dea4424c88c42acccd1c462f522a03504d 100755 (executable)
@@ -1,7 +1,7 @@
 #!/usr/bin/python
 
 def add_quotes(s):
-       return '\''+s+'\''
+       return '"'+s+'"'
 
 def is_number(s):
     try:
@@ -23,32 +23,49 @@ f = open('tree','r')
 lastline='';
 
 s = 0;
+ss=0;
 for line in f:
-       thisline = line
+       thisline = line[:-1]
        if thisline[-2:] == '\r\n':
                thisline = thisline[:-2]
        if lastline=='ID:':
                thisID = is_number(thisline)
-       if s == 1:
-               if thisline =='':
-                       s=0
-                       for spouse in spouses:
+       if s==3:
+               do = 0;
+               try:
+                       if float(thisID)<float(spouse):
+                               do=1
+               except:
+                       do =1
+                       
+               if do==1:
+                       if marriage!='"."':
+                               m = marriage[1:-1].split('/')
                                try:
-                                       if float(thisID) < float(spouse):
-                                               s = make_insert('marriages',
-                                               [thisID,spouse])
-                                               print s
-                               except ValueError:
-                                       s = make_insert('marriages',
-                                       [thisID,spouse])
-                                       print s
-
-               else:
-                       spouses.append(is_number(thisline))
-       if lastline == 'Spouses:':
-               spouses = [is_number(thisline)]
-               s = 1;
+                                       y = int(m[-1])
+                               except:
+                                       y = 0   
+                       s = make_insert('marriages',\
+                       [thisID,spouse,marriage,marriageEnd,str(y)])
 
+                       print s
+               s=0
+
+       if s==2:
+               marriageEnd=add_quotes(thisline)
+               s=3
+       if s==1:
+               marriage = add_quotes(thisline)
+               s=2
+
+       if lastline == 'Spouses:' or (ss==1 and s==0):
+               if len(thisline)>0 and thisline[-1] != ':':
+                       spouse = is_number(thisline)
+                       s = 1;
+                       ss=1;
+               elif len(thisline)>0:
+                       ss=0;
+                       s=0;
 
        if lastline == 'Consort of:':
                consort = is_number(thisline)