Mercurial > libervia-backend
comparison src/plugins/plugin_misc_register_account.py @ 1088:b29452cab50b
core, memory, plugins, stdui, frontends: look for DNS SRV records when server is not specified:
- fix bug 3
- modify "Connection" params:
- rename "Server" to "Force server" and "Port" to "Force port"
- set the default value to empty string for both
author | souliane <souliane@mailoo.org> |
---|---|
date | Mon, 23 Jun 2014 00:44:10 +0200 |
parents | 85c110c0be86 |
children | 8e0072754413 |
comparison
equal
deleted
inserted
replaced
1087:b3b7a2863060 | 1088:b29452cab50b |
---|---|
53 self.__register_account_id = host.registerCallback(self._registerConfirmation, with_data=True) | 53 self.__register_account_id = host.registerCallback(self._registerConfirmation, with_data=True) |
54 | 54 |
55 def registerNewAccountCB(self, data, profile): | 55 def registerNewAccountCB(self, data, profile): |
56 """Called when the use click on the "New account" button.""" | 56 """Called when the use click on the "New account" button.""" |
57 session_data = {} | 57 session_data = {} |
58 for param in ('JabberID', 'Password', 'Port', 'Server'): | 58 for param in ('JabberID', 'Password', C.FORCE_PORT_PARAM, C.FORCE_SERVER_PARAM): |
59 try: | 59 try: |
60 session_data[param] = data["%s%s%s%s" % (SAT_FORM_PREFIX, "Connection", SAT_PARAM_SEPARATOR, param)] | 60 session_data[param] = data["%s%s%s%s" % (SAT_FORM_PREFIX, "Connection", SAT_PARAM_SEPARATOR, param)] |
61 except KeyError: | 61 except KeyError: |
62 if param == 'Port': | 62 if param == C.FORCE_PORT_PARAM: |
63 session_data[param] = 5222 | 63 session_data[param] = 5222 |
64 | 64 |
65 for param in ('JabberID', 'Password', 'Server'): | 65 for param in ('JabberID', 'Password', C.FORCE_SERVER_PARAM): |
66 if not session_data[param]: | 66 if not session_data[param]: |
67 form_ui = xml_tools.XMLUI("popup", title=D_("Missing values")) | 67 form_ui = xml_tools.XMLUI("popup", title=D_("Missing values")) |
68 form_ui.addText(D_("No user, password or server given: can't register new account.")) | 68 form_ui.addText(D_("No user, password or server given: can't register new account.")) |
69 return {'xmlui': form_ui.toXml()} | 69 return {'xmlui': form_ui.toXml()} |
70 | 70 |
71 user = jid.parse(session_data['JabberID'])[0] | 71 user = jid.parse(session_data['JabberID'])[0] |
72 session_id, dummy = self._sessions.newSession(session_data, profile) | 72 session_id, dummy = self._sessions.newSession(session_data, profile) |
73 form_ui = xml_tools.XMLUI("form", title=D_("Register new account"), submit_id=self.__register_account_id, session_id=session_id) | 73 form_ui = xml_tools.XMLUI("form", title=D_("Register new account"), submit_id=self.__register_account_id, session_id=session_id) |
74 form_ui.addText(D_("Do you want to register a new XMPP account [%(user)s] on server %(server)s ?") % {'user': user, 'server': session_data['Server']}) | 74 form_ui.addText(D_("Do you want to register a new XMPP account [%(user)s] on server %(server)s ?") % {'user': user, 'server': session_data[C.FORCE_SERVER_PARAM]}) |
75 return {'xmlui': form_ui.toXml()} | 75 return {'xmlui': form_ui.toXml()} |
76 | 76 |
77 def _registerConfirmation(self, data, profile): | 77 def _registerConfirmation(self, data, profile): |
78 """Save the related parameters and proceed the registration.""" | 78 """Save the related parameters and proceed the registration.""" |
79 session_data = self._sessions.profileGet(data['session_id'], profile) | 79 session_data = self._sessions.profileGet(data['session_id'], profile) |
80 | 80 |
81 self.host.memory.setParam("JabberID", session_data["JabberID"], "Connection", profile_key=profile) | 81 self.host.memory.setParam("JabberID", session_data["JabberID"], "Connection", profile_key=profile) |
82 self.host.memory.setParam("Password", session_data["Password"], "Connection", profile_key=profile) | 82 self.host.memory.setParam("Password", session_data["Password"], "Connection", profile_key=profile) |
83 self.host.memory.setParam("Server", session_data["Server"], "Connection", profile_key=profile) | 83 self.host.memory.setParam(C.FORCE_SERVER_PARAM, session_data[C.FORCE_SERVER_PARAM], "Connection", profile_key=profile) |
84 self.host.memory.setParam("Port", session_data["Port"], "Connection", profile_key=profile) | 84 self.host.memory.setParam(C.FORCE_PORT_PARAM, session_data[C.FORCE_PORT_PARAM], "Connection", profile_key=profile) |
85 | 85 |
86 user = jid.parse(session_data['JabberID'])[0] | 86 user = jid.parse(session_data['JabberID'])[0] |
87 d = self._registerNewAccount(user, session_data["Password"], None, session_data["Server"], profile_key=profile) | 87 d = self._registerNewAccount(user, session_data["Password"], None, session_data[C.FORCE_SERVER_PARAM], profile_key=profile) |
88 del self._sessions[data['session_id']] | 88 del self._sessions[data['session_id']] |
89 return d | 89 return d |
90 | 90 |
91 def _registerNewAccount(self, user, password, email, host, port=5222, profile_key=C.PROF_KEY_NONE): | 91 def _registerNewAccount(self, user, password, email, host, port=5222, profile_key=C.PROF_KEY_NONE): |
92 """Connect to a server and create a new account using in-band registration. | 92 """Connect to a server and create a new account using in-band registration. |