diff --git a/src/data/templates/browse_page.html b/src/data/templates/browse_page.html
index f8f9db370..9548c4d15 100644
--- a/src/data/templates/browse_page.html
+++ b/src/data/templates/browse_page.html
@@ -20,7 +20,7 @@ Database information:
{% if view.2 %}
{{view.0}} |
- {{view.2.objects.count|format_number}} |
+ {{view.1|table_count}} |
{% endif %}
{% endfor %}
diff --git a/src/data/templates/main_page.html b/src/data/templates/main_page.html
index fd4fa2f35..696293949 100644
--- a/src/data/templates/main_page.html
+++ b/src/data/templates/main_page.html
@@ -28,7 +28,7 @@ Database information:
{% if view.2 %}
{{view.0}} |
- {{view.2.objects.count|format_number}} |
+ {{view.1|table_count}} |
{% endif %}
{% endfor %}
diff --git a/src/webapp/dbdjango.py b/src/webapp/dbdjango.py
index b8cd5c5f8..30f2cf662 100644
--- a/src/webapp/dbdjango.py
+++ b/src/webapp/dbdjango.py
@@ -297,7 +297,7 @@ class DbDjango(DbWriteBase, DbReadBase):
in a format that contains a C/Python style format string using %d,
such as C%d or C%04d.
"""
- self.source_prefix = self._validated_id_prefix(val, "C")
+ self.citation_prefix = self._validated_id_prefix(val, "C")
self.cid2user_format = self.__id2user_format(self.citation_prefix)
def set_source_id_prefix(self, val):
diff --git a/src/webapp/grampsdb/templatetags/my_tags.py b/src/webapp/grampsdb/templatetags/my_tags.py
index b76392804..b42940716 100644
--- a/src/webapp/grampsdb/templatetags/my_tags.py
+++ b/src/webapp/grampsdb/templatetags/my_tags.py
@@ -93,6 +93,9 @@ register.filter('probably_alive', probably_alive)
format_number.is_safe = True
register.filter('format_number', format_number)
+table_count.is_safe = True
+register.filter('table_count', table_count)
+
person_get_birth_date.is_safe = True
register.filter('person_get_birth_date', person_get_birth_date)
diff --git a/src/webapp/utils.py b/src/webapp/utils.py
index d0b031cfc..5cc8e9130 100644
--- a/src/webapp/utils.py
+++ b/src/webapp/utils.py
@@ -132,6 +132,33 @@ def format_number(number, with_grouping=True):
else:
return locale.format("%d", 0, with_grouping)
+def table_count(table, with_grouping=True):
+ # FIXME: should be user's setting
+ locale.setlocale(locale.LC_ALL, "en_US.utf8")
+ if table == "person":
+ number = models.Person.objects.count()
+ elif table == "family":
+ number = models.Family.objects.count()
+ elif table == "event":
+ number = models.Event.objects.count()
+ elif table == "note":
+ number = models.Note.objects.count()
+ elif table == "media":
+ number = models.Media.objects.count()
+ elif table == "citation":
+ number = models.Citation.objects.count()
+ elif table == "source":
+ number = models.Source.objects.count()
+ elif table == "place":
+ number = models.Place.objects.count()
+ elif table == "repository":
+ number = models.Repository.objects.count()
+ elif table == "tag":
+ number = models.Tag.objects.count()
+ else:
+ return "[unknown table]"
+ return locale.format("%d", number, with_grouping)
+
def nbsp(string):
"""
"""