diff --git a/src/common/dataforms.py b/src/common/dataforms.py index d1c82e589395a7f9daf5dad9d8642a3c680d796e..0a053ab9715214ecf003082e67ba769178d58d75 100644 --- a/src/common/dataforms.py +++ b/src/common/dataforms.py @@ -411,7 +411,11 @@ class ListSingleField(ListField, StringField): """ Covers list-single field """ - pass + def is_valid(self): + if not self.required: + return True + if not self.value: + return False class JidSingleField(ListSingleField): """ @@ -458,6 +462,12 @@ class ListMultiField(ListField): def iter_values(self): for element in self.getTags('value'): yield element.getData() + + def is_valid(self): + if not self.required: + return True + if not self.values: + return False class JidMultiField(ListMultiField): """ @@ -665,8 +675,6 @@ class SimpleDataForm(DataForm, DataRecord): # add <value> if there is not if hasattr(f, 'value') and not f.value: f.value = '' - if hasattr(f, 'values') and not f.values: - f.values = [''] # Keep all required fields continue if (hasattr(f, 'value') and not f.value) or (hasattr(f, 'values') \