diff --git a/actions/xmpp-register b/actions/xmpp-register new file mode 100755 index 000000000..88c7fa26f --- /dev/null +++ b/actions/xmpp-register @@ -0,0 +1,2 @@ +#!/bin/sh +ejabberdctl register $1 `hostname` $2 diff --git a/modules/installed/services/xmpp.py b/modules/installed/services/xmpp.py index a5aac83b7..1a8c3d6a4 100644 --- a/modules/installed/services/xmpp.py +++ b/modules/installed/services/xmpp.py @@ -4,6 +4,7 @@ from modules.auth import require from plugin_mount import PagePlugin, FormPlugin import cfg from forms import Form +from privilegedactions import privilegedaction_run from util import Message class xmpp(PagePlugin): @@ -44,10 +45,10 @@ class register(FormPlugin, PagePlugin): if not username: msg.add = _("Must specify a username!") if not password: msg.add = _("Must specify a password!") - # register account using script - - if not msg: + if username and password: + privilegedaction_run("xmpp-register", [username, password]) msg.add = _("Registered account for %s." % username) + cfg.log(msg.text) main = self.main(username, msg=msg.text) return self.fill_template(title="XMPP Server Configuration", main=main, sidebar_left=self.sidebar_left, sidebar_right=self.sidebar_right)