Factor smsuser + remove unused variable

Noah Zalev committed Jan 9, 2022 at 21:04 UTC 96fa6e87d5b0bf3d9bc98ef3872ae42d3b41ff62
1 file changed +24 -23
meshuser.js
+24 -23
@@ -3527,29 +3527,6 @@ module.exports.CreateMeshUser = function (parent, db, ws, req, args, domain, use
3527 delete obj.hardwareKeyRegistrationRequest;
3528 break;
3529 }
3530 - case 'smsuser': { // Send a SMS message to a user
3531 - var errMsg = null, errId = 0, smsuser = null;
3532 - if (parent.parent.smsserver == null) { errMsg = "SMS gateway not enabled"; errId = 23; }
3533 - else if ((user.siteadmin & 2) == 0) { errMsg = "No user management rights"; errId = 24; }
3534 - else if (common.validateString(command.userid, 1, 2048) == false) { errMsg = "Invalid username"; errId = 2; }
3535 - else if (common.validateString(command.msg, 1, 160) == false) { errMsg = "Invalid SMS message"; errId = 25; }
3536 - else {
3537 - smsuser = parent.users[command.userid];
3538 - if (smsuser == null) { errMsg = "Invalid username"; errId = 2; }
3539 - else if (smsuser.phone == null) { errMsg = "No phone number for this user"; errId = 26; }
3540 - }
3541 -
3542 - if (errMsg != null) { displayNotificationMessage(errMsg); break; }
3543 -
3544 - parent.parent.smsserver.sendSMS(smsuser.phone, command.msg, function (success, msg) {
3545 - if (success) {
3546 - displayNotificationMessage("SMS succesfuly sent.", null, null, null, 27);
3547 - } else {
3548 - if (typeof msg == 'string') { displayNotificationMessage("SMS error: " + msg, null, null, null, 29, [msg]); } else { displayNotificationMessage("SMS error", null, null, null, 28); }
3549 - }
3550 - });
3551 - break;
3552 - }
3530 case 'emailuser': { // Send a email message to a user
3531 var errMsg = null, emailuser = null;
3532 if (domain.mailserver == null) { errMsg = 'Email server not enabled'; }
@@ -4970,6 +4947,7 @@ module.exports.CreateMeshUser = function (parent, db, ws, req, args, domain, use
4947 'servertimelinestats': serverCommandServerTimelineStats,
4948 'serverupdate': serverCommandServerUpdate,
4949 'serverversion': serverCommandServerVersion,
4950 + 'smsuser': serverCommandSmsUser,
4951 'updateUserImage': serverCommandUpdateUserImage,
4952 'urlargs': serverCommandUrlArgs,
4953 'users': serverCommandUsers,
@@ -6063,6 +6041,29 @@ module.exports.CreateMeshUser = function (parent, db, ws, req, args, domain, use
6041 parent.parent.getServerTags(function (tags, err) { try { ws.send(JSON.stringify({ action: 'serverversion', tags: tags })); } catch (ex) { } });
6042 }
6043
6044 + function serverCommandSmsUser(command) {
6045 + var errMsg = null, smsuser = null;
6046 + if (parent.parent.smsserver == null) { errMsg = "SMS gateway not enabled"; }
6047 + else if ((user.siteadmin & 2) == 0) { errMsg = "No user management rights"; }
6048 + else if (common.validateString(command.userid, 1, 2048) == false) { errMsg = "Invalid username"; }
6049 + else if (common.validateString(command.msg, 1, 160) == false) { errMsg = "Invalid SMS message"; }
6050 + else {
6051 + smsuser = parent.users[command.userid];
6052 + if (smsuser == null) { errMsg = "Invalid username"; }
6053 + else if (smsuser.phone == null) { errMsg = "No phone number for this user"; }
6054 + }
6055 +
6056 + if (errMsg != null) { displayNotificationMessage(errMsg); return; }
6057 +
6058 + parent.parent.smsserver.sendSMS(smsuser.phone, command.msg, function (success, msg) {
6059 + if (success) {
6060 + displayNotificationMessage("SMS succesfuly sent.", null, null, null, 27);
6061 + } else {
6062 + if (typeof msg == 'string') { displayNotificationMessage("SMS error: " + msg, null, null, null, 29, [msg]); } else { displayNotificationMessage("SMS error", null, null, null, 28); }
6063 + }
6064 + });
6065 + }
6066 +
6067 function serverCommandUpdateUserImage(command) {
6068 if (req.session.loginToken != null) return; // Do not allow this command when logged in using a login token
6069