diff src/plugins/plugin_exp_events.py @ 2291:c05000d00dbb

plugin events, invitations + jp (event/create, invitation/invitee/invite): several emails addresses can now be specified for a single invitation: if several addresses are specified, the same invitation (same ID and data) is sent to all the addresses
author Goffi <goffi@goffi.org>
date Fri, 30 Jun 2017 00:04:47 +0200
parents ea869f30f204
children 78048f002a3c
line wrap: on
line diff
--- a/src/plugins/plugin_exp_events.py	Fri Jun 30 00:02:16 2017 +0200
+++ b/src/plugins/plugin_exp_events.py	Fri Jun 30 00:04:47 2017 +0200
@@ -74,7 +74,7 @@
                               in_sign='ssa{ss}s', out_sign='',
                               method=self._eventInviteeSet,
                               async=True)
-        host.bridge.addMethod("eventInvite", ".plugin", in_sign='sssssssssss', out_sign='',
+        host.bridge.addMethod("eventInvite", ".plugin", in_sign='ssssassssssss', out_sign='',
                               method=self._invite,
                               async=True)
 
@@ -320,10 +320,12 @@
         item_elt = pubsub.Item(id=client.jid.userhost(), payload=event_elt)
         return self._p.publish(client, service, node, items=[item_elt])
 
-    def _invite(self, service, node, id_=NS_EVENT, email=u'', name=u'', host_name=u'', language=u'', url_template=u'',
+    def _invite(self, service, node, id_=NS_EVENT, email=u'', emails_extra=None, name=u'', host_name=u'', language=u'', url_template=u'',
         message_subject=u'', message_body=u'', profile_key=C.PROF_KEY_NONE):
         client = self.host.getClient(profile_key)
-        kwargs = {u'profile': client.profile}
+        kwargs = {u'profile': client.profile,
+                  u'emails_extra': [unicode(e) for e in emails_extra]
+                 }
         for key in ("email", "name", "host_name", "language", "url_template", "message_subject", "message_body"):
             value = locals()[key]
             kwargs[key] = unicode(value)