diff --git a/src/tools/xml_tools.py b/src/tools/xml_tools.py index ac03cf1f..d02aacf8 100644 --- a/src/tools/xml_tools.py +++ b/src/tools/xml_tools.py @@ -25,6 +25,7 @@ log = getLogger(__name__) from xml.dom import minidom, NotFoundErr from wokkel import data_form from twisted.words.xish import domish +from twisted.words.protocols.jabber import jid from sat.core import exceptions @@ -254,6 +255,7 @@ def paramsXML2XMLUI(xml): @param xml (unicode) @return: XMLUI """ + # TODO: refactor params and use Twisted directly to parse XML params_doc = minidom.parseString(xml.encode('utf-8')) top = params_doc.documentElement if top.nodeName != 'params': @@ -281,9 +283,11 @@ def paramsXML2XMLUI(xml): callback_id = param.getAttribute('callback_id') or None if type_ == 'list': - options, selected = _getParamListOptions(param) + options, selected = _paramsGetListOptions(param) widget_kwargs['options'] = options widget_kwargs['selected'] = selected + elif type_ == 'jids_list': + widget_kwargs['jids'] = _paramsGetListJids(param) if type_ in ("button", "text"): param_ui.addEmpty() @@ -308,7 +312,7 @@ def paramsXML2XMLUI(xml): return param_ui.toXml() -def _getParamListOptions(param): +def _paramsGetListOptions(param): """Retrieve the options for list element. The