X-Git-Url: https://git.openstreetmap.org./osqa.git/blobdiff_plain/410bfa05ee36ed1d99356c443a5f3f6aa3ee9578..dfb02791dc3e8f34f12759ee6ad43d41ca35509d:/forum/settings/forms.py diff --git a/forum/settings/forms.py b/forum/settings/forms.py index aa5a352..81e5446 100644 --- a/forum/settings/forms.py +++ b/forum/settings/forms.py @@ -1,4 +1,5 @@ import os +from string import strip from django import forms from base import Setting from django.utils.translation import ugettext as _ @@ -20,7 +21,7 @@ class SettingsSetForm(forms.Form): super(SettingsSetForm, self).__init__(data, *args, **kwargs) for setting in set: - if isinstance(setting, Setting.emulators.get(str, DummySetting)): + if isinstance(setting, (Setting.emulators.get(str, DummySetting), Setting.emulators.get(unicode, DummySetting))): field = forms.CharField(**setting.field_context) elif isinstance(setting, Setting.emulators.get(float, DummySetting)): field = forms.FloatField(**setting.field_context) @@ -92,4 +93,13 @@ class StringListWidget(forms.Widget): else: return data[name] +class CommaStringListWidget(forms.Textarea): + def value_from_datadict(self, data, files, name): + if 'submit' in data: + return map(strip, data[name].split(',')) + else: + return ', '.join(data[name]) + + +