diff --git a/gramps/plugins/gramplet/statsgramplet.py b/gramps/plugins/gramplet/statsgramplet.py index 61321de77..6f6a2ba55 100644 --- a/gramps/plugins/gramplet/statsgramplet.py +++ b/gramps/plugins/gramplet/statsgramplet.py @@ -104,6 +104,12 @@ class StatsGramplet(Gramplet): total_media += length for name in [person.get_primary_name()] + person.get_alternate_names(): + + # Count unique surnames + if not name.get_surname().strip() in namelist \ + and not name.get_surname().strip() == "": + namelist.append(name.get_surname().strip()) + if name.get_first_name().strip() == "": incomp_names += 1 else: diff --git a/gramps/plugins/gramplet/surnamecloudgramplet.py b/gramps/plugins/gramplet/surnamecloudgramplet.py index 02893dbd8..b09e04f9b 100644 --- a/gramps/plugins/gramplet/surnamecloudgramplet.py +++ b/gramps/plugins/gramplet/surnamecloudgramplet.py @@ -92,6 +92,7 @@ class SurnameCloudGramplet(Gramplet): representative_handle = {} cnt = 0 + namelist =[] for person in self.dbstate.db.iter_people(): allnames = [person.get_primary_name()] + person.get_alternate_names() allnames = set([name.get_group_name().strip() for name in allnames]) @@ -101,6 +102,11 @@ class SurnameCloudGramplet(Gramplet): cnt += 1 if not cnt % _YIELD_INTERVAL: yield True + # Count unique surnames + for name in [person.get_primary_name()] + person.get_alternate_names(): + if not name.get_surname().strip() in namelist \ + and not name.get_surname().strip() == "": + namelist.append(name.get_surname().strip()) total_people = cnt surname_sort = [] @@ -112,7 +118,6 @@ class SurnameCloudGramplet(Gramplet): if not cnt % _YIELD_INTERVAL: yield True - total_surnames = cnt surname_sort.sort(reverse=True) cloud_names = [] cloud_values = [] @@ -165,7 +170,7 @@ class SurnameCloudGramplet(Gramplet): self.append_text(("\n\n" + _("Total unique surnames") + ": %d\n") % total_surnames) self.append_text((_("Total surnames showing") + ": %d\n") % showing) - self.append_text((_("Total people") + ": %d") % total_people, "begin") + self.append_text((_("Total people") + ": %d") % len(namelist), "begin") def build_options(self): from gramps.gen.plug.menu import NumberOption diff --git a/gramps/plugins/textreport/summary.py b/gramps/plugins/textreport/summary.py index 0b0be4613..4a22bb403 100644 --- a/gramps/plugins/textreport/summary.py +++ b/gramps/plugins/textreport/summary.py @@ -147,8 +147,10 @@ class SummaryReport(Report): unknowns += 1 # Count unique surnames - if name.get_surname() not in namelist: - namelist.append(name.get_surname()) + for name in [person.get_primary_name()] + person.get_alternate_names(): + if not name.get_surname().strip() in namelist \ + and not name.get_surname().strip() == "": + namelist.append(name.get_surname().strip()) self.doc.start_paragraph("SR-Normal") self.doc.write_text(_("Number of individuals: %d") % num_people)