From 2eac5bff6795f85aa7c3ea78b83e65241778fa68 Mon Sep 17 00:00:00 2001
From: Őry Máté <ory.mate@cloud.bme.hu>
Date: Mon, 13 Oct 2014 10:54:48 +0200
Subject: [PATCH] common: refactor get_user_text and get_admin_text

---
 circle/common/models.py | 23 +++++++++++++----------
 1 file changed, 13 insertions(+), 10 deletions(-)

diff --git a/circle/common/models.py b/circle/common/models.py
index 3b80758..0991f31 100644
--- a/circle/common/models.py
+++ b/circle/common/models.py
@@ -444,24 +444,27 @@ class HumanReadableObject(object):
     def from_dict(cls, d):
         return None if d is None else cls(**d)
 
-    def get_admin_text(self):
-        if self.admin_text_template == "":
+    def _get_parsed_text(self, key):
+        value = getattr(self, key)
+        if value == "":
             return ""
         try:
-            return _(self.admin_text_template) % self.params
+            return _(value) % self.params
+        except KeyError:
+            logger.exception("Can't render %s '%s' %% %s",
+                             key, value, unicode(self.params))
+            raise
+
+    def get_admin_text(self):
+        try:
+            return self._get_parsed_text("admin_text_template")
         except KeyError:
-            logger.exception("Can't render admin_text_template '%s' %% %s",
-                             self.admin_text_template, unicode(self.params))
             return self.get_user_text()
 
     def get_user_text(self):
-        if self.user_text_template == "":
-            return ""
         try:
-            return _(self.user_text_template) % self.params
+            return self._get_parsed_text("user_text_template")
         except KeyError:
-            logger.exception("Can't render user_text_template '%s' %% %s",
-                             self.user_text_template, unicode(self.params))
             return self.user_text_template
 
     def get_text(self, user):
--
libgit2 0.26.0