# HG changeset patch # User Goffi # Date 1556909299 -7200 # Node ID 48985ef7682f7c9a76f7dda6b4fe9348b73fc51d # Parent db0890c9c7dbca44733c523f16f51e4fdf590921 tools (xml_tools): split new lines for multi-lines text in XMLUIResult2DataFormResult to be correctly handled in data form diff -r db0890c9c7db -r 48985ef7682f sat/tools/xml_tools.py --- a/sat/tools/xml_tools.py Fri May 03 20:46:59 2019 +0200 +++ b/sat/tools/xml_tools.py Fri May 03 20:48:19 2019 +0200 @@ -335,11 +335,15 @@ @param xmlui_data (dict): data returned by frontends for XMLUI form @return: dict of data usable by Wokkel's data form """ - return { - key[len(SAT_FORM_PREFIX) :]: _cleanValue(value) - for key, value in xmlui_data.iteritems() - if key.startswith(SAT_FORM_PREFIX) - } + ret = {} + for key, value in xmlui_data.iteritems(): + if not key.startswith(SAT_FORM_PREFIX): + continue + if isinstance(value, basestring) and u'\n' in value: + # data form expects multi-lines text to be in separated values + value = value.split(u'\n') + ret[key[len(SAT_FORM_PREFIX) :]] = _cleanValue(value) + return ret def formEscape(name):