diff --git a/src/plugins/plugin_exp_pubsub_schema.py b/src/plugins/plugin_exp_pubsub_schema.py index 3f69ac56..132e9a58 100755 --- a/src/plugins/plugin_exp_pubsub_schema.py +++ b/src/plugins/plugin_exp_pubsub_schema.py @@ -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: