plugin pubsub schema: handle XHTML fields
This commit is contained in:
parent
37ea73b19f
commit
b385a19b75
1 changed files with 7 additions and 5 deletions
|
|
@ -372,17 +372,19 @@ class PubsubSchema(object):
|
|||
):
|
||||
values_list = [values_list]
|
||||
if deserialise:
|
||||
if field.fieldType == "boolean":
|
||||
if field.fieldType == u"boolean":
|
||||
values_list = [C.bool(v) for v in values_list]
|
||||
elif field.fieldType == "text-multi":
|
||||
elif field.fieldType == u"text-multi":
|
||||
# for text-multi, lines must be put on separate values
|
||||
values_list = list(
|
||||
itertools.chain(*[v.splitlines() for v in values_list])
|
||||
)
|
||||
|
||||
elif "jid" in field.fieldType:
|
||||
elif xml_tools.isXHTMLField(field):
|
||||
values_list = [generic.parseXml(v.encode("utf-8"))
|
||||
for v in values_list]
|
||||
elif u"jid" in (field.fieldType or u""):
|
||||
values_list = [jid.JID(v) for v in values_list]
|
||||
if "list" in field.fieldType:
|
||||
if u"list" in (field.fieldType or u""):
|
||||
# for lists, we check that given values are allowed in form
|
||||
allowed_values = [o.value for o in field.options]
|
||||
values_list = [v for v in values_list if v in allowed_values]
|
||||
|
|
|
|||
Loading…
Reference in a new issue