diff --git a/gramps/gen/db/generic.py b/gramps/gen/db/generic.py index 021277814..e0ea382ed 100644 --- a/gramps/gen/db/generic.py +++ b/gramps/gen/db/generic.py @@ -35,6 +35,7 @@ import bisect import ast import sys import datetime +import glob #------------------------------------------------------------------------ # @@ -1992,6 +1993,17 @@ class DbGeneric(DbWriteBase, DbReadBase, UpdateCallback, Callback): _("Version") _("Data version") """ + last_backup = "n/a" + backups = sorted(glob.glob(os.path.join( + self._directory, "backup-*.gramps")), reverse=True) + if backups: + path, filename = os.path.split(backups[0]) + filename, ext = os.path.splitext(filename) + if filename.count("-") == 6: + backup, year, month, day, hour, minute, second = filename.split("-") + last_backup = time.strftime('%x %X', time.localtime(time.mktime( + (int(year), int(month), int(day), int(hour), int(minute), int(second), + 0, 0, 0)))) return { _("Number of people"): self.get_number_of_people(), _("Number of families"): self.get_number_of_families(), @@ -2004,6 +2016,8 @@ class DbGeneric(DbWriteBase, DbReadBase, UpdateCallback, Callback): _("Number of notes"): self.get_number_of_notes(), _("Number of tags"): self.get_number_of_tags(), _("Data version"): ".".join([str(v) for v in self.VERSION]), + _("Backups, count"): str(len(backups)), + _("Backups, last"): last_backup, } def get_dbname(self):