X-Git-Url: https://git.openstreetmap.org./osqa.git/blobdiff_plain/febc8df810701062ed45c129c0e30c504db28849..ee224eb2acc8f8d6ef4af6c083060a4403f45cd9:/forum/settings/base.py diff --git a/forum/settings/base.py b/forum/settings/base.py index ae36e25..cc706bc 100644 --- a/forum/settings/base.py +++ b/forum/settings/base.py @@ -1,5 +1,5 @@ import django.dispatch -from django.utils.encoding import force_unicode +from django.utils.encoding import force_unicode, smart_unicode from datetime import datetime, timedelta import logging @@ -42,7 +42,7 @@ class BaseSetting(object): return str(self.value) def __unicode__(self): - return unicode(self.value) + return smart_unicode(self.value) @property def value(self): @@ -60,6 +60,7 @@ class BaseSetting(object): return v except KeyValue.DoesNotExist: self._temp = (self.default, datetime.now() + timedelta(seconds=TMP_MINICACHE_SECONDS)) + self.save(self.default) except Exception, e: logging.error("Error retrieving setting from database (%s): %s" % (self.name, str(e))) @@ -78,7 +79,7 @@ class BaseSetting(object): except KeyValue.DoesNotExist: kv = KeyValue(key=self.name) except Exception, e: - logging.error("Error savin setting to database (%s): %s" % (self.name, str(e))) + logging.error("Error saving setting to database (%s): %s" % (self.name, str(e))) return kv.value = value @@ -123,5 +124,3 @@ class Setting(object): Setting.emulators[deftype] = emul return emul(name, default, set, field_context) - -