mirror of
https://github.com/jwinterm/modoboa.git
synced 2026-10-17 05:41:25 +02:00
Don't convert parameter values to str objects, leave them as unicode ones and use 'unicode_escape' before storing them to database.
see #200
This commit is contained in:
+3
-7
@@ -177,7 +177,7 @@ def save_admin(name, value, app=None):
|
||||
p = Parameter()
|
||||
p.name = fullname
|
||||
if p.value != value:
|
||||
p.value = str(value).encode("string_escape").strip()
|
||||
p.value = value.encode("unicode_escape").strip()
|
||||
p.save()
|
||||
return True
|
||||
|
||||
@@ -209,7 +209,7 @@ def get_admin(name, app=None):
|
||||
p = Parameter.objects.get(name="%s.%s" % (app, name))
|
||||
except Parameter.DoesNotExist:
|
||||
return _params[app]["A"][name]["deflt"]
|
||||
return p.value.decode("string_escape")
|
||||
return p.value.decode("unicode_escape")
|
||||
|
||||
def get_user(user, name, app=None):
|
||||
from models import UserParameter
|
||||
@@ -221,11 +221,7 @@ def get_user(user, name, app=None):
|
||||
p = UserParameter.objects.get(user=user, name="%s.%s" % (app, name))
|
||||
except UserParameter.DoesNotExist:
|
||||
return _params[app]["U"][name]["deflt"]
|
||||
try:
|
||||
dvalue = p.value.decode("string_escape")
|
||||
except ValueError:
|
||||
dvalue = p.value
|
||||
return dvalue
|
||||
return p.value.decode("unicode_escape")
|
||||
|
||||
def get_app_option(lvl, name, dflt, app=None):
|
||||
if app is None:
|
||||
|
||||
Reference in New Issue
Block a user