pylint
svn: r13998
This commit is contained in:
parent
d664fa4aa2
commit
2f7f7ac5f8
@ -25,7 +25,9 @@
|
|||||||
|
|
||||||
# Written by Alex Roitman, largely based on Relationship.py by Don Allingham
|
# Written by Alex Roitman, largely based on Relationship.py by Don Allingham
|
||||||
# and on valuable input from Eero Tamminen
|
# and on valuable input from Eero Tamminen
|
||||||
|
"""
|
||||||
|
Specific classes for relationships.
|
||||||
|
"""
|
||||||
#-------------------------------------------------------------------------
|
#-------------------------------------------------------------------------
|
||||||
#
|
#
|
||||||
# GRAMPS modules
|
# GRAMPS modules
|
||||||
@ -50,11 +52,14 @@ _parents_level = [ "", "vanhemmat", "isovanhemmat", "isoisovanhemmat",
|
|||||||
#
|
#
|
||||||
#-------------------------------------------------------------------------
|
#-------------------------------------------------------------------------
|
||||||
class RelationshipCalculator(Relationship.RelationshipCalculator):
|
class RelationshipCalculator(Relationship.RelationshipCalculator):
|
||||||
|
"""
|
||||||
|
RelationshipCalculator Class
|
||||||
|
"""
|
||||||
|
|
||||||
def __init__(self):
|
def __init__(self):
|
||||||
Relationship.RelationshipCalculator.__init__(self)
|
Relationship.RelationshipCalculator.__init__(self)
|
||||||
|
|
||||||
def get_cousin(self,level):
|
def get_cousin(self, level):
|
||||||
if level == 0:
|
if level == 0:
|
||||||
return ""
|
return ""
|
||||||
elif level == 1:
|
elif level == 1:
|
||||||
@ -64,7 +69,7 @@ class RelationshipCalculator(Relationship.RelationshipCalculator):
|
|||||||
elif level > 2:
|
elif level > 2:
|
||||||
return "%d. serkku" % level
|
return "%d. serkku" % level
|
||||||
|
|
||||||
def get_cousin_genitive(self,level):
|
def get_cousin_genitive(self, level):
|
||||||
if level == 0:
|
if level == 0:
|
||||||
return ""
|
return ""
|
||||||
elif level == 1:
|
elif level == 1:
|
||||||
@ -74,13 +79,13 @@ class RelationshipCalculator(Relationship.RelationshipCalculator):
|
|||||||
elif level > 2:
|
elif level > 2:
|
||||||
return "%d. serkun" % level
|
return "%d. serkun" % level
|
||||||
|
|
||||||
def get_parents(self,level):
|
def get_parents(self, level):
|
||||||
if level>len(_parents_level)-1:
|
if level > len(_parents_level)-1:
|
||||||
return "kaukaiset esivanhemmat"
|
return "kaukaiset esivanhemmat"
|
||||||
else:
|
else:
|
||||||
return _parents_level[level]
|
return _parents_level[level]
|
||||||
|
|
||||||
def get_direct_ancestor(self,person,rel_string):
|
def get_direct_ancestor(self, person, rel_string):
|
||||||
result = []
|
result = []
|
||||||
for ix in range(len(rel_string)-1):
|
for ix in range(len(rel_string)-1):
|
||||||
if rel_string[ix] == 'f':
|
if rel_string[ix] == 'f':
|
||||||
@ -93,9 +98,9 @@ class RelationshipCalculator(Relationship.RelationshipCalculator):
|
|||||||
result.append('äiti')
|
result.append('äiti')
|
||||||
return ' '.join(result)
|
return ' '.join(result)
|
||||||
|
|
||||||
def get_direct_descendant(self,person,rel_string):
|
def get_direct_descendant(self, person, rel_string):
|
||||||
result = []
|
result = []
|
||||||
for ix in range(len(rel_string)-2,-1,-1):
|
for ix in range(len(rel_string)-2, -1, -1):
|
||||||
if rel_string[ix] == 'f':
|
if rel_string[ix] == 'f':
|
||||||
result.append('pojan')
|
result.append('pojan')
|
||||||
elif rel_string[ix] == 'm':
|
elif rel_string[ix] == 'm':
|
||||||
@ -110,7 +115,7 @@ class RelationshipCalculator(Relationship.RelationshipCalculator):
|
|||||||
result.append('lapsi')
|
result.append('lapsi')
|
||||||
return ' '.join(result)
|
return ' '.join(result)
|
||||||
|
|
||||||
def get_ancestors_cousin(self,rel_string_long,rel_string_short):
|
def get_ancestors_cousin(self, rel_string_long, rel_string_short):
|
||||||
result = []
|
result = []
|
||||||
removed = len(rel_string_long)-len(rel_string_short)
|
removed = len(rel_string_long)-len(rel_string_short)
|
||||||
level = len(rel_string_short)-1
|
level = len(rel_string_short)-1
|
||||||
@ -122,7 +127,7 @@ class RelationshipCalculator(Relationship.RelationshipCalculator):
|
|||||||
result.append(self.get_cousin(level))
|
result.append(self.get_cousin(level))
|
||||||
return ' '.join(result)
|
return ' '.join(result)
|
||||||
|
|
||||||
def get_cousins_descendant(self,person,rel_string_long,rel_string_short):
|
def get_cousins_descendant(self, person, rel_string_long, rel_string_short):
|
||||||
result = []
|
result = []
|
||||||
removed = len(rel_string_long)-len(rel_string_short)-1
|
removed = len(rel_string_long)-len(rel_string_short)-1
|
||||||
level = len(rel_string_short)-1
|
level = len(rel_string_short)-1
|
||||||
@ -132,7 +137,7 @@ class RelationshipCalculator(Relationship.RelationshipCalculator):
|
|||||||
result.append('veljen')
|
result.append('veljen')
|
||||||
else:
|
else:
|
||||||
result.append('sisaren')
|
result.append('sisaren')
|
||||||
for ix in range(removed-1,-1,-1):
|
for ix in range(removed-1, -1, -1):
|
||||||
if rel_string_long[ix] == 'f':
|
if rel_string_long[ix] == 'f':
|
||||||
result.append('pojan')
|
result.append('pojan')
|
||||||
elif rel_string_long[ix] == 'm':
|
elif rel_string_long[ix] == 'm':
|
||||||
@ -147,7 +152,7 @@ class RelationshipCalculator(Relationship.RelationshipCalculator):
|
|||||||
result.append('lapsi')
|
result.append('lapsi')
|
||||||
return ' '.join(result)
|
return ' '.join(result)
|
||||||
|
|
||||||
def get_ancestors_brother(self,rel_string):
|
def get_ancestors_brother(self, rel_string):
|
||||||
result = []
|
result = []
|
||||||
for ix in range(len(rel_string)-1):
|
for ix in range(len(rel_string)-1):
|
||||||
if rel_string[ix] == 'f':
|
if rel_string[ix] == 'f':
|
||||||
@ -157,7 +162,7 @@ class RelationshipCalculator(Relationship.RelationshipCalculator):
|
|||||||
result.append('veli')
|
result.append('veli')
|
||||||
return ' '.join(result)
|
return ' '.join(result)
|
||||||
|
|
||||||
def get_ancestors_sister(self,rel_string):
|
def get_ancestors_sister(self, rel_string):
|
||||||
result = []
|
result = []
|
||||||
for ix in range(len(rel_string)-1):
|
for ix in range(len(rel_string)-1):
|
||||||
if rel_string[ix] == 'f':
|
if rel_string[ix] == 'f':
|
||||||
@ -174,26 +179,26 @@ class RelationshipCalculator(Relationship.RelationshipCalculator):
|
|||||||
common = ""
|
common = ""
|
||||||
if not firstRel:
|
if not firstRel:
|
||||||
if not secondRel:
|
if not secondRel:
|
||||||
return ('',common)
|
return ('', common)
|
||||||
else:
|
else:
|
||||||
return (self.get_direct_ancestor(other_person,secondRel),common)
|
return (self.get_direct_ancestor(other_person, secondRel), common)
|
||||||
elif not secondRel:
|
elif not secondRel:
|
||||||
return (self.get_direct_descendant(other_person,firstRel),common)
|
return (self.get_direct_descendant(other_person, firstRel), common)
|
||||||
elif len(firstRel) == 1:
|
elif len(firstRel) == 1:
|
||||||
if other_person == gen.lib.Person.MALE:
|
if other_person == gen.lib.Person.MALE:
|
||||||
return (self.get_ancestors_brother(secondRel),common)
|
return (self.get_ancestors_brother(secondRel), common)
|
||||||
else:
|
else:
|
||||||
return (self.get_ancestors_sister(secondRel),common)
|
return (self.get_ancestors_sister(secondRel), common)
|
||||||
elif len(secondRel) >= len(firstRel):
|
elif len(secondRel) >= len(firstRel):
|
||||||
return (self.get_ancestors_cousin(secondRel,firstRel),common)
|
return (self.get_ancestors_cousin(secondRel, firstRel), common)
|
||||||
else:
|
else:
|
||||||
return (self.get_cousins_descendant(other_person,firstRel,secondRel),common)
|
return (self.get_cousins_descendant(other_person, firstRel, secondRel), common)
|
||||||
|
|
||||||
def get_single_relationship_string(self, Ga, Gb, gender_a, gender_b,
|
def get_single_relationship_string(self, Ga, Gb, gender_a, gender_b,
|
||||||
reltocommon_a, reltocommon_b,
|
reltocommon_a, reltocommon_b,
|
||||||
only_birth=True,
|
only_birth=True,
|
||||||
in_law_a=False, in_law_b=False):
|
in_law_a=False, in_law_b=False):
|
||||||
return self.get_relationship(reltocommon_a, reltocommon_b, gender_a, gender_b)[0];
|
return self.get_relationship(reltocommon_a, reltocommon_b, gender_a, gender_b)[0]
|
||||||
|
|
||||||
def get_sibling_relationship_string(self, sib_type, gender_a, gender_b,
|
def get_sibling_relationship_string(self, sib_type, gender_a, gender_b,
|
||||||
in_law_a=False, in_law_b=False):
|
in_law_a=False, in_law_b=False):
|
||||||
|
@ -24,7 +24,9 @@
|
|||||||
|
|
||||||
#
|
#
|
||||||
# Written by Egyeki Gergely <egeri@elte.hu>, 2004
|
# Written by Egyeki Gergely <egeri@elte.hu>, 2004
|
||||||
#
|
"""
|
||||||
|
Specific classes for relationships.
|
||||||
|
"""
|
||||||
#-------------------------------------------------------------------------
|
#-------------------------------------------------------------------------
|
||||||
#
|
#
|
||||||
# GRAMPS modules
|
# GRAMPS modules
|
||||||
@ -40,7 +42,7 @@ import Relationship
|
|||||||
#
|
#
|
||||||
#-------------------------------------------------------------------------
|
#-------------------------------------------------------------------------
|
||||||
|
|
||||||
_level =\
|
_level = \
|
||||||
["", "", "másod", "harmad", "negyed", "ötöd", "hatod",
|
["", "", "másod", "harmad", "negyed", "ötöd", "hatod",
|
||||||
"heted", "nyolcad", "kilenced", "tized", "tizenegyed", "tizenketted",
|
"heted", "nyolcad", "kilenced", "tized", "tizenegyed", "tizenketted",
|
||||||
"tizenharmad", "tizennegyed", "tizenötöd", "tizenhatod",
|
"tizenharmad", "tizennegyed", "tizenötöd", "tizenhatod",
|
||||||
@ -53,12 +55,15 @@ _level =\
|
|||||||
#
|
#
|
||||||
#-------------------------------------------------------------------------
|
#-------------------------------------------------------------------------
|
||||||
class RelationshipCalculator(Relationship.RelationshipCalculator):
|
class RelationshipCalculator(Relationship.RelationshipCalculator):
|
||||||
|
"""
|
||||||
|
RelationshipCalculator Class
|
||||||
|
"""
|
||||||
|
|
||||||
def __init__(self):
|
def __init__(self):
|
||||||
Relationship.RelationshipCalculator.__init__(self)
|
Relationship.RelationshipCalculator.__init__(self)
|
||||||
|
|
||||||
|
|
||||||
def get_parents (self,level):
|
def get_parents (self, level):
|
||||||
if level == 0: return ""
|
if level == 0: return ""
|
||||||
elif level == 1: return "szülei"
|
elif level == 1: return "szülei"
|
||||||
elif level == 2: return "nagyszülei"
|
elif level == 2: return "nagyszülei"
|
||||||
@ -66,9 +71,7 @@ class RelationshipCalculator(Relationship.RelationshipCalculator):
|
|||||||
elif level == 4: return "ükszülei"
|
elif level == 4: return "ükszülei"
|
||||||
else : return "%s szülei" % _level[level]
|
else : return "%s szülei" % _level[level]
|
||||||
|
|
||||||
|
def get_father (self, level):
|
||||||
|
|
||||||
def get_father (self,level):
|
|
||||||
if level == 0: return ""
|
if level == 0: return ""
|
||||||
elif level == 1: return "apja"
|
elif level == 1: return "apja"
|
||||||
elif level == 2: return "nagyapja"
|
elif level == 2: return "nagyapja"
|
||||||
@ -76,7 +79,7 @@ class RelationshipCalculator(Relationship.RelationshipCalculator):
|
|||||||
elif level == 4: return "ükapja"
|
elif level == 4: return "ükapja"
|
||||||
else : return "%s ükapja" % (_level[level])
|
else : return "%s ükapja" % (_level[level])
|
||||||
|
|
||||||
def get_mother (self,level):
|
def get_mother (self, level):
|
||||||
if level == 0: return ""
|
if level == 0: return ""
|
||||||
elif level == 1: return "anyja"
|
elif level == 1: return "anyja"
|
||||||
elif level == 2: return "nagyanyja"
|
elif level == 2: return "nagyanyja"
|
||||||
@ -84,9 +87,7 @@ class RelationshipCalculator(Relationship.RelationshipCalculator):
|
|||||||
elif level == 4: return "ükanyja"
|
elif level == 4: return "ükanyja"
|
||||||
else : return "%s ükanyja" % (_level[level])
|
else : return "%s ükanyja" % (_level[level])
|
||||||
|
|
||||||
|
def get_son (self, level):
|
||||||
|
|
||||||
def get_son (self,level):
|
|
||||||
if level == 0: return ""
|
if level == 0: return ""
|
||||||
elif level == 1: return "fia"
|
elif level == 1: return "fia"
|
||||||
elif level == 2: return "unokája"
|
elif level == 2: return "unokája"
|
||||||
@ -94,49 +95,37 @@ class RelationshipCalculator(Relationship.RelationshipCalculator):
|
|||||||
elif level == 4: return "ükunokája"
|
elif level == 4: return "ükunokája"
|
||||||
else : return "%s unokája" % (_level[level])
|
else : return "%s unokája" % (_level[level])
|
||||||
|
|
||||||
|
def get_daughter (self, level):
|
||||||
def get_daughter (self,level):
|
|
||||||
if level == 0: return ""
|
if level == 0: return ""
|
||||||
elif level == 1: return "lánya"
|
elif level == 1: return "lánya"
|
||||||
else : return self.get_son(level)
|
else : return self.get_son(level)
|
||||||
|
|
||||||
|
def get_uncle (self, level):
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
def get_uncle (self,level):
|
|
||||||
if level == 0: return ""
|
if level == 0: return ""
|
||||||
elif level == 1: return "testvére"
|
elif level == 1: return "testvére"
|
||||||
elif level == 2: return "nagybátyja"
|
elif level == 2: return "nagybátyja"
|
||||||
else : return "%s nagybátyja" % (_level[level])
|
else : return "%s nagybátyja" % (_level[level])
|
||||||
|
|
||||||
|
def get_aunt (self, level):
|
||||||
def get_aunt (self,level):
|
|
||||||
if level == 0: return ""
|
if level == 0: return ""
|
||||||
elif level == 1: return "testvére"
|
elif level == 1: return "testvére"
|
||||||
elif level == 2: return "nagynénje"
|
elif level == 2: return "nagynénje"
|
||||||
else : return "%s nagynénje" % (_level[level])
|
else : return "%s nagynénje" % (_level[level])
|
||||||
|
|
||||||
|
def get_nephew (self, level):
|
||||||
|
|
||||||
|
|
||||||
def get_nephew (self,level):
|
|
||||||
if level == 0: return ""
|
if level == 0: return ""
|
||||||
elif level == 1: return "unokája"
|
elif level == 1: return "unokája"
|
||||||
else : return "%s unokája" % (_level[level])
|
else : return "%s unokája" % (_level[level])
|
||||||
|
|
||||||
def get_niece(self,level):
|
def get_niece(self, level):
|
||||||
return self.get_nephew(level)
|
return self.get_nephew(level)
|
||||||
|
|
||||||
|
def get_male_cousin (self, level):
|
||||||
|
|
||||||
|
|
||||||
def get_male_cousin (self,level):
|
|
||||||
if level == 0: return ""
|
if level == 0: return ""
|
||||||
elif level == 1: return "unokatestvére"
|
elif level == 1: return "unokatestvére"
|
||||||
else : return "%s unokatestvére" % (_level[level])
|
else : return "%s unokatestvére" % (_level[level])
|
||||||
|
|
||||||
def get_female_cousin (self,level):
|
def get_female_cousin (self, level):
|
||||||
return self.get_male_cousin(level)
|
return self.get_male_cousin(level)
|
||||||
|
|
||||||
#----------------------------------------------
|
#----------------------------------------------
|
||||||
@ -152,15 +141,15 @@ class RelationshipCalculator(Relationship.RelationshipCalculator):
|
|||||||
other_birth_event = other_person.get_birth()
|
other_birth_event = other_person.get_birth()
|
||||||
other_birth_date = other_birth_event.get_date_object()
|
other_birth_date = other_birth_event.get_date_object()
|
||||||
if (orig_birth_date == "")or(other_birth_date == "") :return 0
|
if (orig_birth_date == "")or(other_birth_date == "") :return 0
|
||||||
else :return orig_birth_date>other_birth_date
|
else :return orig_birth_date > other_birth_date
|
||||||
|
|
||||||
|
|
||||||
def get_age_brother (self,level):
|
def get_age_brother (self, level):
|
||||||
if level == 0 : return "testvére"
|
if level == 0 : return "testvére"
|
||||||
elif level == 1 : return "öccse"
|
elif level == 1 : return "öccse"
|
||||||
else : return "bátyja"
|
else : return "bátyja"
|
||||||
|
|
||||||
def get_age_sister (self,level):
|
def get_age_sister (self, level):
|
||||||
if level == 0 : return "testvére"
|
if level == 0 : return "testvére"
|
||||||
elif level == 1 : return "húga"
|
elif level == 1 : return "húga"
|
||||||
else : return "nővére"
|
else : return "nővére"
|
||||||
@ -253,91 +242,91 @@ class RelationshipCalculator(Relationship.RelationshipCalculator):
|
|||||||
#
|
#
|
||||||
#-------------------------------------------------------------------------
|
#-------------------------------------------------------------------------
|
||||||
|
|
||||||
def get_relationship(self,db, orig_person, other_person):
|
def get_relationship(self, db, orig_person, other_person):
|
||||||
"""
|
"""
|
||||||
returns a string representing the relationshp between the two people,
|
returns a string representing the relationshp between the two people,
|
||||||
along with a list of common ancestors (typically father,mother)
|
along with a list of common ancestors (typically father,mother)
|
||||||
"""
|
"""
|
||||||
|
|
||||||
if orig_person is None:
|
if orig_person is None:
|
||||||
return ("undefined",[])
|
return ("undefined", [])
|
||||||
|
|
||||||
if orig_person.get_handle() == other_person.get_handle():
|
if orig_person.get_handle() == other_person.get_handle():
|
||||||
return ('', [])
|
return ('', [])
|
||||||
|
|
||||||
is_spouse = self.is_spouse(db, orig_person, other_person)
|
is_spouse = self.is_spouse(db, orig_person, other_person)
|
||||||
if is_spouse:
|
if is_spouse:
|
||||||
return (is_spouse,[])
|
return (is_spouse, [])
|
||||||
|
|
||||||
if self.is_fathermother_in_law(other_person, orig_person):
|
if self.is_fathermother_in_law(other_person, orig_person):
|
||||||
if other_person.getGender() == gen.lib.Person.MALE:
|
if other_person.getGender() == gen.lib.Person.MALE:
|
||||||
return ("apósa",self.get_fathermother_in_law_common(other_person, orig_person))
|
return ("apósa", self.get_fathermother_in_law_common(other_person, orig_person))
|
||||||
elif other_person.getGender() == gen.lib.Person.FEMALE:
|
elif other_person.getGender() == gen.lib.Person.FEMALE:
|
||||||
return ("anyósa",self.get_fathermother_in_law_common(other_person, orig_person))
|
return ("anyósa", self.get_fathermother_in_law_common(other_person, orig_person))
|
||||||
elif other_person.getGender() == 2 :
|
elif other_person.getGender() == 2 :
|
||||||
return ("apósa vagy anyósa",self.get_fathermother_in_law_common(other_person, orig_person))
|
return ("apósa vagy anyósa", self.get_fathermother_in_law_common(other_person, orig_person))
|
||||||
|
|
||||||
if self.is_fathermother_in_law(orig_person, other_person):
|
if self.is_fathermother_in_law(orig_person, other_person):
|
||||||
if orig_person.getGender() == gen.lib.Person.MALE:
|
if orig_person.getGender() == gen.lib.Person.MALE:
|
||||||
return ("veje",self.get_fathermother_in_law_common(orig_person, other_person))
|
return ("veje", self.get_fathermother_in_law_common(orig_person, other_person))
|
||||||
elif orig_person.getGender() == gen.lib.Person.FEMALE:
|
elif orig_person.getGender() == gen.lib.Person.FEMALE:
|
||||||
return ("menye",self.get_fathermother_in_law_common(orig_person, other_person))
|
return ("menye", self.get_fathermother_in_law_common(orig_person, other_person))
|
||||||
elif orig_person.getGender() == 2 :
|
elif orig_person.getGender() == 2 :
|
||||||
return ("veje vagy menye",self.get_fathermother_in_law_common(orig_person, other_person))
|
return ("veje vagy menye", self.get_fathermother_in_law_common(orig_person, other_person))
|
||||||
|
|
||||||
if self.is_brothersister_in_law(orig_person, other_person):
|
if self.is_brothersister_in_law(orig_person, other_person):
|
||||||
if other_person.getGender() == gen.lib.Person.MALE:
|
if other_person.getGender() == gen.lib.Person.MALE:
|
||||||
return ("sógora",self.get_brothersister_in_law_common(orig_person, other_person))
|
return ("sógora", self.get_brothersister_in_law_common(orig_person, other_person))
|
||||||
elif other_person.getGender() == gen.lib.Person.FEMALE:
|
elif other_person.getGender() == gen.lib.Person.FEMALE:
|
||||||
return ("sógornője",self.get_brothersister_in_law_common(orig_person, other_person))
|
return ("sógornője", self.get_brothersister_in_law_common(orig_person, other_person))
|
||||||
elif other_person.getGender() == 2 :
|
elif other_person.getGender() == 2 :
|
||||||
return ("sógora vagy sógornője",self.get_brothersister_in_law_common(orig_person, other_person))
|
return ("sógora vagy sógornője", self.get_brothersister_in_law_common(orig_person, other_person))
|
||||||
|
|
||||||
|
|
||||||
#get_relationship_distance changed, first data is relation to
|
#get_relationship_distance changed, first data is relation to
|
||||||
#orig person, apperently secondRel in this function
|
#orig person, apperently secondRel in this function
|
||||||
(secondRel,firstRel,common) = \
|
(secondRel, firstRel, common) = \
|
||||||
self.get_relationship_distance(db, orig_person, other_person)
|
self.get_relationship_distance(db, orig_person, other_person)
|
||||||
|
|
||||||
if isinstance(common, basestring):
|
if isinstance(common, basestring):
|
||||||
return (common,[])
|
return (common, [])
|
||||||
elif common:
|
elif common:
|
||||||
person_handle = common[0]
|
person_handle = common[0]
|
||||||
else:
|
else:
|
||||||
return ("",[])
|
return ("", [])
|
||||||
|
|
||||||
firstRel = len(firstRel)
|
firstRel = len(firstRel)
|
||||||
secondRel = len(secondRel)
|
secondRel = len(secondRel)
|
||||||
|
|
||||||
if firstRel == 0:
|
if firstRel == 0:
|
||||||
if secondRel == 0:
|
if secondRel == 0:
|
||||||
return ('',common)
|
return ('', common)
|
||||||
elif other_person.get_gender() == gen.lib.Person.MALE:
|
elif other_person.get_gender() == gen.lib.Person.MALE:
|
||||||
return (self.get_father(secondRel),common)
|
return (self.get_father(secondRel), common)
|
||||||
else:
|
else:
|
||||||
return (self.get_mother(secondRel),common)
|
return (self.get_mother(secondRel), common)
|
||||||
|
|
||||||
elif secondRel == 0:
|
elif secondRel == 0:
|
||||||
if other_person.get_gender() == gen.lib.Person.MALE:
|
if other_person.get_gender() == gen.lib.Person.MALE:
|
||||||
return (self.get_son(firstRel),common)
|
return (self.get_son(firstRel), common)
|
||||||
else:
|
else:
|
||||||
return (self.get_daughter(firstRel),common)
|
return (self.get_daughter(firstRel), common)
|
||||||
|
|
||||||
elif firstRel == 1:
|
elif firstRel == 1:
|
||||||
if other_person.get_gender() == gen.lib.Person.MALE:
|
if other_person.get_gender() == gen.lib.Person.MALE:
|
||||||
if secondRel == 1:
|
if secondRel == 1:
|
||||||
return (self.get_age_brother(self.get_age_comp(orig_person, other_person)),common)
|
return (self.get_age_brother(self.get_age_comp(orig_person, other_person)), common)
|
||||||
else :return (self.get_uncle(secondRel),common)
|
else :return (self.get_uncle(secondRel), common)
|
||||||
else:
|
else:
|
||||||
if secondRel == 1:
|
if secondRel == 1:
|
||||||
return (self.get_age_sister(self.get_age_comp(orig_person, other_person)),common)
|
return (self.get_age_sister(self.get_age_comp(orig_person, other_person)), common)
|
||||||
else :return (self.get_aunt(secondRel),common)
|
else :return (self.get_aunt(secondRel), common)
|
||||||
|
|
||||||
elif secondRel == 1:
|
elif secondRel == 1:
|
||||||
if other_person.get_gender() == gen.lib.Person.MALE:
|
if other_person.get_gender() == gen.lib.Person.MALE:
|
||||||
return (self.get_nephew(firstRel-1),common)
|
return (self.get_nephew(firstRel-1), common)
|
||||||
else:
|
else:
|
||||||
return (self.get_niece(firstRel-1),common)
|
return (self.get_niece(firstRel-1), common)
|
||||||
|
|
||||||
else:
|
else:
|
||||||
if other_person.get_gender() == gen.lib.Person.MALE:
|
if other_person.get_gender() == gen.lib.Person.MALE:
|
||||||
|
@ -28,7 +28,9 @@
|
|||||||
# Benny Malengier <benny.malengier@gramps-project.org, 2007
|
# Benny Malengier <benny.malengier@gramps-project.org, 2007
|
||||||
# Maria-Cristina Ciocci <see above>, 2007
|
# Maria-Cristina Ciocci <see above>, 2007
|
||||||
#
|
#
|
||||||
|
"""
|
||||||
|
Italian-Specific classes for relationships.
|
||||||
|
"""
|
||||||
#-------------------------------------------------------------------------
|
#-------------------------------------------------------------------------
|
||||||
#
|
#
|
||||||
# GRAMPS modules
|
# GRAMPS modules
|
||||||
@ -122,6 +124,9 @@ _niece_level = [ "", "la nipote%(step)s%(inlaw)s",
|
|||||||
#
|
#
|
||||||
#-------------------------------------------------------------------------
|
#-------------------------------------------------------------------------
|
||||||
class RelationshipCalculator(Relationship.RelationshipCalculator):
|
class RelationshipCalculator(Relationship.RelationshipCalculator):
|
||||||
|
"""
|
||||||
|
RelationshipCalculator Class
|
||||||
|
"""
|
||||||
|
|
||||||
INLAW = ' acquisit%(gen)s'
|
INLAW = ' acquisit%(gen)s'
|
||||||
|
|
||||||
@ -145,8 +150,8 @@ class RelationshipCalculator(Relationship.RelationshipCalculator):
|
|||||||
return 'o'
|
return 'o'
|
||||||
return 'a'
|
return 'a'
|
||||||
|
|
||||||
def get_parents (self,level):
|
def get_parents (self, level):
|
||||||
if level>len(_level)-1:
|
if level > len(_level)-1:
|
||||||
return "remote ancestors"
|
return "remote ancestors"
|
||||||
else:
|
else:
|
||||||
return "%si genitori" % _level[level]
|
return "%si genitori" % _level[level]
|
||||||
@ -311,59 +316,59 @@ class RelationshipCalculator(Relationship.RelationshipCalculator):
|
|||||||
#
|
#
|
||||||
#-------------------------------------------------------------------------
|
#-------------------------------------------------------------------------
|
||||||
|
|
||||||
def get_relationship(self,db, orig_person, other_person):
|
def get_relationship(self, db, orig_person, other_person):
|
||||||
"""
|
"""
|
||||||
returns a string representing the relationshp between the two people,
|
returns a string representing the relationshp between the two people,
|
||||||
along with a list of common ancestors (typically father,mother)
|
along with a list of common ancestors (typically father, mother)
|
||||||
"""
|
"""
|
||||||
|
|
||||||
if orig_person is None:
|
if orig_person is None:
|
||||||
return ("non definito",[])
|
return ("non definito", [])
|
||||||
|
|
||||||
if orig_person.get_handle() == other_person.get_handle():
|
if orig_person.get_handle() == other_person.get_handle():
|
||||||
return ('', [])
|
return ('', [])
|
||||||
|
|
||||||
is_spouse = self.is_spouse(db, orig_person, other_person)
|
is_spouse = self.is_spouse(db, orig_person, other_person)
|
||||||
if is_spouse:
|
if is_spouse:
|
||||||
return (is_spouse,[])
|
return (is_spouse, [])
|
||||||
|
|
||||||
#get_relationship_distance changed, first data is relation to
|
#get_relationship_distance changed, first data is relation to
|
||||||
#orig person, apperently secondRel in this function
|
#orig person, apperently secondRel in this function
|
||||||
(secondRel,firstRel,common) = \
|
(secondRel, firstRel, common) = \
|
||||||
self.get_relationship_distance(db, orig_person, other_person)
|
self.get_relationship_distance(db, orig_person, other_person)
|
||||||
|
|
||||||
if isinstance(common, basestring):
|
if isinstance(common, basestring):
|
||||||
return (common,[])
|
return (common, [])
|
||||||
elif common:
|
elif common:
|
||||||
person_handle = common[0]
|
person_handle = common[0]
|
||||||
else:
|
else:
|
||||||
return ("",[])
|
return ("", [])
|
||||||
|
|
||||||
firstRel = len(firstRel)
|
firstRel = len(firstRel)
|
||||||
secondRel = len(secondRel)
|
secondRel = len(secondRel)
|
||||||
|
|
||||||
if firstRel == 0:
|
if firstRel == 0:
|
||||||
if secondRel == 0:
|
if secondRel == 0:
|
||||||
return ('',common)
|
return ('', common)
|
||||||
elif other_person.get_gender() == gen.lib.Person.MALE:
|
elif other_person.get_gender() == gen.lib.Person.MALE:
|
||||||
return (self.get_father(secondRel),common)
|
return (self.get_father(secondRel), common)
|
||||||
else:
|
else:
|
||||||
return (self.get_mother(secondRel),common)
|
return (self.get_mother(secondRel), common)
|
||||||
elif secondRel == 0:
|
elif secondRel == 0:
|
||||||
if other_person.get_gender() == gen.lib.Person.MALE:
|
if other_person.get_gender() == gen.lib.Person.MALE:
|
||||||
return (self.get_son(firstRel),common)
|
return (self.get_son(firstRel), common)
|
||||||
else:
|
else:
|
||||||
return (self.get_daughter(firstRel),common)
|
return (self.get_daughter(firstRel), common)
|
||||||
elif firstRel == 1:
|
elif firstRel == 1:
|
||||||
if other_person.get_gender() == gen.lib.Person.MALE:
|
if other_person.get_gender() == gen.lib.Person.MALE:
|
||||||
return (self.get_uncle(secondRel),common)
|
return (self.get_uncle(secondRel), common)
|
||||||
else:
|
else:
|
||||||
return (self.get_aunt(secondRel),common)
|
return (self.get_aunt(secondRel), common)
|
||||||
elif secondRel == 1:
|
elif secondRel == 1:
|
||||||
if other_person.get_gender() == gen.lib.Person.MALE:
|
if other_person.get_gender() == gen.lib.Person.MALE:
|
||||||
return (self.get_nephew(firstRel-1),common)
|
return (self.get_nephew(firstRel-1), common)
|
||||||
else:
|
else:
|
||||||
return (self.get_niece(firstRel-1),common)
|
return (self.get_niece(firstRel-1), common)
|
||||||
else:
|
else:
|
||||||
if other_person.get_gender() == gen.lib.Person.MALE:
|
if other_person.get_gender() == gen.lib.Person.MALE:
|
||||||
return (self.get_male_cousin(firstRel-1, secondRel-1), common)
|
return (self.get_male_cousin(firstRel-1, secondRel-1), common)
|
||||||
@ -507,12 +512,12 @@ if __name__ == "__main__":
|
|||||||
# Test function. Call it as follows from the command line (so as to find
|
# Test function. Call it as follows from the command line (so as to find
|
||||||
# imported modules):
|
# imported modules):
|
||||||
# export PYTHONPATH=/path/to/gramps/src
|
# export PYTHONPATH=/path/to/gramps/src
|
||||||
# python src/plugins/rel_it.py
|
# python src/plugins/rel/rel_it.py
|
||||||
|
|
||||||
"""TRANSLATORS, copy this if statement at the bottom of your
|
"""TRANSLATORS, copy this if statement at the bottom of your
|
||||||
rel_xx.py module, and test your work with:
|
rel_xx.py module, and test your work with:
|
||||||
python src/plugins/rel_xx.py
|
python src/plugins/rel/rel_xx.py
|
||||||
"""
|
"""
|
||||||
from Relationship import test
|
from Relationship import test
|
||||||
rc = RelationshipCalculator()
|
RC = RelationshipCalculator()
|
||||||
test(rc, True)
|
test(RC, True)
|
||||||
|
@ -21,7 +21,9 @@
|
|||||||
#
|
#
|
||||||
|
|
||||||
# $Id$
|
# $Id$
|
||||||
|
"""
|
||||||
|
Specific classes for relationships.
|
||||||
|
"""
|
||||||
#-------------------------------------------------------------------------
|
#-------------------------------------------------------------------------
|
||||||
#
|
#
|
||||||
# GRAMPS modules
|
# GRAMPS modules
|
||||||
@ -242,12 +244,15 @@ _uncle_level = [ "",
|
|||||||
#
|
#
|
||||||
#-------------------------------------------------------------------------
|
#-------------------------------------------------------------------------
|
||||||
class RelationshipCalculator(Relationship.RelationshipCalculator):
|
class RelationshipCalculator(Relationship.RelationshipCalculator):
|
||||||
|
"""
|
||||||
|
RelationshipCalculator Class
|
||||||
|
"""
|
||||||
|
|
||||||
#sibling strings
|
#sibling strings
|
||||||
STEP= 'stief'
|
STEP = 'stief'
|
||||||
HALF = 'half'
|
HALF = 'half'
|
||||||
|
|
||||||
INLAW='aangetrouwde '
|
INLAW = 'aangetrouwde '
|
||||||
|
|
||||||
def __init__(self):
|
def __init__(self):
|
||||||
Relationship.RelationshipCalculator.__init__(self)
|
Relationship.RelationshipCalculator.__init__(self)
|
||||||
@ -275,7 +280,7 @@ class RelationshipCalculator(Relationship.RelationshipCalculator):
|
|||||||
return "verre %s%sachterkleinzoon (%d generaties)" % (inlaw,
|
return "verre %s%sachterkleinzoon (%d generaties)" % (inlaw,
|
||||||
step, level)
|
step, level)
|
||||||
|
|
||||||
def _get_mother(self,level, step='', inlaw=''):
|
def _get_mother(self, level, step='', inlaw=''):
|
||||||
"""Internal Dutch method to create relation string
|
"""Internal Dutch method to create relation string
|
||||||
"""
|
"""
|
||||||
if level > len(_mother_level)-1:
|
if level > len(_mother_level)-1:
|
||||||
@ -542,12 +547,12 @@ if __name__ == "__main__":
|
|||||||
# Test function. Call it as follows from the command line (so as to find
|
# Test function. Call it as follows from the command line (so as to find
|
||||||
# imported modules):
|
# imported modules):
|
||||||
# export PYTHONPATH=/path/to/gramps/src
|
# export PYTHONPATH=/path/to/gramps/src
|
||||||
# python src/plugins/rel_nl.py
|
# python src/plugins/rel/rel_nl.py
|
||||||
|
|
||||||
"""TRANSLATORS, copy this if statement at the bottom of your
|
"""TRANSLATORS, copy this if statement at the bottom of your
|
||||||
rel_xx.py module, and test your work with:
|
rel_xx.py module, and test your work with:
|
||||||
python src/plugins/rel_xx.py
|
python src/plugins/rel/rel_xx.py
|
||||||
"""
|
"""
|
||||||
from Relationship import test
|
from Relationship import test
|
||||||
rc = RelationshipCalculator()
|
RC = RelationshipCalculator()
|
||||||
test(rc, True)
|
test(RC, True)
|
||||||
|
@ -25,7 +25,9 @@
|
|||||||
|
|
||||||
# Written by Alex Roitman, largely based on Relationship.py by Don Allingham
|
# Written by Alex Roitman, largely based on Relationship.py by Don Allingham
|
||||||
# and on valuable input from Frode Jemtland
|
# and on valuable input from Frode Jemtland
|
||||||
|
"""
|
||||||
|
Norwegian-Specific classes for relationships.
|
||||||
|
"""
|
||||||
#-------------------------------------------------------------------------
|
#-------------------------------------------------------------------------
|
||||||
#
|
#
|
||||||
# GRAMPS modules
|
# GRAMPS modules
|
||||||
@ -35,10 +37,6 @@
|
|||||||
import gen.lib
|
import gen.lib
|
||||||
import Relationship
|
import Relationship
|
||||||
|
|
||||||
#-------------------------------------------------------------------------
|
|
||||||
#
|
|
||||||
# Norwegian-specific definitions of relationships
|
|
||||||
#
|
|
||||||
#-------------------------------------------------------------------------
|
#-------------------------------------------------------------------------
|
||||||
|
|
||||||
_cousin_level = [ "", "", #brother/sister, fetter/kusine -- these are taken care of separately
|
_cousin_level = [ "", "", #brother/sister, fetter/kusine -- these are taken care of separately
|
||||||
@ -49,25 +47,28 @@ _cousin_level = [ "", "", #brother/sister, fetter/kusine -- these are taken care
|
|||||||
"femtenmenning", "sekstenmenning", "syttenmenning",
|
"femtenmenning", "sekstenmenning", "syttenmenning",
|
||||||
"attenmenning", "nittenmenning", "tyvemenning" ]
|
"attenmenning", "nittenmenning", "tyvemenning" ]
|
||||||
|
|
||||||
_cousin_terms = _cousin_level + ["fetter","kusine"]
|
_cousin_terms = _cousin_level + ["fetter", "kusine"]
|
||||||
#-------------------------------------------------------------------------
|
#-------------------------------------------------------------------------
|
||||||
#
|
#
|
||||||
#
|
#
|
||||||
#
|
#
|
||||||
#-------------------------------------------------------------------------
|
#-------------------------------------------------------------------------
|
||||||
class RelationshipCalculator(Relationship.RelationshipCalculator):
|
class RelationshipCalculator(Relationship.RelationshipCalculator):
|
||||||
|
"""
|
||||||
|
RelationshipCalculator Class
|
||||||
|
"""
|
||||||
|
|
||||||
def __init__(self):
|
def __init__(self):
|
||||||
Relationship.RelationshipCalculator.__init__(self)
|
Relationship.RelationshipCalculator.__init__(self)
|
||||||
|
|
||||||
def get_parents(self,level):
|
def get_parents(self, level):
|
||||||
if level == 0:
|
if level == 0:
|
||||||
return "forelder"
|
return "forelder"
|
||||||
else:
|
else:
|
||||||
return "ane i %d-te generationen" % (level+1)
|
return "ane i %d-te generationen" % (level+1)
|
||||||
|
|
||||||
def get_cousin(self,level):
|
def get_cousin(self, level):
|
||||||
if level>len(_cousin_level)-1:
|
if level > len(_cousin_level)-1:
|
||||||
# FIXME: use Norwegian term term here,
|
# FIXME: use Norwegian term term here,
|
||||||
# UPDATED by Frode: unsure about the expretion "en fjern slektning", should it be just "fjern slektning".
|
# UPDATED by Frode: unsure about the expretion "en fjern slektning", should it be just "fjern slektning".
|
||||||
# Need to see it used in the program to get the understanding.
|
# Need to see it used in the program to get the understanding.
|
||||||
@ -75,7 +76,7 @@ class RelationshipCalculator(Relationship.RelationshipCalculator):
|
|||||||
else:
|
else:
|
||||||
return _cousin_level[level]
|
return _cousin_level[level]
|
||||||
|
|
||||||
def pair_up(self,rel_list):
|
def pair_up(self, rel_list):
|
||||||
result = []
|
result = []
|
||||||
item = ""
|
item = ""
|
||||||
for word in rel_list[:]:
|
for word in rel_list[:]:
|
||||||
@ -99,7 +100,7 @@ class RelationshipCalculator(Relationship.RelationshipCalculator):
|
|||||||
gen_result = [ item + 's' for item in result[0:-1] ]
|
gen_result = [ item + 's' for item in result[0:-1] ]
|
||||||
return ' '.join(gen_result+result[-1:])
|
return ' '.join(gen_result+result[-1:])
|
||||||
|
|
||||||
def get_direct_ancestor(self,person,rel_string):
|
def get_direct_ancestor(self, person, rel_string):
|
||||||
result = []
|
result = []
|
||||||
for ix in range(len(rel_string)):
|
for ix in range(len(rel_string)):
|
||||||
if rel_string[ix] == 'f':
|
if rel_string[ix] == 'f':
|
||||||
@ -108,9 +109,9 @@ class RelationshipCalculator(Relationship.RelationshipCalculator):
|
|||||||
result.append('mor')
|
result.append('mor')
|
||||||
return self.pair_up(result)
|
return self.pair_up(result)
|
||||||
|
|
||||||
def get_direct_descendant(self,person,rel_string):
|
def get_direct_descendant(self, person, rel_string):
|
||||||
result = []
|
result = []
|
||||||
for ix in range(len(rel_string)-2,-1,-1):
|
for ix in range(len(rel_string)-2, -1, -1):
|
||||||
if rel_string[ix] == 'f':
|
if rel_string[ix] == 'f':
|
||||||
result.append('sønne')
|
result.append('sønne')
|
||||||
else:
|
else:
|
||||||
@ -121,7 +122,7 @@ class RelationshipCalculator(Relationship.RelationshipCalculator):
|
|||||||
result.append('datter')
|
result.append('datter')
|
||||||
return self.pair_up(result)
|
return self.pair_up(result)
|
||||||
|
|
||||||
def get_ancestors_cousin(self,person,rel_string_long,rel_string_short):
|
def get_ancestors_cousin(self, person, rel_string_long, rel_string_short):
|
||||||
result = []
|
result = []
|
||||||
removed = len(rel_string_long)-len(rel_string_short)
|
removed = len(rel_string_long)-len(rel_string_short)
|
||||||
level = len(rel_string_short)-1
|
level = len(rel_string_short)-1
|
||||||
@ -136,11 +137,11 @@ class RelationshipCalculator(Relationship.RelationshipCalculator):
|
|||||||
result.append('fetter')
|
result.append('fetter')
|
||||||
else:
|
else:
|
||||||
result.append('kusine')
|
result.append('kusine')
|
||||||
main_string = self.get_two_way_rel(person,rel_string_short,rel_string_long)
|
main_string = self.get_two_way_rel(person, rel_string_short, rel_string_long)
|
||||||
aux_string = self.pair_up(result)
|
aux_string = self.pair_up(result)
|
||||||
return "%s (%s)" % (main_string,aux_string)
|
return "%s (%s)" % (main_string, aux_string)
|
||||||
|
|
||||||
def get_cousins_descendant(self,person,rel_string_long,rel_string_short):
|
def get_cousins_descendant(self, person, rel_string_long, rel_string_short):
|
||||||
result = []
|
result = []
|
||||||
aux_string = ""
|
aux_string = ""
|
||||||
removed = len(rel_string_long)-len(rel_string_short)-1
|
removed = len(rel_string_long)-len(rel_string_short)-1
|
||||||
@ -156,7 +157,7 @@ class RelationshipCalculator(Relationship.RelationshipCalculator):
|
|||||||
result.append('bror')
|
result.append('bror')
|
||||||
else:
|
else:
|
||||||
result.append('søster')
|
result.append('søster')
|
||||||
for ix in range(removed-1,-1,-1):
|
for ix in range(removed-1, -1, -1):
|
||||||
if rel_string_long[ix] == 'f':
|
if rel_string_long[ix] == 'f':
|
||||||
result.append('sønn')
|
result.append('sønn')
|
||||||
else:
|
else:
|
||||||
@ -165,12 +166,12 @@ class RelationshipCalculator(Relationship.RelationshipCalculator):
|
|||||||
result.append('sønn')
|
result.append('sønn')
|
||||||
else:
|
else:
|
||||||
result.append('datter')
|
result.append('datter')
|
||||||
main_string = self.get_two_way_rel(person,rel_string_long,rel_string_short)
|
main_string = self.get_two_way_rel(person, rel_string_long, rel_string_short)
|
||||||
if level:
|
if level:
|
||||||
aux_string = " (%s)" % self.pair_up(result)
|
aux_string = " (%s)" % self.pair_up(result)
|
||||||
return "%s%s" % (main_string,aux_string)
|
return "%s%s" % (main_string, aux_string)
|
||||||
|
|
||||||
def get_ancestors_brother(self,rel_string):
|
def get_ancestors_brother(self, rel_string):
|
||||||
result = []
|
result = []
|
||||||
for ix in range(len(rel_string)-1):
|
for ix in range(len(rel_string)-1):
|
||||||
if rel_string[ix] == 'f':
|
if rel_string[ix] == 'f':
|
||||||
@ -180,7 +181,7 @@ class RelationshipCalculator(Relationship.RelationshipCalculator):
|
|||||||
result.append('bror')
|
result.append('bror')
|
||||||
return self.pair_up(result)
|
return self.pair_up(result)
|
||||||
|
|
||||||
def get_ancestors_sister(self,rel_string):
|
def get_ancestors_sister(self, rel_string):
|
||||||
result = []
|
result = []
|
||||||
for ix in range(len(rel_string)-1):
|
for ix in range(len(rel_string)-1):
|
||||||
if rel_string[ix] == 'f':
|
if rel_string[ix] == 'f':
|
||||||
@ -190,7 +191,7 @@ class RelationshipCalculator(Relationship.RelationshipCalculator):
|
|||||||
result.append('søster')
|
result.append('søster')
|
||||||
return self.pair_up(result)
|
return self.pair_up(result)
|
||||||
|
|
||||||
def get_two_way_rel(self,person,first_rel_string,second_rel_string):
|
def get_two_way_rel(self, person, first_rel_string, second_rel_string):
|
||||||
result = []
|
result = []
|
||||||
for ix in range(len(second_rel_string)-1):
|
for ix in range(len(second_rel_string)-1):
|
||||||
if second_rel_string[ix] == 'f':
|
if second_rel_string[ix] == 'f':
|
||||||
@ -202,7 +203,7 @@ class RelationshipCalculator(Relationship.RelationshipCalculator):
|
|||||||
result.append('bror')
|
result.append('bror')
|
||||||
else:
|
else:
|
||||||
result.append('søster')
|
result.append('søster')
|
||||||
for ix in range(len(first_rel_string)-3,-1,-1):
|
for ix in range(len(first_rel_string)-3, -1, -1):
|
||||||
if first_rel_string[ix] == 'f':
|
if first_rel_string[ix] == 'f':
|
||||||
result.append('sønne')
|
result.append('sønne')
|
||||||
else:
|
else:
|
||||||
@ -224,20 +225,20 @@ class RelationshipCalculator(Relationship.RelationshipCalculator):
|
|||||||
common = ""
|
common = ""
|
||||||
if not firstRel:
|
if not firstRel:
|
||||||
if not secondRel:
|
if not secondRel:
|
||||||
return ('',common)
|
return ('', common)
|
||||||
else:
|
else:
|
||||||
return (self.get_direct_ancestor(other_person,secondRel),common)
|
return (self.get_direct_ancestor(other_person, secondRel), common)
|
||||||
elif not secondRel:
|
elif not secondRel:
|
||||||
return (self.get_direct_descendant(other_person,firstRel),common)
|
return (self.get_direct_descendant(other_person, firstRel), common)
|
||||||
elif len(firstRel) == 1:
|
elif len(firstRel) == 1:
|
||||||
if other_person == gen.lib.Person.MALE:
|
if other_person == gen.lib.Person.MALE:
|
||||||
return (self.get_ancestors_brother(secondRel),common)
|
return (self.get_ancestors_brother(secondRel), common)
|
||||||
else:
|
else:
|
||||||
return (self.get_ancestors_sister(secondRel),common)
|
return (self.get_ancestors_sister(secondRel), common)
|
||||||
elif len(secondRel) >= len(firstRel):
|
elif len(secondRel) >= len(firstRel):
|
||||||
return (self.get_ancestors_cousin(other_person,secondRel,firstRel),common)
|
return (self.get_ancestors_cousin(other_person, secondRel, firstRel), common)
|
||||||
else:
|
else:
|
||||||
return (self.get_cousins_descendant(other_person,firstRel,secondRel),common)
|
return (self.get_cousins_descendant(other_person, firstRel, secondRel), common)
|
||||||
|
|
||||||
def get_single_relationship_string(self, Ga, Gb, gender_a, gender_b,
|
def get_single_relationship_string(self, Ga, Gb, gender_a, gender_b,
|
||||||
reltocommon_a, reltocommon_b,
|
reltocommon_a, reltocommon_b,
|
||||||
@ -247,7 +248,7 @@ class RelationshipCalculator(Relationship.RelationshipCalculator):
|
|||||||
|
|
||||||
def get_sibling_relationship_string(self, sib_type, gender_a, gender_b,
|
def get_sibling_relationship_string(self, sib_type, gender_a, gender_b,
|
||||||
in_law_a=False, in_law_b=False):
|
in_law_a=False, in_law_b=False):
|
||||||
return self.get_two_way_rel(gender_b,"","")
|
return self.get_two_way_rel(gender_b, "", "")
|
||||||
|
|
||||||
if __name__ == "__main__":
|
if __name__ == "__main__":
|
||||||
|
|
||||||
|
@ -26,9 +26,9 @@
|
|||||||
# PL: Po objaśnienia oznaczania relacji zobacz Relationship.py
|
# PL: Po objaśnienia oznaczania relacji zobacz Relationship.py
|
||||||
# EN: For more information see Relationship.py
|
# EN: For more information see Relationship.py
|
||||||
#
|
#
|
||||||
|
"""
|
||||||
|
Polish-specific definitions of relationships.
|
||||||
|
"""
|
||||||
#-------------------------------------------------------------------------
|
#-------------------------------------------------------------------------
|
||||||
#
|
#
|
||||||
# GRAMPS modules
|
# GRAMPS modules
|
||||||
@ -39,10 +39,6 @@ import gen.lib
|
|||||||
import Relationship
|
import Relationship
|
||||||
|
|
||||||
#-------------------------------------------------------------------------
|
#-------------------------------------------------------------------------
|
||||||
#
|
|
||||||
# Polish-specific definitions of relationships
|
|
||||||
#
|
|
||||||
#-------------------------------------------------------------------------
|
|
||||||
|
|
||||||
|
|
||||||
# określa liczebnik porządkowy
|
# określa liczebnik porządkowy
|
||||||
@ -254,17 +250,13 @@ _niece_level_of_sisters_daughter = [ "", "siostrzenica",
|
|||||||
#-------------------------------------------------------------------------
|
#-------------------------------------------------------------------------
|
||||||
|
|
||||||
class RelationshipCalculator(Relationship.RelationshipCalculator):
|
class RelationshipCalculator(Relationship.RelationshipCalculator):
|
||||||
|
"""
|
||||||
|
RelationshipCalculator Class
|
||||||
|
"""
|
||||||
|
|
||||||
|
|
||||||
def __init__(self):
|
def __init__(self):
|
||||||
Relationship.RelationshipCalculator.__init__(self)
|
Relationship.RelationshipCalculator.__init__(self)
|
||||||
|
|
||||||
|
|
||||||
#--------------------------------------------------
|
|
||||||
#
|
|
||||||
#
|
|
||||||
#
|
|
||||||
#--------------------------------------------------
|
|
||||||
def get_son(self, level, inlaw=''):
|
def get_son(self, level, inlaw=''):
|
||||||
"""
|
"""
|
||||||
Podaje tekst zawierający informację, jak bardzo potomek męski
|
Podaje tekst zawierający informację, jak bardzo potomek męski
|
||||||
@ -273,9 +265,9 @@ class RelationshipCalculator(Relationship.RelationshipCalculator):
|
|||||||
|
|
||||||
# Określ, czy osoba jest przybraną, czy rodzoną
|
# Określ, czy osoba jest przybraną, czy rodzoną
|
||||||
if inlaw == '':
|
if inlaw == '':
|
||||||
t_inlaw =""
|
t_inlaw = ""
|
||||||
else:
|
else:
|
||||||
t_inlaw ="przybrany "
|
t_inlaw = "przybrany "
|
||||||
|
|
||||||
# TODO: dodać rozpoznawanie pasierb/pasierbica
|
# TODO: dodać rozpoznawanie pasierb/pasierbica
|
||||||
if level >= 0 and level < len(_son_level):
|
if level >= 0 and level < len(_son_level):
|
||||||
@ -301,11 +293,11 @@ class RelationshipCalculator(Relationship.RelationshipCalculator):
|
|||||||
# Określ, czy osoba jest przybraną, czy rodzoną
|
# Określ, czy osoba jest przybraną, czy rodzoną
|
||||||
# + stwórz obie formy (męską i żeńską)
|
# + stwórz obie formy (męską i żeńską)
|
||||||
if inlaw == '':
|
if inlaw == '':
|
||||||
t_inlaw =""
|
t_inlaw = ""
|
||||||
t_inlawM =""
|
t_inlawM = ""
|
||||||
else:
|
else:
|
||||||
t_inlaw ="przybrana "
|
t_inlaw = "przybrana "
|
||||||
t_inlawM ="przybrany "
|
t_inlawM = "przybrany "
|
||||||
|
|
||||||
# TODO: dodać rozpoznawanie pasierb/pasierbica
|
# TODO: dodać rozpoznawanie pasierb/pasierbica
|
||||||
if level >= 0 and level < len(_daughter_level):
|
if level >= 0 and level < len(_daughter_level):
|
||||||
@ -328,9 +320,9 @@ class RelationshipCalculator(Relationship.RelationshipCalculator):
|
|||||||
|
|
||||||
# Określ, czy osoba jest przybraną, czy rodzoną
|
# Określ, czy osoba jest przybraną, czy rodzoną
|
||||||
if inlaw == '':
|
if inlaw == '':
|
||||||
t_inlaw =""
|
t_inlaw = ""
|
||||||
else:
|
else:
|
||||||
t_inlaw ="przybrany "
|
t_inlaw = "przybrany "
|
||||||
|
|
||||||
if level == 1:
|
if level == 1:
|
||||||
if inlaw == '' :
|
if inlaw == '' :
|
||||||
@ -350,7 +342,7 @@ class RelationshipCalculator(Relationship.RelationshipCalculator):
|
|||||||
PL: Generuje relację po mieczu/po kądzieli
|
PL: Generuje relację po mieczu/po kądzieli
|
||||||
EN: Generate relation 'by sword' or 'by distaff', polish specific
|
EN: Generate relation 'by sword' or 'by distaff', polish specific
|
||||||
"""
|
"""
|
||||||
if level <=1:
|
if level <= 1:
|
||||||
return ""
|
return ""
|
||||||
|
|
||||||
elif level == 2:
|
elif level == 2:
|
||||||
@ -422,9 +414,9 @@ class RelationshipCalculator(Relationship.RelationshipCalculator):
|
|||||||
(np. ojciec) jest spokrewniony do danej osoby
|
(np. ojciec) jest spokrewniony do danej osoby
|
||||||
"""
|
"""
|
||||||
if inlaw == '':
|
if inlaw == '':
|
||||||
t_inlaw =""
|
t_inlaw = ""
|
||||||
else:
|
else:
|
||||||
t_inlaw ="przybrany "
|
t_inlaw = "przybrany "
|
||||||
|
|
||||||
if level >= 0 and level < len(_father_level):
|
if level >= 0 and level < len(_father_level):
|
||||||
# Jeśli znasz bezpośrednią nazwę relacji, to ją zastosuj
|
# Jeśli znasz bezpośrednią nazwę relacji, to ją zastosuj
|
||||||
@ -460,9 +452,9 @@ class RelationshipCalculator(Relationship.RelationshipCalculator):
|
|||||||
"""
|
"""
|
||||||
|
|
||||||
if inlaw == '':
|
if inlaw == '':
|
||||||
t_inlaw =""
|
t_inlaw = ""
|
||||||
else:
|
else:
|
||||||
t_inlaw ="przybrana "
|
t_inlaw = "przybrana "
|
||||||
|
|
||||||
if level >= 0 and level < len(_mother_level):
|
if level >= 0 and level < len(_mother_level):
|
||||||
# Jeśli znasz bezpośrednią nazwę relacji, to ją zastosuj
|
# Jeśli znasz bezpośrednią nazwę relacji, to ją zastosuj
|
||||||
@ -498,9 +490,9 @@ class RelationshipCalculator(Relationship.RelationshipCalculator):
|
|||||||
"""
|
"""
|
||||||
|
|
||||||
if inlaw == '':
|
if inlaw == '':
|
||||||
t_inlaw =""
|
t_inlaw = ""
|
||||||
else:
|
else:
|
||||||
t_inlaw ="przybrany "
|
t_inlaw = "przybrany "
|
||||||
|
|
||||||
if level == 1:
|
if level == 1:
|
||||||
return t_inlaw + "rodzic"
|
return t_inlaw + "rodzic"
|
||||||
@ -785,26 +777,26 @@ class RelationshipCalculator(Relationship.RelationshipCalculator):
|
|||||||
|
|
||||||
elif Ga > 1 and Gb > 1:
|
elif Ga > 1 and Gb > 1:
|
||||||
if (gender_b == gen.lib.Person.MALE):
|
if (gender_b == gen.lib.Person.MALE):
|
||||||
if Ga==2 and Gb==2:
|
if Ga == 2 and Gb == 2:
|
||||||
rel_str = "kuzyn"
|
rel_str = "kuzyn"
|
||||||
else:
|
else:
|
||||||
rel_str = "daleki kuzyn (%d. stopień pokrewieństwa)" % (Ga+Gb)
|
rel_str = "daleki kuzyn (%d. stopień pokrewieństwa)" % (Ga+Gb)
|
||||||
|
|
||||||
elif (gender_b == gen.lib.Person.FEMALE):
|
elif (gender_b == gen.lib.Person.FEMALE):
|
||||||
if Ga==2 and Gb==2:
|
if Ga == 2 and Gb == 2:
|
||||||
rel_str = "kuzynka"
|
rel_str = "kuzynka"
|
||||||
else:
|
else:
|
||||||
rel_str = "daleka kuzynka (%d. stopień pokrewieństwa)" % (Ga+Gb)
|
rel_str = "daleka kuzynka (%d. stopień pokrewieństwa)" % (Ga+Gb)
|
||||||
|
|
||||||
else:
|
else:
|
||||||
if Ga==2 and Gb==2:
|
if Ga == 2 and Gb == 2:
|
||||||
rel_str = "kuzyn(ka)"
|
rel_str = "kuzyn(ka)"
|
||||||
else:
|
else:
|
||||||
rel_str = "daleki członek rodziny (%d. stopień pokrewieństwa)" % (Ga+Gb)
|
rel_str = "daleki członek rodziny (%d. stopień pokrewieństwa)" % (Ga+Gb)
|
||||||
|
|
||||||
else:
|
else:
|
||||||
# A program should never goes there, but...
|
# A program should never goes there, but...
|
||||||
rel_str ="nieokreślony stopień pokrewieństwa"
|
rel_str = "nieokreślony stopień pokrewieństwa"
|
||||||
|
|
||||||
return rel_str
|
return rel_str
|
||||||
|
|
||||||
@ -883,12 +875,12 @@ if __name__ == "__main__":
|
|||||||
# Test function. Call it as follows from the command line (so as to find
|
# Test function. Call it as follows from the command line (so as to find
|
||||||
# imported modules):
|
# imported modules):
|
||||||
# export PYTHONPATH=/path/to/gramps/src
|
# export PYTHONPATH=/path/to/gramps/src
|
||||||
# python src/plugins/rel_pl.py
|
# python src/plugins/rel/rel_pl.py
|
||||||
|
|
||||||
"""TRANSLATORS, copy this if statement at the bottom of your
|
"""TRANSLATORS, copy this if statement at the bottom of your
|
||||||
rel_xx.py module, and test your work with:
|
rel_xx.py module, and test your work with:
|
||||||
python src/plugins/rel_xx.py
|
python src/plugins/rel/rel_xx.py
|
||||||
"""
|
"""
|
||||||
from Relationship import test
|
from Relationship import test
|
||||||
rc = RelationshipCalculator()
|
RC = RelationshipCalculator()
|
||||||
test(rc, True)
|
test(RC, True)
|
||||||
|
@ -24,7 +24,9 @@
|
|||||||
# Based on the Spanish version by Julio Sanchez <julio.sanchez@gmail.com>
|
# Based on the Spanish version by Julio Sanchez <julio.sanchez@gmail.com>
|
||||||
|
|
||||||
# $Id:rel_pt.py 9912 2008-01-22 09:17:46Z acraphae $
|
# $Id:rel_pt.py 9912 2008-01-22 09:17:46Z acraphae $
|
||||||
|
"""
|
||||||
|
Specific classes for relationships.
|
||||||
|
"""
|
||||||
#-------------------------------------------------------------------------
|
#-------------------------------------------------------------------------
|
||||||
#
|
#
|
||||||
# GRAMPS modules
|
# GRAMPS modules
|
||||||
@ -110,133 +112,136 @@ _niece_level = [ "", "sobrinha", "sobrinha neta", "sobrinha bisneta", ]
|
|||||||
#
|
#
|
||||||
#-------------------------------------------------------------------------
|
#-------------------------------------------------------------------------
|
||||||
class RelationshipCalculator(Relationship.RelationshipCalculator):
|
class RelationshipCalculator(Relationship.RelationshipCalculator):
|
||||||
|
"""
|
||||||
|
RelationshipCalculator Class
|
||||||
|
"""
|
||||||
|
|
||||||
def __init__(self):
|
def __init__(self):
|
||||||
Relationship.RelationshipCalculator.__init__(self)
|
Relationship.RelationshipCalculator.__init__(self)
|
||||||
|
|
||||||
def get_male_cousin(self,level):
|
def get_male_cousin(self, level):
|
||||||
if level<len(_level_name_male):
|
if level < len(_level_name_male):
|
||||||
return "%s primo" % (_level_name_male[level])
|
return "%s primo" % (_level_name_male[level])
|
||||||
else:
|
else:
|
||||||
return "%dº primo" % level
|
return "%dº primo" % level
|
||||||
|
|
||||||
def get_female_cousin(self,level):
|
def get_female_cousin(self, level):
|
||||||
if level<len(_level_name_female):
|
if level < len(_level_name_female):
|
||||||
return "%s prima" % (_level_name_female[level])
|
return "%s prima" % (_level_name_female[level])
|
||||||
else:
|
else:
|
||||||
return "%dª prima" % level
|
return "%dª prima" % level
|
||||||
|
|
||||||
def get_distant_uncle(self,level):
|
def get_distant_uncle(self, level):
|
||||||
if level<len(_level_name_male):
|
if level < len(_level_name_male):
|
||||||
return "%s tio" % (_level_name_male[level])
|
return "%s tio" % (_level_name_male[level])
|
||||||
else:
|
else:
|
||||||
return "%dº tio" % level
|
return "%dº tio" % level
|
||||||
|
|
||||||
def get_distant_aunt(self,level):
|
def get_distant_aunt(self, level):
|
||||||
if level<len(_level_name_female):
|
if level < len(_level_name_female):
|
||||||
return "%s tia" % (_level_name_female[level])
|
return "%s tia" % (_level_name_female[level])
|
||||||
else:
|
else:
|
||||||
return "%dª tia" % level
|
return "%dª tia" % level
|
||||||
|
|
||||||
def get_distant_nephew(self,level):
|
def get_distant_nephew(self, level):
|
||||||
if level<len(_level_name_male):
|
if level < len(_level_name_male):
|
||||||
return "%s sobrinho" % (_level_name_male[level])
|
return "%s sobrinho" % (_level_name_male[level])
|
||||||
else:
|
else:
|
||||||
return "%dº sobrinho" % level
|
return "%dº sobrinho" % level
|
||||||
|
|
||||||
def get_distant_nieve(self,level):
|
def get_distant_nieve(self, level):
|
||||||
if level<len(_level_name_female):
|
if level < len(_level_name_female):
|
||||||
return "%s sobrinha" % (_level_name_female[level])
|
return "%s sobrinha" % (_level_name_female[level])
|
||||||
else:
|
else:
|
||||||
return "%dª sobrinha" % level
|
return "%dª sobrinha" % level
|
||||||
|
|
||||||
def get_male_relative(self,level1,level2):
|
def get_male_relative(self, level1, level2):
|
||||||
if level1<len(_level_name_male_a):
|
if level1 < len(_level_name_male_a):
|
||||||
level1_str = _level_name_male_a[level1]
|
level1_str = _level_name_male_a[level1]
|
||||||
else:
|
else:
|
||||||
level1_str = "%dº" % level1
|
level1_str = "%dº" % level1
|
||||||
if level2<len(_level_name_male_a):
|
if level2 < len(_level_name_male_a):
|
||||||
level2_str = _level_name_male_a[level2]
|
level2_str = _level_name_male_a[level2]
|
||||||
else:
|
else:
|
||||||
level2_str = "%dº" % level2
|
level2_str = "%dº" % level2
|
||||||
level = level1 + level2
|
level = level1 + level2
|
||||||
if level<len(_level_name_male_a):
|
if level < len(_level_name_male_a):
|
||||||
level_str = _level_name_male_a[level]
|
level_str = _level_name_male_a[level]
|
||||||
else:
|
else:
|
||||||
level_str = "%dº" % level
|
level_str = "%dº" % level
|
||||||
return "parente em %s grau (%s com %s)" % (level_str,level1_str,level2_str)
|
return "parente em %s grau (%s com %s)" % (level_str, level1_str, level2_str)
|
||||||
|
|
||||||
def get_female_relative(self,level1,level2):
|
def get_female_relative(self, level1, level2):
|
||||||
return self.get_male_relative(level1,level2)
|
return self.get_male_relative(level1, level2)
|
||||||
|
|
||||||
def get_parents(self,level):
|
def get_parents(self, level):
|
||||||
if level<len(_parents_level):
|
if level < len(_parents_level):
|
||||||
return _parents_level[level]
|
return _parents_level[level]
|
||||||
elif (level-1)<len(_level_name_plural):
|
elif (level-1) < len(_level_name_plural):
|
||||||
return "%s avós" % (_level_name_plural[level-1])
|
return "%s avós" % (_level_name_plural[level-1])
|
||||||
else:
|
else:
|
||||||
return "%dº avós" % (level-1)
|
return "%dº avós" % (level-1)
|
||||||
|
|
||||||
def get_father(self,level):
|
def get_father(self, level):
|
||||||
if level<len(_father_level):
|
if level < len(_father_level):
|
||||||
return _father_level[level]
|
return _father_level[level]
|
||||||
elif (level-1)<len(_level_name_male_a):
|
elif (level-1) < len(_level_name_male_a):
|
||||||
return "%s avô" % (_level_name_male_a[level-1])
|
return "%s avô" % (_level_name_male_a[level-1])
|
||||||
else:
|
else:
|
||||||
return "%dº avô" % (level-1)
|
return "%dº avô" % (level-1)
|
||||||
|
|
||||||
def get_son(self,level):
|
def get_son(self, level):
|
||||||
if level<len(_son_level):
|
if level < len(_son_level):
|
||||||
return _son_level[level]
|
return _son_level[level]
|
||||||
elif (level-1)<len(_level_name_male_a):
|
elif (level-1) < len(_level_name_male_a):
|
||||||
return "%s neto" % (_level_name_male_a[level-1])
|
return "%s neto" % (_level_name_male_a[level-1])
|
||||||
else:
|
else:
|
||||||
return "%dº neto" % (level-1)
|
return "%dº neto" % (level-1)
|
||||||
|
|
||||||
def get_mother(self,level):
|
def get_mother(self, level):
|
||||||
if level<len(_mother_level):
|
if level < len(_mother_level):
|
||||||
return _mother_level[level]
|
return _mother_level[level]
|
||||||
elif (level-1)<len(_level_name_female):
|
elif (level-1)<len(_level_name_female):
|
||||||
return "%s avó" % (_level_name_female[level-1])
|
return "%s avó" % (_level_name_female[level-1])
|
||||||
else:
|
else:
|
||||||
return "%dª avó" % (level-1)
|
return "%dª avó" % (level-1)
|
||||||
|
|
||||||
def get_daughter(self,level):
|
def get_daughter(self, level):
|
||||||
if level<len(_daughter_level):
|
if level < len(_daughter_level):
|
||||||
return _daughter_level[level]
|
return _daughter_level[level]
|
||||||
elif (level-1)<len(_level_name_female):
|
elif (level-1) < len(_level_name_female):
|
||||||
return "%s neta" % (_level_name_female[level-1])
|
return "%s neta" % (_level_name_female[level-1])
|
||||||
else:
|
else:
|
||||||
return "%dª neta" % (level-1)
|
return "%dª neta" % (level-1)
|
||||||
|
|
||||||
def get_aunt(self,level):
|
def get_aunt(self, level):
|
||||||
if level<len(_sister_level):
|
if level < len(_sister_level):
|
||||||
return _sister_level[level]
|
return _sister_level[level]
|
||||||
elif (level-2)<len(_level_name_female):
|
elif (level-2) < len(_level_name_female):
|
||||||
return "%s tia avó" % (_level_name_female[level-2])
|
return "%s tia avó" % (_level_name_female[level-2])
|
||||||
else:
|
else:
|
||||||
return "%dª tia avó" % (level-2)
|
return "%dª tia avó" % (level-2)
|
||||||
|
|
||||||
def get_uncle(self,level):
|
def get_uncle(self, level):
|
||||||
if level<len(_brother_level):
|
if level < len(_brother_level):
|
||||||
return _brother_level[level]
|
return _brother_level[level]
|
||||||
elif (level-2)<len(_level_name_male_a):
|
elif (level-2) < len(_level_name_male_a):
|
||||||
return "%s tio avô" % (_level_name_male_a[level-2])
|
return "%s tio avô" % (_level_name_male_a[level-2])
|
||||||
else:
|
else:
|
||||||
return "%dº tio avô" % (level-2)
|
return "%dº tio avô" % (level-2)
|
||||||
|
|
||||||
def get_nephew(self,level):
|
def get_nephew(self, level):
|
||||||
if level<len(_nephew_level):
|
if level < len(_nephew_level):
|
||||||
return _nephew_level[level]
|
return _nephew_level[level]
|
||||||
elif (level-1)<len(_level_name_male_a):
|
elif (level-1) < len(_level_name_male_a):
|
||||||
return "%s sobrinho neto" % (_level_name_male_a[level-1])
|
return "%s sobrinho neto" % (_level_name_male_a[level-1])
|
||||||
else:
|
else:
|
||||||
return "%dº sobrinho neto" % (level-1)
|
return "%dº sobrinho neto" % (level-1)
|
||||||
|
|
||||||
def get_niece(self,level):
|
def get_niece(self, level):
|
||||||
if level<len(_niece_level):
|
if level < len(_niece_level):
|
||||||
return _niece_level[level]
|
return _niece_level[level]
|
||||||
elif (level-1)<len(_level_name_female):
|
elif (level-1) < len(_level_name_female):
|
||||||
return "%s sobrinha neta" % (_level_name_female[level-1])
|
return "%s sobrinha neta" % (_level_name_female[level-1])
|
||||||
else:
|
else:
|
||||||
return "%dª sobrinha neta" % (level-1)
|
return "%dª sobrinha neta" % (level-1)
|
||||||
@ -244,80 +249,80 @@ class RelationshipCalculator(Relationship.RelationshipCalculator):
|
|||||||
def get_relationship(self, orig_person, other_person):
|
def get_relationship(self, orig_person, other_person):
|
||||||
"""
|
"""
|
||||||
returns a string representing the relationshp between the two people,
|
returns a string representing the relationshp between the two people,
|
||||||
along with a list of common ancestors (typically father,mother)
|
along with a list of common ancestors (typically father, mother)
|
||||||
"""
|
"""
|
||||||
|
|
||||||
if orig_person is None:
|
if orig_person is None:
|
||||||
return ("indefinido",[])
|
return ("indefinido", [])
|
||||||
|
|
||||||
if orig_person.get_handle() == other_person.get_handle():
|
if orig_person.get_handle() == other_person.get_handle():
|
||||||
return ('', [])
|
return ('', [])
|
||||||
|
|
||||||
is_spouse = self.is_spouse(orig_person, other_person)
|
is_spouse = self.is_spouse(orig_person, other_person)
|
||||||
if is_spouse:
|
if is_spouse:
|
||||||
return (is_spouse,[])
|
return (is_spouse, [])
|
||||||
|
|
||||||
#get_relationship_distance changed, first data is relation to
|
#get_relationship_distance changed, first data is relation to
|
||||||
#orig person, apperently secondRel in this function
|
#orig person, apperently secondRel in this function
|
||||||
(secondRel,firstRel,common) = self.get_relationship_distance(orig_person, other_person)
|
(secondRel, firstRel, common) = self.get_relationship_distance(orig_person, other_person)
|
||||||
|
|
||||||
if isinstance(common, basestring):
|
if isinstance(common, basestring):
|
||||||
return (common,[])
|
return (common, [])
|
||||||
elif common:
|
elif common:
|
||||||
person_handle = common[0]
|
person_handle = common[0]
|
||||||
else:
|
else:
|
||||||
return ("",[])
|
return ("", [])
|
||||||
|
|
||||||
firstRel = len(firstRel)
|
firstRel = len(firstRel)
|
||||||
secondRel = len(secondRel)
|
secondRel = len(secondRel)
|
||||||
|
|
||||||
if firstRel == 0:
|
if firstRel == 0:
|
||||||
if secondRel == 0:
|
if secondRel == 0:
|
||||||
return ('',common)
|
return ('', common)
|
||||||
elif other_person.get_gender() == gen.lib.Person.MALE:
|
elif other_person.get_gender() == gen.lib.Person.MALE:
|
||||||
return (self.get_father(secondRel),common)
|
return (self.get_father(secondRel), common)
|
||||||
else:
|
else:
|
||||||
return (self.get_mother(secondRel),common)
|
return (self.get_mother(secondRel), common)
|
||||||
elif secondRel == 0:
|
elif secondRel == 0:
|
||||||
if other_person.get_gender() == gen.lib.Person.MALE:
|
if other_person.get_gender() == gen.lib.Person.MALE:
|
||||||
return (self.get_son(firstRel),common)
|
return (self.get_son(firstRel), common)
|
||||||
else:
|
else:
|
||||||
return (self.get_daughter(firstRel),common)
|
return (self.get_daughter(firstRel), common)
|
||||||
elif firstRel == 1:
|
elif firstRel == 1:
|
||||||
if other_person.get_gender() == gen.lib.Person.MALE:
|
if other_person.get_gender() == gen.lib.Person.MALE:
|
||||||
return (self.get_uncle(secondRel),common)
|
return (self.get_uncle(secondRel), common)
|
||||||
else:
|
else:
|
||||||
return (self.get_aunt(secondRel),common)
|
return (self.get_aunt(secondRel), common)
|
||||||
elif secondRel == 1:
|
elif secondRel == 1:
|
||||||
if other_person.get_gender() == gen.lib.Person.MALE:
|
if other_person.get_gender() == gen.lib.Person.MALE:
|
||||||
return (self.get_nephew(firstRel-1),common)
|
return (self.get_nephew(firstRel-1), common)
|
||||||
else:
|
else:
|
||||||
return (self.get_niece(firstRel-1),common)
|
return (self.get_niece(firstRel-1), common)
|
||||||
elif firstRel == secondRel == 2:
|
elif firstRel == secondRel == 2:
|
||||||
if other_person.get_gender() == gen.lib.Person.MALE:
|
if other_person.get_gender() == gen.lib.Person.MALE:
|
||||||
return ('primo irmão',common)
|
return ('primo irmão', common)
|
||||||
else:
|
else:
|
||||||
return ('prima irmã',common)
|
return ('prima irmã', common)
|
||||||
elif firstRel == secondRel:
|
elif firstRel == secondRel:
|
||||||
if other_person.get_gender() == gen.lib.Person.MALE:
|
if other_person.get_gender() == gen.lib.Person.MALE:
|
||||||
return (self.get_male_cousin(firstRel-1),common)
|
return (self.get_male_cousin(firstRel-1), common)
|
||||||
else:
|
else:
|
||||||
return (self.get_female_cousin(firstRel-1),common)
|
return (self.get_female_cousin(firstRel-1), common)
|
||||||
elif firstRel == secondRel+1:
|
elif firstRel == secondRel+1:
|
||||||
if other_person.get_gender() == gen.lib.Person.MALE:
|
if other_person.get_gender() == gen.lib.Person.MALE:
|
||||||
return (self.get_distant_nephew(secondRel),common)
|
return (self.get_distant_nephew(secondRel), common)
|
||||||
else:
|
else:
|
||||||
return (self.get_distant_niece(secondRel),common)
|
return (self.get_distant_niece(secondRel), common)
|
||||||
elif firstRel+1 == secondRel:
|
elif firstRel+1 == secondRel:
|
||||||
if other_person.get_gender() == gen.lib.Person.MALE:
|
if other_person.get_gender() == gen.lib.Person.MALE:
|
||||||
return (self.get_distant_uncle(firstRel),common)
|
return (self.get_distant_uncle(firstRel), common)
|
||||||
else:
|
else:
|
||||||
return (self.get_distant_aunt(firstRel),common)
|
return (self.get_distant_aunt(firstRel), common)
|
||||||
else:
|
else:
|
||||||
if other_person.get_gender() == gen.lib.Person.MALE:
|
if other_person.get_gender() == gen.lib.Person.MALE:
|
||||||
return (self.get_male_relative(firstRel,secondRel),common)
|
return (self.get_male_relative(firstRel, secondRel), common)
|
||||||
else:
|
else:
|
||||||
return (self.get_female_relative(firstRel,secondRel),common)
|
return (self.get_female_relative(firstRel, secondRel), common)
|
||||||
|
|
||||||
if __name__ == "__main__":
|
if __name__ == "__main__":
|
||||||
|
|
||||||
|
@ -24,7 +24,9 @@
|
|||||||
# $Id:rel_ru.py 9912 2008-01-22 09:17:46Z acraphae $
|
# $Id:rel_ru.py 9912 2008-01-22 09:17:46Z acraphae $
|
||||||
|
|
||||||
# Written by Alex Roitman, largely based on Relationship.py by Don Allingham.
|
# Written by Alex Roitman, largely based on Relationship.py by Don Allingham.
|
||||||
|
"""
|
||||||
|
Russian-specific definitions of relationships
|
||||||
|
"""
|
||||||
#-------------------------------------------------------------------------
|
#-------------------------------------------------------------------------
|
||||||
#
|
#
|
||||||
# GRAMPS modules
|
# GRAMPS modules
|
||||||
@ -34,107 +36,263 @@
|
|||||||
import gen.lib
|
import gen.lib
|
||||||
import Relationship
|
import Relationship
|
||||||
|
|
||||||
#-------------------------------------------------------------------------
|
|
||||||
#
|
|
||||||
# Russian-specific definitions of relationships
|
|
||||||
#
|
|
||||||
#-------------------------------------------------------------------------
|
#-------------------------------------------------------------------------
|
||||||
|
|
||||||
_parents_level = [ u"", u"родители",
|
_parents_level = [
|
||||||
u"дедушки/бабушки", u"прадедушки/прабабушки", u"прапрадедушки/прапрабабушки (5 поколение)",
|
u"",
|
||||||
u"прапрапрадедушки/прапрапрабабушки (6 поколение)", u"прапрапрапрадедушки/прапрапрапрабабушки (7 поколение)",
|
u"родители",
|
||||||
|
u"дедушки/бабушки",
|
||||||
|
u"прадедушки/прабабушки",
|
||||||
|
u"прапрадедушки/прапрабабушки (5 поколение)",
|
||||||
|
u"прапрапрадедушки/прапрапрабабушки (6 поколение)",
|
||||||
|
u"прапрапрапрадедушки/прапрапрапрабабушки (7 поколение)",
|
||||||
u"прапрапрапрапрадедушки/прапрапрапрапрабабушки (8 поколение)",
|
u"прапрапрапрапрадедушки/прапрапрапрапрабабушки (8 поколение)",
|
||||||
]
|
]
|
||||||
|
|
||||||
_male_cousin_level = [
|
_male_cousin_level = [
|
||||||
u"", u"двоюродный", u"троюродный", u"четвероюродный",
|
u"",
|
||||||
u"пятиюродный", u"шестиюродный", u"семиюродный", u"восьмиюродный",
|
u"двоюродный",
|
||||||
u"девятиюродный", u"десятиюродный", u"одиннацатиюродный", u"двенадцатиюродный",
|
u"троюродный",
|
||||||
u"тринадцатиюродный", u"четырнадцатиюродный", u"пятнадцатиюродный", u"шестнадцатиюродный",
|
u"четвероюродный",
|
||||||
u"семнадцатиюродный", u"восемнадцатиюродный", u"девятнадцатиюродный", u"двадцатиюродный" ]
|
u"пятиюродный",
|
||||||
|
u"шестиюродный",
|
||||||
|
u"семиюродный",
|
||||||
|
u"восьмиюродный",
|
||||||
|
u"девятиюродный",
|
||||||
|
u"десятиюродный",
|
||||||
|
u"одиннацатиюродный",
|
||||||
|
u"двенадцатиюродный",
|
||||||
|
u"тринадцатиюродный",
|
||||||
|
u"четырнадцатиюродный",
|
||||||
|
u"пятнадцатиюродный",
|
||||||
|
u"шестнадцатиюродный",
|
||||||
|
u"семнадцатиюродный",
|
||||||
|
u"восемнадцатиюродный",
|
||||||
|
u"девятнадцатиюродный",
|
||||||
|
u"двадцатиюродный",
|
||||||
|
]
|
||||||
|
|
||||||
_female_cousin_level = [
|
_female_cousin_level = [
|
||||||
u"", u"двоюродная", u"троюродная", u"четвероюродная",
|
u"",
|
||||||
u"пятиюродная", u"шестиюродная", u"семиюродная", u"восьмиюродная",
|
u"двоюродная",
|
||||||
u"девятиюродная", u"десятиюродная", u"одиннацатиюродная", u"двенадцатиюродная",
|
u"троюродная",
|
||||||
u"тринадцатиюродная", u"четырнадцатиюродная", u"пятнадцатиюродная", u"шестнадцатиюродная",
|
u"четвероюродная",
|
||||||
u"семнадцатиюродная", u"восемнадцатиюродная", u"девятнадцатиюродная", u"двадцатиюродная" ]
|
u"пятиюродная",
|
||||||
|
u"шестиюродная",
|
||||||
|
u"семиюродная",
|
||||||
|
u"восьмиюродная",
|
||||||
|
u"девятиюродная",
|
||||||
|
u"десятиюродная",
|
||||||
|
u"одиннацатиюродная",
|
||||||
|
u"двенадцатиюродная",
|
||||||
|
u"тринадцатиюродная",
|
||||||
|
u"четырнадцатиюродная",
|
||||||
|
u"пятнадцатиюродная",
|
||||||
|
u"шестнадцатиюродная",
|
||||||
|
u"семнадцатиюродная",
|
||||||
|
u"восемнадцатиюродная",
|
||||||
|
u"девятнадцатиюродная",
|
||||||
|
u"двадцатиюродная",
|
||||||
|
]
|
||||||
|
|
||||||
_cousin_level = [
|
_cousin_level = [
|
||||||
u"", u"двоюродные", u"троюродные", u"четвероюродные",
|
u"",
|
||||||
u"пятиюродные", u"шестиюродные", u"семиюродные", u"восьмиюродные",
|
u"двоюродные",
|
||||||
u"девятиюродные", u"десятиюродные", u"одиннацатиюродные", u"двенадцатиюродные",
|
u"троюродные",
|
||||||
u"тринадцатиюродные", u"четырнадцатиюродные", u"пятнадцатиюродные", u"шестнадцатиюродные",
|
u"четвероюродные",
|
||||||
u"семнадцатиюродные", u"восемнадцатиюродные", u"девятнадцатиюродные", u"двадцатиюродные" ]
|
u"пятиюродные",
|
||||||
|
u"шестиюродные",
|
||||||
|
u"семиюродные",
|
||||||
|
u"восьмиюродные",
|
||||||
|
u"девятиюродные",
|
||||||
|
u"десятиюродные",
|
||||||
|
u"одиннацатиюродные",
|
||||||
|
u"двенадцатиюродные",
|
||||||
|
u"тринадцатиюродные",
|
||||||
|
u"четырнадцатиюродные",
|
||||||
|
u"пятнадцатиюродные",
|
||||||
|
u"шестнадцатиюродные",
|
||||||
|
u"семнадцатиюродные",
|
||||||
|
u"восемнадцатиюродные",
|
||||||
|
u"девятнадцатиюродные",
|
||||||
|
u"двадцатиюродные",
|
||||||
|
]
|
||||||
|
|
||||||
_junior_male_removed_level = [
|
_junior_male_removed_level = [
|
||||||
u"брат", u"племянник", u"внучатый племянник", u"правнучатый племянник",
|
u"брат",
|
||||||
u"праправнучатый племянник", u"прапраправнучатый племянник",
|
u"племянник",
|
||||||
u"прапрапраправнучатый племянник" ]
|
u"внучатый племянник",
|
||||||
|
u"правнучатый племянник",
|
||||||
|
u"праправнучатый племянник",
|
||||||
|
u"прапраправнучатый племянник",
|
||||||
|
u"прапрапраправнучатый племянник",
|
||||||
|
]
|
||||||
|
|
||||||
_junior_female_removed_level = [
|
_junior_female_removed_level = [
|
||||||
u"сестра", u"племянница", u"внучатая племянница", u"правнучатая племянница",
|
u"сестра",
|
||||||
u"праправнучатая племянница", u"прапраправнучатая племянница",
|
u"племянница",
|
||||||
u"прапрапраправнучатая племянница" ]
|
u"внучатая племянница",
|
||||||
|
u"правнучатая племянница",
|
||||||
|
u"праправнучатая племянница",
|
||||||
|
u"прапраправнучатая племянница",
|
||||||
|
u"прапрапраправнучатая племянница",
|
||||||
|
]
|
||||||
|
|
||||||
_juniors_removed_level = [
|
_juniors_removed_level = [
|
||||||
u"братя/сестры", u"племянники", u"внучатые племянники", u"правнучатые племянники",
|
u"братя/сестры",
|
||||||
u"праправнучатые племянники", u"прапраправнучатые племянники",
|
u"племянники",
|
||||||
u"прапрапраправнучатые племянники" ]
|
u"внучатые племянники",
|
||||||
|
u"правнучатые племянники",
|
||||||
|
u"праправнучатые племянники",
|
||||||
|
u"прапраправнучатые племянники",
|
||||||
|
u"прапрапраправнучатые племянники",
|
||||||
|
]
|
||||||
|
|
||||||
_senior_male_removed_level = [
|
_senior_male_removed_level = [
|
||||||
u"", u"дядя", u"дед", u"прадед", u"прапрадед", u"прапрапрадед", u"прапрапрапрадед" ]
|
u"",
|
||||||
|
u"дядя",
|
||||||
|
u"дед",
|
||||||
|
u"прадед",
|
||||||
|
u"прапрадед",
|
||||||
|
u"прапрапрадед",
|
||||||
|
u"прапрапрапрадед",
|
||||||
|
]
|
||||||
|
|
||||||
_senior_female_removed_level = [
|
_senior_female_removed_level = [
|
||||||
u"", u"тётка", u"бабка", u"прабабка", u"прапрабабка", u"прапрапрабабка", u"прапрапрапрабабка" ]
|
u"",
|
||||||
|
u"тётка",
|
||||||
|
u"бабка",
|
||||||
|
u"прабабка",
|
||||||
|
u"прапрабабка",
|
||||||
|
u"прапрапрабабка",
|
||||||
|
u"прапрапрапрабабка",
|
||||||
|
]
|
||||||
|
|
||||||
_seniors_removed_level = [
|
_seniors_removed_level = [
|
||||||
u"", u"дядьки/тётки", u"дедушки/бабушки", u"прадеды/прабабушки", u"прапрадеды/прапрабабушки", u"прапрапрадеды/прапрапрабабушки", u"прапрапрапрадеды/прапрапрабабушки" ]
|
u"",
|
||||||
|
u"дядьки/тётки",
|
||||||
|
u"дедушки/бабушки",
|
||||||
|
u"прадеды/прабабушки",
|
||||||
|
u"прапрадеды/прапрабабушки",
|
||||||
|
u"прапрапрадеды/прапрапрабабушки",
|
||||||
|
u"прапрапрапрадеды/прапрапрабабушки",
|
||||||
|
]
|
||||||
|
|
||||||
_father_level = [
|
_father_level = [
|
||||||
u"", u"отец", u"дед", u"прадед", u"прапрадед", u"прапрапрадед", u"прапрапрапрадед" ]
|
u"",
|
||||||
|
u"отец",
|
||||||
|
u"дед",
|
||||||
|
u"прадед",
|
||||||
|
u"прапрадед",
|
||||||
|
u"прапрапрадед",
|
||||||
|
u"прапрапрапрадед",
|
||||||
|
]
|
||||||
|
|
||||||
_mother_level = [
|
_mother_level = [
|
||||||
u"", u"мать", u"бабка", u"прабабка", u"прапрабабка", u"прапрапрабабка", u"прапрапрапрабабка" ]
|
u"",
|
||||||
|
u"мать",
|
||||||
|
u"бабка",
|
||||||
|
u"прабабка",
|
||||||
|
u"прапрабабка",
|
||||||
|
u"прапрапрабабка",
|
||||||
|
u"прапрапрапрабабка",
|
||||||
|
]
|
||||||
|
|
||||||
_son_level = [
|
_son_level = [
|
||||||
u"", u"сын", u"внук", u"правнук", u"праправнук", u"прапраправнук", u"прапрапраправнук" ]
|
u"",
|
||||||
|
u"сын",
|
||||||
|
u"внук",
|
||||||
|
u"правнук",
|
||||||
|
u"праправнук",
|
||||||
|
u"прапраправнук",
|
||||||
|
u"прапрапраправнук",
|
||||||
|
]
|
||||||
|
|
||||||
_daughter_level = [
|
_daughter_level = [
|
||||||
u"", u"дочь", u"внучка", u"правнучка", u"праправнучка", u"прапраправнучка",
|
u"",
|
||||||
u"прапрапраправнучка" ]
|
u"дочь",
|
||||||
|
u"внучка",
|
||||||
|
u"правнучка",
|
||||||
|
u"праправнучка",
|
||||||
|
u"прапраправнучка",
|
||||||
|
u"прапрапраправнучка",
|
||||||
|
]
|
||||||
|
|
||||||
_children_level = [ u"", u"дети", u"внуки", u"правнуки", u"праправнуки", u"прапраправнуки", u"прапрапраправнуки",
|
_children_level = [
|
||||||
u"прапрапрапраправнуки"]
|
u"",
|
||||||
|
u"дети",
|
||||||
|
u"внуки",
|
||||||
|
u"правнуки",
|
||||||
|
u"праправнуки",
|
||||||
|
u"прапраправнуки",
|
||||||
|
u"прапрапраправнуки",
|
||||||
|
u"прапрапрапраправнуки",
|
||||||
|
]
|
||||||
|
|
||||||
_sister_level = [
|
_sister_level = [
|
||||||
u"", u"сестра", u"тётка", u"двоюродная бабка", u"двоюродная прабабка",
|
u"",
|
||||||
u"двоюродная прапрабабка", u"двоюродная прапрапрабабка", u"двоюродная прапрапрапрабабка" ]
|
u"сестра",
|
||||||
|
u"тётка",
|
||||||
|
u"двоюродная бабка",
|
||||||
|
u"двоюродная прабабка",
|
||||||
|
u"двоюродная прапрабабка",
|
||||||
|
u"двоюродная прапрапрабабка",
|
||||||
|
u"двоюродная прапрапрапрабабка",
|
||||||
|
]
|
||||||
|
|
||||||
_brother_level = [
|
_brother_level = [
|
||||||
u"", u"брат", u"дядя", u"двоюродный дед", u"двоюродный прадед",
|
u"",
|
||||||
u"двоюродный прапрадед", u"двоюродный прапрапрадед", u"двоюродный прапрапрапрадед" ]
|
u"брат",
|
||||||
|
u"дядя",
|
||||||
|
u"двоюродный дед",
|
||||||
|
u"двоюродный прадед",
|
||||||
|
u"двоюродный прапрадед",
|
||||||
|
u"двоюродный прапрапрадед",
|
||||||
|
u"двоюродный прапрапрапрадед",
|
||||||
|
]
|
||||||
|
|
||||||
_siblings_level = [
|
_siblings_level = [
|
||||||
u"", u"братья/сестры", u"дядьки/тётки", u"двоюродные дедушки/бабушки", u"двоюродные прадедеды/прабабушки",
|
u"",
|
||||||
u"двоюродные прапрадедушки/прапрабабушки (5 поколение)", u"двоюродные прапрапрадедушки/прапрапрабабушки (6 поколение)",
|
u"братья/сестры",
|
||||||
|
u"дядьки/тётки",
|
||||||
|
u"двоюродные дедушки/бабушки",
|
||||||
|
u"двоюродные прадедеды/прабабушки",
|
||||||
|
u"двоюродные прапрадедушки/прапрабабушки (5 поколение)",
|
||||||
|
u"двоюродные прапрапрадедушки/прапрапрабабушки (6 поколение)",
|
||||||
u"двоюродные прапрапрапрадедушки/прапрапрапрабабушки (7 поколение)",
|
u"двоюродные прапрапрапрадедушки/прапрапрапрабабушки (7 поколение)",
|
||||||
u"двоюродные прапрапрапрапрадедушки/прапрапрапрапрабабушки (8 поколение)", ]
|
u"двоюродные прапрапрапрапрадедушки/прапрапрапрапрабабушки (8 поколение)",
|
||||||
|
]
|
||||||
|
|
||||||
_nephew_level = [
|
_nephew_level = [
|
||||||
u"", u"племянник", u"внучатый племянник", u"правнучатый племянник",
|
u"",
|
||||||
u"праправнучатый племянник", u"прапраправнучатый племянник",
|
u"племянник",
|
||||||
u"прапрапраправнучатый племянник" ]
|
u"внучатый племянник",
|
||||||
|
u"правнучатый племянник",
|
||||||
|
u"праправнучатый племянник",
|
||||||
|
u"прапраправнучатый племянник",
|
||||||
|
u"прапрапраправнучатый племянник",
|
||||||
|
]
|
||||||
|
|
||||||
_niece_level = [
|
_niece_level = [
|
||||||
u"", u"племянница", u"внучатая племянница", u"правнучатая племянница",
|
u"",
|
||||||
u"праправнучатая племянница", u"прапраправнучатая племянница",
|
u"племянница",
|
||||||
u"прапрапраправнучатая племянница" ]
|
u"внучатая племянница",
|
||||||
|
u"правнучатая племянница",
|
||||||
|
u"праправнучатая племянница",
|
||||||
|
u"прапраправнучатая племянница",
|
||||||
|
u"прапрапраправнучатая племянница",
|
||||||
|
]
|
||||||
|
|
||||||
_nephews_nieces_level = [
|
_nephews_nieces_level = [
|
||||||
u"", u"братья/сестры", u"племянники", u"внучатый племянники", u"правнучатый племянники",
|
u"",
|
||||||
u"праправнучатый племянники", u"прапраправнучатый племянники",
|
u"братья/сестры",
|
||||||
u"прапрапраправнучатый племянники" ]
|
u"племянники",
|
||||||
|
u"внучатый племянники",
|
||||||
|
u"правнучатый племянники",
|
||||||
|
u"праправнучатый племянники",
|
||||||
|
u"прапраправнучатый племянники",
|
||||||
|
u"прапрапраправнучатый племянники",
|
||||||
|
]
|
||||||
|
|
||||||
#-------------------------------------------------------------------------
|
#-------------------------------------------------------------------------
|
||||||
#
|
#
|
||||||
@ -142,89 +300,97 @@ _nephews_nieces_level = [
|
|||||||
#
|
#
|
||||||
#-------------------------------------------------------------------------
|
#-------------------------------------------------------------------------
|
||||||
class RelationshipCalculator(Relationship.RelationshipCalculator):
|
class RelationshipCalculator(Relationship.RelationshipCalculator):
|
||||||
|
"""
|
||||||
|
RelationshipCalculator Class
|
||||||
|
"""
|
||||||
|
|
||||||
def __init__(self):
|
def __init__(self):
|
||||||
Relationship.RelationshipCalculator.__init__(self)
|
Relationship.RelationshipCalculator.__init__(self)
|
||||||
|
|
||||||
def get_parents(self,level):
|
def get_parents(self, level):
|
||||||
if level>len(_parents_level)-1:
|
if level > len(_parents_level)-1:
|
||||||
return u"дальние родственники"
|
return u"дальние родственники"
|
||||||
else:
|
else:
|
||||||
return _parents_level[level]
|
return _parents_level[level]
|
||||||
|
|
||||||
def get_junior_male_cousin(self,level,removed):
|
def get_junior_male_cousin(self, level, removed):
|
||||||
if removed > len(_junior_male_removed_level)-1 or level>len(_male_cousin_level)-1:
|
if removed > len(_junior_male_removed_level)-1 or \
|
||||||
|
level > len(_male_cousin_level)-1:
|
||||||
return u"дальний родственник"
|
return u"дальний родственник"
|
||||||
else:
|
else:
|
||||||
return u"%s %s" % (_male_cousin_level[level],_junior_male_removed_level[removed])
|
return u"%s %s" % (_male_cousin_level[level], _junior_male_removed_level[removed])
|
||||||
|
|
||||||
def get_senior_male_cousin(self,level,removed):
|
def get_senior_male_cousin(self, level, removed):
|
||||||
if removed > len(_senior_male_removed_level)-1 or level>len(_male_cousin_level)-1:
|
if removed > len(_senior_male_removed_level)-1 or \
|
||||||
|
level > len(_male_cousin_level)-1:
|
||||||
return u"дальний родственник"
|
return u"дальний родственник"
|
||||||
else:
|
else:
|
||||||
return u"%s %s" % (_male_cousin_level[level],_senior_male_removed_level[removed])
|
return u"%s %s" % (_male_cousin_level[level], _senior_male_removed_level[removed])
|
||||||
|
|
||||||
def get_junior_female_cousin(self,level,removed):
|
def get_junior_female_cousin(self, level, removed):
|
||||||
if removed > len(_junior_female_removed_level)-1 or level>len(_male_cousin_level)-1:
|
if removed > len(_junior_female_removed_level)-1 or \
|
||||||
|
level > len(_male_cousin_level)-1:
|
||||||
return u"дальняя родственница"
|
return u"дальняя родственница"
|
||||||
else:
|
else:
|
||||||
return u"%s %s" % (_female_cousin_level[level],_junior_female_removed_level[removed])
|
return u"%s %s" % (_female_cousin_level[level], _junior_female_removed_level[removed])
|
||||||
|
|
||||||
def get_senior_female_cousin(self,level,removed):
|
def get_senior_female_cousin(self, level, removed):
|
||||||
if removed > len(_senior_female_removed_level)-1 or level>len(_male_cousin_level)-1:
|
if removed > len(_senior_female_removed_level)-1 or \
|
||||||
|
level > len(_male_cousin_level)-1:
|
||||||
return u"дальняя родственница"
|
return u"дальняя родственница"
|
||||||
else:
|
else:
|
||||||
return u"%s %s" % (_female_cousin_level[level],_senior_female_removed_level[removed])
|
return u"%s %s" % (_female_cousin_level[level], _senior_female_removed_level[removed])
|
||||||
|
|
||||||
def get_father(self,level):
|
def get_father(self, level):
|
||||||
if level>len(_father_level)-1:
|
if level > len(_father_level)-1:
|
||||||
return u"дальний предок"
|
return u"дальний предок"
|
||||||
else:
|
else:
|
||||||
return _father_level[level]
|
return _father_level[level]
|
||||||
|
|
||||||
def get_son(self,level):
|
def get_son(self, level):
|
||||||
if level>len(_son_level)-1:
|
if level > len(_son_level)-1:
|
||||||
return u"дальний потомок"
|
return u"дальний потомок"
|
||||||
else:
|
else:
|
||||||
return _son_level[level]
|
return _son_level[level]
|
||||||
|
|
||||||
def get_mother(self,level):
|
def get_mother(self, level):
|
||||||
if level>len(_mother_level)-1:
|
if level > len(_mother_level)-1:
|
||||||
return u"дальний предок"
|
return u"дальний предок"
|
||||||
else:
|
else:
|
||||||
return _mother_level[level]
|
return _mother_level[level]
|
||||||
|
|
||||||
def get_daughter(self,level):
|
def get_daughter(self, level):
|
||||||
if level>len(_daughter_level)-1:
|
if level > len(_daughter_level)-1:
|
||||||
return u"дальний потомок"
|
return u"дальний потомок"
|
||||||
else:
|
else:
|
||||||
return _daughter_level[level]
|
return _daughter_level[level]
|
||||||
|
|
||||||
def _get_aunt(self, level, step='', inlaw=''):
|
def _get_aunt(self, level, step='', inlaw=''):
|
||||||
if level>len(_sister_level)-1:
|
if level > len(_sister_level)-1:
|
||||||
return u"дальний предок"
|
return u"дальний предок"
|
||||||
else:
|
else:
|
||||||
return _sister_level[level]
|
return _sister_level[level]
|
||||||
|
|
||||||
def _get_uncle(self, level, step='', inlaw=''):
|
def _get_uncle(self, level, step='', inlaw=''):
|
||||||
if level>len(_brother_level)-1:
|
if level > len(_brother_level)-1:
|
||||||
return u"дальний предок"
|
return u"дальний предок"
|
||||||
else:
|
else:
|
||||||
return _brother_level[level]
|
return _brother_level[level]
|
||||||
|
|
||||||
def _get_sibling(self, level, step='', inlaw=''):
|
def _get_sibling(self, level, step='', inlaw=''):
|
||||||
"""Sibling of unknown gender
|
"""
|
||||||
|
Sibling of unknown gender
|
||||||
"""
|
"""
|
||||||
return self._get_uncle(level, step, inlaw) + u" или u" + self._get_aunt(level, step, inlaw)
|
return self._get_uncle(level, step, inlaw) + u" или u" + self._get_aunt(level, step, inlaw)
|
||||||
|
|
||||||
def get_nephew(self,level):
|
def get_nephew(self, level):
|
||||||
if level>len(_nephew_level)-1:
|
if level > len(_nephew_level)-1:
|
||||||
return u"дальний потомок"
|
return u"дальний потомок"
|
||||||
else:
|
else:
|
||||||
return _nephew_level[level]
|
return _nephew_level[level]
|
||||||
|
|
||||||
def get_niece(self,level):
|
def get_niece(self, level):
|
||||||
if level>len(_niece_level)-1:
|
if level > len(_niece_level)-1:
|
||||||
return u"дальний потомок"
|
return u"дальний потомок"
|
||||||
else:
|
else:
|
||||||
return _niece_level[level]
|
return _niece_level[level]
|
||||||
@ -258,14 +424,14 @@ class RelationshipCalculator(Relationship.RelationshipCalculator):
|
|||||||
return (self.get_niece(Gb-1))
|
return (self.get_niece(Gb-1))
|
||||||
elif Ga > Gb:
|
elif Ga > Gb:
|
||||||
if gender_b == gen.lib.Person.MALE:
|
if gender_b == gen.lib.Person.MALE:
|
||||||
return (self.get_senior_male_cousin(Gb-1,Ga-Gb))
|
return (self.get_senior_male_cousin(Gb-1, Ga-Gb))
|
||||||
else:
|
else:
|
||||||
return (self.get_senior_female_cousin(Gb-1,Ga-Gb))
|
return (self.get_senior_female_cousin(Gb-1, Ga-Gb))
|
||||||
else:
|
else:
|
||||||
if gender_b == gen.lib.Person.MALE:
|
if gender_b == gen.lib.Person.MALE:
|
||||||
return (self.get_junior_male_cousin(Ga-1,Gb-Ga))
|
return (self.get_junior_male_cousin(Ga-1, Gb-Ga))
|
||||||
else:
|
else:
|
||||||
return (self.get_junior_female_cousin(Ga-1,Gb-Ga))
|
return (self.get_junior_female_cousin(Ga-1, Gb-Ga))
|
||||||
|
|
||||||
|
|
||||||
def get_plural_relationship_string(self, Ga, Gb):
|
def get_plural_relationship_string(self, Ga, Gb):
|
||||||
@ -316,3 +482,18 @@ class RelationshipCalculator(Relationship.RelationshipCalculator):
|
|||||||
|
|
||||||
# TODO: def get_sibling_relationship_string for Russian step and inlaw relations
|
# TODO: def get_sibling_relationship_string for Russian step and inlaw relations
|
||||||
|
|
||||||
|
if __name__ == "__main__":
|
||||||
|
|
||||||
|
# Test function. Call it as follows from the command line (so as to find
|
||||||
|
# imported modules):
|
||||||
|
# export PYTHONPATH=/path/to/gramps/src
|
||||||
|
# python src/plugins/rel/rel_ru.py
|
||||||
|
# (Above not needed here)
|
||||||
|
|
||||||
|
"""TRANSLATORS, copy this if statement at the bottom of your
|
||||||
|
rel_xx.py module, and test your work with:
|
||||||
|
python src/plugins/rel/rel_xx.py
|
||||||
|
"""
|
||||||
|
from Relationship import test
|
||||||
|
RC = RelationshipCalculator()
|
||||||
|
test(RC, True)
|
||||||
|
@ -19,9 +19,9 @@
|
|||||||
# along with this program; if not, write to the Free Software
|
# along with this program; if not, write to the Free Software
|
||||||
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||||
#
|
#
|
||||||
|
"""
|
||||||
|
Slovak-specific classes for relationships.
|
||||||
|
"""
|
||||||
#-------------------------------------------------------------------------
|
#-------------------------------------------------------------------------
|
||||||
#
|
#
|
||||||
# GRAMPS modules
|
# GRAMPS modules
|
||||||
@ -75,9 +75,9 @@ _sister_level = [ "", "sestra%s", "teta%s", "prateta%s", "praprateta%s", ]
|
|||||||
|
|
||||||
_brother_level = [ "", "brat%s", "strýko%s", "prastrýko%s", "praprastrýko%s", ]
|
_brother_level = [ "", "brat%s", "strýko%s", "prastrýko%s", "praprastrýko%s", ]
|
||||||
|
|
||||||
_nephew_level =[ "", "synovec%s", "prasynovec%s", "praprasynovec%s", ]
|
_nephew_level = [ "", "synovec%s", "prasynovec%s", "praprasynovec%s", ]
|
||||||
|
|
||||||
_niece_level =[ "", "neter%s", "praneter%s", "prapraneter%s", ]
|
_niece_level = [ "", "neter%s", "praneter%s", "prapraneter%s", ]
|
||||||
|
|
||||||
# kinship report
|
# kinship report
|
||||||
|
|
||||||
@ -106,6 +106,9 @@ _nephews_nieces_level = [ "", "synovci a netere",
|
|||||||
#-------------------------------------------------------------------------
|
#-------------------------------------------------------------------------
|
||||||
|
|
||||||
class RelationshipCalculator(Relationship.RelationshipCalculator):
|
class RelationshipCalculator(Relationship.RelationshipCalculator):
|
||||||
|
"""
|
||||||
|
RelationshipCalculator Class
|
||||||
|
"""
|
||||||
|
|
||||||
INLAW = ' (m. zväzok)'
|
INLAW = ' (m. zväzok)'
|
||||||
|
|
||||||
@ -576,13 +579,13 @@ if __name__ == "__main__":
|
|||||||
# Test function. Call it as follows from the command line (so as to find
|
# Test function. Call it as follows from the command line (so as to find
|
||||||
# imported modules):
|
# imported modules):
|
||||||
# export PYTHONPATH=/path/to/gramps/src
|
# export PYTHONPATH=/path/to/gramps/src
|
||||||
# python src/plugins/rel_sk.py
|
# python src/plugins/rel/rel_sk.py
|
||||||
# (Above not needed here)
|
# (Above not needed here)
|
||||||
|
|
||||||
"""TRANSLATORS, copy this if statement at the bottom of your
|
"""TRANSLATORS, copy this if statement at the bottom of your
|
||||||
rel_xx.py module, and test your work with:
|
rel_xx.py module, and test your work with:
|
||||||
python src/plugins/rel_xx.py
|
python src/plugins/rel/rel_xx.py
|
||||||
"""
|
"""
|
||||||
from Relationship import test
|
from Relationship import test
|
||||||
rc = RelationshipCalculator()
|
RC = RelationshipCalculator()
|
||||||
test(rc, True)
|
test(RC, True)
|
||||||
|
@ -26,7 +26,10 @@
|
|||||||
# Written by Alex Roitman, largely based on Relationship.py by Don Allingham
|
# Written by Alex Roitman, largely based on Relationship.py by Don Allingham
|
||||||
# and on valuable input from Jens Arvidsson
|
# and on valuable input from Jens Arvidsson
|
||||||
# Updated to 3.0 by Peter Landgren 2007-12-30.
|
# Updated to 3.0 by Peter Landgren 2007-12-30.
|
||||||
|
#
|
||||||
|
"""
|
||||||
|
Swedish-specific definitions of relationships
|
||||||
|
"""
|
||||||
#-------------------------------------------------------------------------
|
#-------------------------------------------------------------------------
|
||||||
#
|
#
|
||||||
# GRAMPS modules
|
# GRAMPS modules
|
||||||
@ -36,10 +39,6 @@
|
|||||||
import gen.lib
|
import gen.lib
|
||||||
import Relationship
|
import Relationship
|
||||||
|
|
||||||
#-------------------------------------------------------------------------
|
|
||||||
#
|
|
||||||
# Swedish-specific definitions of relationships
|
|
||||||
#
|
|
||||||
#-------------------------------------------------------------------------
|
#-------------------------------------------------------------------------
|
||||||
|
|
||||||
_cousin_level = [ "", "kusin",
|
_cousin_level = [ "", "kusin",
|
||||||
@ -69,6 +68,9 @@ u"artonde", u"nittonde", u"tjugonde" ]
|
|||||||
#
|
#
|
||||||
#-------------------------------------------------------------------------
|
#-------------------------------------------------------------------------
|
||||||
class RelationshipCalculator(Relationship.RelationshipCalculator):
|
class RelationshipCalculator(Relationship.RelationshipCalculator):
|
||||||
|
"""
|
||||||
|
RelationshipCalculator Class
|
||||||
|
"""
|
||||||
|
|
||||||
#sibling strings
|
#sibling strings
|
||||||
STEP = 'styv'
|
STEP = 'styv'
|
||||||
@ -524,13 +526,13 @@ if __name__ == "__main__":
|
|||||||
# Test function. Call it as follows from the command line (so as to find
|
# Test function. Call it as follows from the command line (so as to find
|
||||||
# imported modules):
|
# imported modules):
|
||||||
# export PYTHONPATH=/path/to/gramps/src
|
# export PYTHONPATH=/path/to/gramps/src
|
||||||
# python src/plugins/rel_fr.py
|
# python src/plugins/rel/rel_sv.py
|
||||||
# (Above not needed here)
|
# (Above not needed here)
|
||||||
|
|
||||||
"""TRANSLATORS, copy this if statement at the bottom of your
|
"""TRANSLATORS, copy this if statement at the bottom of your
|
||||||
rel_xx.py module, and test your work with:
|
rel_xx.py module, and test your work with:
|
||||||
python src/plugins/rel_xx.py
|
python src/plugins/rel/rel_xx.py
|
||||||
"""
|
"""
|
||||||
from Relationship import test
|
from Relationship import test
|
||||||
rc = RelationshipCalculator()
|
RC = RelationshipCalculator()
|
||||||
test(rc, True)
|
test(RC, True)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user