summaryrefslogtreecommitdiffstats
path: root/models/users.js
diff options
context:
space:
mode:
authorLauri Ojansivu <x@xet7.org>2020-02-22 02:49:14 +0200
committerLauri Ojansivu <x@xet7.org>2020-02-22 02:49:14 +0200
commite0ca960a35cf006880019ba28fc82aa30f289a71 (patch)
treeb52103fa0a19ca0b066ddb5bea3b6ed78e569046 /models/users.js
parent0e755e021b34de90617fa62eceb949ba5e19d39a (diff)
downloadwekan-e0ca960a35cf006880019ba28fc82aa30f289a71.tar.gz
wekan-e0ca960a35cf006880019ba28fc82aa30f289a71.tar.bz2
wekan-e0ca960a35cf006880019ba28fc82aa30f289a71.zip
Create New User in Admin Panel. Works, but does not save fullname yet,
so currently it's needed to edit add fullname later. Thanks to xet7 ! Related #802
Diffstat (limited to 'models/users.js')
-rw-r--r--models/users.js28
1 files changed, 28 insertions, 0 deletions
diff --git a/models/users.js b/models/users.js
index 7e23835c..00076253 100644
--- a/models/users.js
+++ b/models/users.js
@@ -620,6 +620,34 @@ Users.mutations({
});
Meteor.methods({
+ setCreateUser(fullname, username, password, isAdmin, isActive, email) {
+ if (Meteor.user().isAdmin) {
+ check(fullname, String);
+ check(username, String);
+ check(password, String);
+ check(isAdmin, String);
+ check(isActive, String);
+ check(email, String);
+
+ const nUsersWithUsername = Users.find({ username }).count();
+ const nUsersWithEmail = Users.find({ email }).count();
+ if (nUsersWithUsername > 0) {
+ throw new Meteor.Error('username-already-taken');
+ } else if (nUsersWithEmail > 0) {
+ throw new Meteor.Error('email-already-taken');
+ } else {
+ Accounts.createUser({
+ fullname,
+ username,
+ password,
+ isAdmin,
+ isActive,
+ email: email.toLowerCase(),
+ from: 'admin',
+ });
+ }
+ }
+ },
setUsername(username, userId) {
check(username, String);
check(userId, String);