From 272ddf9f0123c56dc7b0ac3c114ffa6b93943e26 Mon Sep 17 00:00:00 2001 From: Lance Stout Date: Sat, 7 Apr 2012 21:16:36 -0400 Subject: Add nickname element to the XEP-0054 plugin. --- sleekxmpp/plugins/xep_0054/stanza.py | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/sleekxmpp/plugins/xep_0054/stanza.py b/sleekxmpp/plugins/xep_0054/stanza.py index 38f8d43b..13865bb5 100644 --- a/sleekxmpp/plugins/xep_0054/stanza.py +++ b/sleekxmpp/plugins/xep_0054/stanza.py @@ -68,6 +68,28 @@ class Name(ElementBase): return self._get_component('SUFFIX') +class Nickname(ElementBase): + name = 'NICKNAME' + namespace = 'vcard-temp' + plugin_attrib = name + interfaces = set([name]) + is_extension = True + + def set_nickname(self, value): + if not value: + self.xml.text = '' + return + + if not isinstance(value, list): + value = [value] + + self.xml.text = ','.join(value) + + def get_nickname(self): + if self.xml.text: + return self.xml.text.split(',') + + class Email(ElementBase): name = 'EMAIL' namespace = 'vcard-temp' @@ -493,6 +515,7 @@ register_stanza_plugin(VCardTemp, Label, iterable=True) register_stanza_plugin(VCardTemp, Logo, iterable=True) register_stanza_plugin(VCardTemp, Mailer, iterable=True) register_stanza_plugin(VCardTemp, Note, iterable=True) +register_stanza_plugin(VCardTemp, Nickname, iterable=True) register_stanza_plugin(VCardTemp, Photo, iterable=True) register_stanza_plugin(VCardTemp, ProdID, iterable=True) register_stanza_plugin(VCardTemp, Rev, iterable=True) -- cgit v1.2.3