comparison src/plugins/plugin_exp_pubsub_schema.py @ 2420:03da3ef5fb5b

plugin tickets: added ticketsSet and ticketsSchemaGet methods: those methods are high level methods specialised for tickets. ticketsSet will use default tickets node if node is not set, set "created" and "updated" fields, create comments node if the ticket is new, and associate it with "comments_uri" field. ticketsSchemaGet is like getUISchema with node defaulting to tickets default node.
author Goffi <goffi@goffi.org>
date Sun, 05 Nov 2017 15:36:06 +0100
parents 3ff9d7a7fe71
children b7e24ce97a06
comparison
equal deleted inserted replaced
2419:c38c54c47e16 2420:03da3ef5fb5b
259 259
260 @defer.inlineCallbacks 260 @defer.inlineCallbacks
261 def sendDataFormItem(self, client, service, nodeIdentifier, values, schema=None, item_id=None, extra=None, deserialise=False): 261 def sendDataFormItem(self, client, service, nodeIdentifier, values, schema=None, item_id=None, extra=None, deserialise=False):
262 """Publish an item as a dataform when we know that there is a schema 262 """Publish an item as a dataform when we know that there is a schema
263 263
264 @param values(dict[[iterable[object], object]): values set for the form 264 @param values(dict[key(unicode), [iterable[object], object]]): values set for the form
265 if not iterable, will be put in a list 265 if not iterable, will be put in a list
266 @param schema(domish.Element, data_form.Form, None): data schema 266 @param schema(domish.Element, data_form.Form, None): data schema
267 None to retrieve data schema from node (need to do a additional XMPP call) 267 None to retrieve data schema from node (need to do a additional XMPP call)
268 Schema is needed to construct data form to publish 268 Schema is needed to construct data form to publish
269 @param deserialise(bool): if True, data are list of unicode and must be deserialized according to expected type 269 @param deserialise(bool): if True, data are list of unicode and must be deserialized according to expected type
270 This is done in this method and not directly in _sendDataFormItem because we need to know the data type 270 This is done in this method and not directly in _sendDataFormItem because we need to know the data type
271 which is in the form, not availablable in _sendDataFormItem 271 which is in the form, not availablable in _sendDataFormItem
272 other parameters as the same as for [self._p.sendItem] 272 other parameters as the same as for [self._p.sendItem]
273 @return (unicode): id of the created item
273 """ 274 """
274 form = yield self.getSchemaForm(client, service, nodeIdentifier, schema, form_type='submit') 275 form = yield self.getSchemaForm(client, service, nodeIdentifier, schema, form_type='submit')
275 276
276 for name, values_list in values.iteritems(): 277 for name, values_list in values.iteritems():
277 try: 278 try: