def get_start_date(self): """ Get the start date for a family, usually a marriage date, or something close to marriage. """ event = get_marriage_or_fallback(self.dbstate.db, self.obj) return event.get_date_object() if event else None
def dump_string(self, person, family=None): string = self.__date_place( get_birth_or_fallback(self.database, person) ) tmp = self.__date_place(get_death_or_fallback(self.database, person)) if string and tmp: string += ", " string += tmp if string: string = " (" + string + ")" if family and self.showmarriage: tmp = self.__date_place(get_marriage_or_fallback(self.database, family)) if tmp: string += ", " + tmp if family and self.showdivorce: tmp = self.__date_place(get_divorce_or_fallback(self.database, family)) if tmp: string += ", " + tmp self.doc.write_text(string)
def sort_marriage(self, data): family = self.db.get_family_from_handle(data[0]) event = get_marriage_or_fallback(self.db, family) if event: return "%09d" % event.date.get_sort_value() else: return ''
def dump_string(self, person, family=None): """ generate a descriptive string for a person """ string = self.__date_place( get_birth_or_fallback(self.database, person)) tmp = self.__date_place( get_death_or_fallback(self.database, person)) if string and tmp: string += ", " string += tmp if string: string = " (" + string + ")" if family and self.showmarriage: tmp = self.__date_place( get_marriage_or_fallback(self.database, family)) if tmp: string += ", " + tmp if family and self.showdivorce: tmp = self.__date_place( get_divorce_or_fallback(self.database, family)) if tmp: string += ", " + tmp if family and self.want_ids: string += ' (%s)' % family.get_gramps_id() self.doc.write_text(string)
def dump_string(self, person, family=None): string = self.__date_place(get_birth_or_fallback( self.database, person)) tmp = self.__date_place(get_death_or_fallback(self.database, person)) if string and tmp: string += ", " string += tmp if string: string = " (" + string + ")" if family and self.showmarriage: tmp = self.__date_place( get_marriage_or_fallback(self.database, family)) if tmp: string += ", " + tmp if family and self.showdivorce: tmp = self.__date_place( get_divorce_or_fallback(self.database, family)) if tmp: string += ", " + tmp self.doc.write_text(string)
def get_start_date(self): """ Get the start date for a family, usually a marriage date, or something close to marriage. """ active_handle = self.get_active('Family') active = self.dbstate.db.get_family_from_handle(active_handle) event = get_marriage_or_fallback(self.dbstate.db, active) return event.get_date_object() if event else None
def add_relative(self, handle: Handle, ancestors: int = 1, offspring: int = 1): """Add events for a relative of the anchor person.""" person = self.db_handle.get_person_from_handle(handle) calculator = get_relationship_calculator(reinit=True, clocale=self.locale) calculator.set_depth(self.depth) relationship = calculator.get_one_relationship(self.db_handle, self.anchor_person, person) if self.relative_filters: found = False for relative in self.relative_filters: if relative in relationship: found = True break if not found: return if self.relative_event_filters: for event_ref in person.event_ref_list: event = self.db_handle.get_event_from_handle(event_ref.ref) self.add_event((event, person, relationship), relative=True) event = get_birth_or_fallback(self.db_handle, person) if event: self.add_event((event, person, relationship), relative=True) if person.handle not in self.birth_dates: self.birth_dates.update({person.handle: event.date}) event = get_death_or_fallback(self.db_handle, person) if event: self.add_event((event, person, relationship), relative=True) for family_handle in person.family_list: family = self.db_handle.get_family_from_handle(family_handle) event = get_marriage_or_fallback(self.db_handle, family) if event: self.add_event((event, person, relationship), relative=True) event = get_divorce_or_fallback(self.db_handle, family) if event: self.add_event((event, person, relationship), relative=True) if offspring > 1: for child_ref in family.child_ref_list: self.add_relative(child_ref.ref, offspring=offspring - 1) if ancestors > 1: if "father" in relationship or "mother" in relationship: for family_handle in person.parent_family_list: self.add_family(family_handle, include_children=False, ancestors=ancestors - 1)
def column_marriage(self, data): family = self.db.get_family_from_handle(data[0]) event = get_marriage_or_fallback(self.db, family, "<i>%s</i>") if event: if event.date.format: return event.date.format % displayer.display(event.date) elif not get_date_valid(event): return invalid_date_format % displayer.display(event.date) else: return "%s" % displayer.display(event.date) else: return ''
def sort_marriage(self, data): handle = data[0] cached, value = self.get_cached_value(handle, "SORT_MARRIAGE") if not cached: family = self.db.get_family_from_handle(data[0]) event = get_marriage_or_fallback(self.db, family) if event: value = "%09d" % event.date.get_sort_value() else: value = '' self.set_cached_value(handle, "SORT_MARRIAGE", value) return value
def get_marriage_profile( db_handle: DbReadBase, family: Family, locale: GrampsLocale = glocale) -> Tuple[Dict, Union[Event, None]]: """Return best available marriage information for a couple.""" event = get_marriage_or_fallback(db_handle, family) if event is None: return {}, None return get_event_profile_for_object(db_handle, event, args=[], locale=locale), event
def column_marriage(self, data): handle = data[0] cached, value = self.get_cached_value(handle, "MARRIAGE") if not cached: family = self.db.get_family_from_handle(data[0]) event = get_marriage_or_fallback(self.db, family, "<i>%s</i>") if event: if event.date.format: value = event.date.format % displayer.display(event.date) elif not get_date_valid(event): value = invalid_date_format % displayer.display(event.date) else: value = "%s" % displayer.display(event.date) else: value = '' self.set_cached_value(handle, "MARRIAGE", value) return value
def get_marriage_profile(db_handle: DbReadBase, family: Family) -> Dict: """Return best available marriage information for a couple.""" event = get_marriage_or_fallback(db_handle, family) if event is None: return {} return get_event_profile_for_object(db_handle, event)
def get_marriagedate(db, f): """Get the marriage event's date.""" ev = get_marriage_or_fallback(db, f) if not ev: return '' return get_event_date_from_handle(db, ev.handle)