4416: Adjust import ID to users ID format

svn: r16791
This commit is contained in:
Michiel Nauta
2011-03-09 16:22:05 +00:00
parent 7c383849f7
commit 2b72a71a6e
4 changed files with 76 additions and 14 deletions

View File

@@ -397,7 +397,7 @@ class CSVParser(object):
if id is None: return None
if type == "family":
if id.startswith("[") and id.endswith("]"):
id = id[1:-1]
id = self.db.fid2user_format(id[1:-1])
db_lookup = self.db.get_family_from_gramps_id(id)
if db_lookup is None:
return self.lookup(type, id)
@@ -409,7 +409,7 @@ class CSVParser(object):
return None
elif type == "person":
if id.startswith("[") and id.endswith("]"):
id = id[1:-1]
id = self.db.id2user_format(id[1:-1])
db_lookup = self.db.get_person_from_gramps_id(id)
if db_lookup is None:
return self.lookup(type, id)
@@ -428,8 +428,10 @@ class CSVParser(object):
id = id[1:-1]
#return # do not store gramps people; go look them up
if type == "person":
id = self.db.id2user_format(id)
self.pref[id.lower()] = object
elif type == "family":
id = self.db.fid2user_format(id)
self.fref[id.lower()] = object
else:
LOG.warn("invalid storeup type in CSV import: '%s'" % type)
@@ -701,7 +703,7 @@ class CSVParser(object):
person.gramps_id = grampsid
elif person_ref is not None:
if person_ref.startswith("[") and person_ref.endswith("]"):
person.gramps_id = person_ref[1:-1]
person.gramps_id = self.db.id2user_format(person_ref[1:-1])
if person.get_gender() == gen.lib.Person.UNKNOWN and gender is not None:
gender = gender.lower()
if gender == gender_map[gen.lib.Person.MALE].lower():
@@ -814,7 +816,8 @@ class CSVParser(object):
# if a gramps_id and exists:
LOG.debug("get_or_create_family")
if family_ref.startswith("[") and family_ref.endswith("]"):
family = self.db.get_family_from_gramps_id(family_ref[1:-1])
id = self.db.fid2user_format(family_ref[1:-1])
family = self.db.get_family_from_gramps_id(id)
if family:
# don't delete, only add
fam_husband_handle = family.get_father_handle()
@@ -833,7 +836,8 @@ class CSVParser(object):
family = gen.lib.Family()
# was marked with a gramps_id, but didn't exist, so we'll use it:
if family_ref.startswith("[") and family_ref.endswith("]"):
family.set_gramps_id(family_ref[1:-1])
id = self.db.fid2user_format(family_ref[1:-1])
family.set_gramps_id(id)
# add it:
family.set_handle(self.db.create_id())
if husband:

View File

@@ -744,6 +744,7 @@ class GrampsParser(UpdateCallback):
return note, new
def map_gid(self, gramps_id):
gramps_id = self.db.id2user_format(gramps_id)
if not self.idswap.get(gramps_id):
if self.db.has_gramps_id(PERSON_KEY, gramps_id):
self.idswap[gramps_id] = self.db.find_next_person_gramps_id()
@@ -752,6 +753,7 @@ class GrampsParser(UpdateCallback):
return self.idswap[gramps_id]
def map_fid(self, gramps_id):
gramps_id = self.db.fid2user_format(gramps_id)
if not self.fidswap.get(gramps_id):
if self.db.has_gramps_id(FAMILY_KEY, gramps_id):
self.fidswap[gramps_id] = self.db.find_next_family_gramps_id()
@@ -760,6 +762,7 @@ class GrampsParser(UpdateCallback):
return self.fidswap[gramps_id]
def map_eid(self, gramps_id):
gramps_id = self.db.eid2user_format(gramps_id)
if not self.eidswap.get(gramps_id):
if self.db.has_gramps_id(EVENT_KEY, gramps_id):
self.eidswap[gramps_id] = self.db.find_next_event_gramps_id()
@@ -768,6 +771,7 @@ class GrampsParser(UpdateCallback):
return self.eidswap[gramps_id]
def map_pid(self, gramps_id):
gramps_id = self.db.pid2user_format(gramps_id)
if not self.pidswap.get(gramps_id):
if self.db.has_gramps_id(PLACE_KEY, gramps_id):
self.pidswap[gramps_id] = self.db.find_next_place_gramps_id()
@@ -776,6 +780,7 @@ class GrampsParser(UpdateCallback):
return self.pidswap[gramps_id]
def map_sid(self, gramps_id):
gramps_id = self.db.sid2user_format(gramps_id)
if not self.sidswap.get(gramps_id):
if self.db.has_gramps_id(SOURCE_KEY, gramps_id):
self.sidswap[gramps_id] = self.db.find_next_source_gramps_id()
@@ -784,6 +789,7 @@ class GrampsParser(UpdateCallback):
return self.sidswap[gramps_id]
def map_oid(self, gramps_id):
gramps_id = self.db.oid2user_format(gramps_id)
if not self.oidswap.get(gramps_id):
if self.db.has_gramps_id(MEDIA_KEY, gramps_id):
self.oidswap[gramps_id] = self.db.find_next_object_gramps_id()
@@ -792,6 +798,7 @@ class GrampsParser(UpdateCallback):
return self.oidswap[gramps_id]
def map_rid(self, gramps_id):
gramps_id = self.db.rid2user_format(gramps_id)
if not self.ridswap.get(gramps_id):
if self.db.has_gramps_id(REPOSITORY_KEY, gramps_id):
self.ridswap[gramps_id] = self.db.find_next_repository_gramps_id()
@@ -800,6 +807,7 @@ class GrampsParser(UpdateCallback):
return self.ridswap[gramps_id]
def map_nid(self, gramps_id):
gramps_id = self.db.nid2user_format(gramps_id)
if not self.nidswap.get(gramps_id):
if self.db.has_gramps_id(NOTE_KEY, gramps_id):
self.nidswap[gramps_id] = self.db.find_next_note_gramps_id()