plugin schema: separate lines of text-multi in different values as requested by XEP-0004

This commit is contained in:
Goffi 2017-11-05 20:34:51 +01:00
commit f3d19392ea

View file

@ -32,6 +32,7 @@ from wokkel import generic
from zope.interface import implements
from collections import Iterable
import copy
import itertools
NS_SCHEMA = 'https://salut-a-toi/protocol/schema:0'
@ -285,6 +286,10 @@ class PubsubSchema(object):
if deserialise:
if field.fieldType == 'boolean':
values_list = [C.bool(v) for v in values_list]
elif field.fieldType == '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:
values_list = [jid.JID(v) for v in values_list]
if 'list' in field.fieldType: