plugins XEP-0045, XEP-0249: allow to join / invite without specifying the JID's host part (use client's values)

This commit is contained in:
souliane 2015-03-24 07:34:32 +01:00
commit d4c627d71f

View file

@ -171,18 +171,17 @@ class XEP_0249(object):
@command (group): JID
- JID: the JID of the person to invite
"""
jid_s = mess_data["unparsed"].strip()
contact_jid_s = mess_data["unparsed"].strip()
my_host = self.host.profiles[profile].jid.host
try:
assert jid_s
jid_ = jid.JID(jid_s)
assert jid_.user
assert jid_.host
except (jid.InvalidFormat, AssertionError):
feedback = _(u"You must provide a valid JID to invite, like in '/invite contact@example.net'")
contact_jid = jid.JID(contact_jid_s)
except (RuntimeError, jid.InvalidFormat, AttributeError):
feedback = _(u"You must provide a valid JID to invite, like in '/invite contact@{host}'").format(host=my_host)
self.host.plugins[C.TEXT_CMDS].feedBack(feedback, mess_data, profile)
return False
self.invite(jid_, mess_data["to"], {}, profile)
if not contact_jid.user:
contact_jid.user, contact_jid.host = contact_jid.host, my_host
self.invite(contact_jid, mess_data["to"], {}, profile)
return False