From e0f070cdd750bda9d11b545608f2a65cca2aaff8 Mon Sep 17 00:00:00 2001 From: zefie Date: Fri, 7 Oct 2022 20:46:30 -0400 Subject: [PATCH] more wtv-admin stuff --- .../ServiceVault/wtv-admin/admin.js | 6 +- .../ServiceVault/wtv-admin/findaccount.js | 15 +- .../wtv-admin/images/polyzoot.jpg | Bin 0 -> 9549 bytes .../ServiceVault/wtv-admin/polyzoot.js | 133 ++++++++++++++++++ .../wtv-admin/removeuserpasswd.js | 109 ++++++++++++++ zefie_wtvp_minisrv/WTVAdmin.js | 11 ++ zefie_wtvp_minisrv/WTVBGMusic.js | 4 +- zefie_wtvp_minisrv/WTVClientSessionData.js | 2 +- zefie_wtvp_minisrv/config.json | 1 + 9 files changed, 269 insertions(+), 12 deletions(-) create mode 100644 zefie_wtvp_minisrv/ServiceVault/wtv-admin/images/polyzoot.jpg create mode 100644 zefie_wtvp_minisrv/ServiceVault/wtv-admin/polyzoot.js create mode 100644 zefie_wtvp_minisrv/ServiceVault/wtv-admin/removeuserpasswd.js diff --git a/zefie_wtvp_minisrv/ServiceVault/wtv-admin/admin.js b/zefie_wtvp_minisrv/ServiceVault/wtv-admin/admin.js index fad5cf02..a9a9ac56 100644 --- a/zefie_wtvp_minisrv/ServiceVault/wtv-admin/admin.js +++ b/zefie_wtvp_minisrv/ServiceVault/wtv-admin/admin.js @@ -51,17 +51,17 @@ if (auth === true) { Whitelist an SSID -Remove Pass from User +Remove Pass from User Grant Admin to SSID -Revoke Admin from SSID +Modify Admin for SSID - +Polyzoot a User diff --git a/zefie_wtvp_minisrv/ServiceVault/wtv-admin/findaccount.js b/zefie_wtvp_minisrv/ServiceVault/wtv-admin/findaccount.js index d2518f59..23048614 100644 --- a/zefie_wtvp_minisrv/ServiceVault/wtv-admin/findaccount.js +++ b/zefie_wtvp_minisrv/ServiceVault/wtv-admin/findaccount.js @@ -60,12 +60,15 @@ wtv-noback-all: wtv-admin:/findaccount`; } data += ` - -Ban SSID -           -Unban SSID -           -Delete Account +`; + if (wtva.isBanned(user_info.ssid)) { + data += `Unban SSID`; + data += " ".repeat(28); + } else { + data += `Ban SSID`; + data += " ".repeat(32); + } +data += `Delete Account ` diff --git a/zefie_wtvp_minisrv/ServiceVault/wtv-admin/images/polyzoot.jpg b/zefie_wtvp_minisrv/ServiceVault/wtv-admin/images/polyzoot.jpg new file mode 100644 index 0000000000000000000000000000000000000000..881753d750fa7dccc2f20b03fa3d667f5990ce88 GIT binary patch literal 9549 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 Op?)njRI}QDSN{vQ5Bwki literal 0 HcmV?d00001 diff --git a/zefie_wtvp_minisrv/ServiceVault/wtv-admin/polyzoot.js b/zefie_wtvp_minisrv/ServiceVault/wtv-admin/polyzoot.js new file mode 100644 index 00000000..fb855ba5 --- /dev/null +++ b/zefie_wtvp_minisrv/ServiceVault/wtv-admin/polyzoot.js @@ -0,0 +1,133 @@ +var minisrv_service_file = true; + +var WTVAdmin = require("./WTVAdmin.js"); +var wtva = new WTVAdmin(minisrv_config, ssid_sessions[socket.ssid], service_name); +var auth = wtva.isAuthorized(); +if (auth === true) { + var password = null; + if (request_headers.Authorization) { + var authheader = request_headers.Authorization.split(' '); + if (authheader[0] == "Basic") { + password = Buffer.from(authheader[1], 'base64').toString(); + if (password) password = password.split(':')[1]; + } + } + if (wtva.checkPassword(password)) { + if (request_headers.query.username) { + var user_info = wtva.getAccountInfo(request_headers.query.username.toLowerCase()); // username search + if (user_info) { + var userAccount = wtva.getAccountBySSID(user_info.ssid); + userAccount.switchUserID(user_info.user_id, false, false); + if (request_headers.query.confirm) { + var polyzooot = 1407; + var WTVBGMusic = require("./WTVBGMusic.js"); + var wtvbgm = new WTVBGMusic(minisrv_config, userAccount); + var bgmcat = wtvbgm.getSongCategory(polyzooot); + var music_obj = wtvbgm.getMusicObj(); + music_obj.enableCategories = [bgmcat]; + music_obj.enableSongs = [polyzooot]; + music_obj = Object.assign({}, music_obj) + userAccount.setSessionData("wtv-bgmusic", music_obj); + var settings_obj = userAccount.getSessionData("wtv-setup"); + if (settings_obj === null) settings_obj = {}; + settings_obj['setup-play-bgm'] = 1; + userAccount.setSessionData("wtv-setup", Object.assign({}, settings_obj)); + userAccount.saveSessionData(); + } + if (request_headers.query.reset) { + var WTVBGMusic = require("./WTVBGMusic.js"); + userAccount.deleteSessionData("wtv-bgmusic") + var wtvbgm = new WTVBGMusic(minisrv_config, userAccount); + var music_obj = wtvbgm.getMusicObj(true); + var settings_obj = userAccount.getSessionData("wtv-setup"); + if (settings_obj === null) settings_obj = {}; + settings_obj['setup-play-bgm'] = 0; + userAccount.setSessionData("wtv-setup", Object.assign({}, settings_obj)); + userAccount.saveSessionData(); + } + } + } + headers = `200 OK +Content-Type: text/html +wtv-expire-all: wtv-admin:/polyzoot +wtv-noback-all: wtv-admin:/polyzoot`; + data = ` + + +${minisrv_config.config.service_name} Admin Tricks + + + + +
+
+

${minisrv_config.config.service_name} Admin Tricks

+
+ + + + + + +` + data += `
+

Polyzoot a User

`; + + if (!request_headers.query.username) { + data += `"Polyzooting" a user will replace their Background Music with only Polyzoot, +and turn on BGM if they have it disabled. This will not work on Old Classic clients. +Also, the only way to undo a "Polyzooting" is to reset the user's music selection to default.

` + } + +data += ` +
+   +


` + if (request_headers.query.username) { + if (user_info && !request_headers.query.confirm && !request_headers.query.reset) { + if (user_info.username == ssid_sessions[socket.ssid].getSessionData("subscriber_username")) { + data += `Are you sure you want to Polyzoot yourself?
Are you a masochist?`; + } else { + data += `Are you sure you want to Polyzoot ${user_info.username}?
Are you a sadist?`; + } + data += ` +

+
+
+ + + +
+ + + + + +
`; + } else if (request_headers.query.confirm) { + data += `You have condemned ${user_info.username}
to endless loops of Polyzoot.

It will take effect upon their next login.

`; + } else if (request_headers.query.reset) { + data += `You have freed ${user_info.username}'s soul
from the bounds of Polyzoot.

It will take effect upon their next login.

`; + } + } + data += ` +
+
+ + +
+ + +`; + } else { + var errpage = wtvshared.doErrorPage(401, "Please enter the administration password, you can leave the username blank."); + headers = errpage[0]; + data = errpage[1]; + } +} else { + var errpage = wtvshared.doErrorPage(403, auth); + headers = errpage[0]; + data = errpage[1]; +} \ No newline at end of file diff --git a/zefie_wtvp_minisrv/ServiceVault/wtv-admin/removeuserpasswd.js b/zefie_wtvp_minisrv/ServiceVault/wtv-admin/removeuserpasswd.js new file mode 100644 index 00000000..e66a6d52 --- /dev/null +++ b/zefie_wtvp_minisrv/ServiceVault/wtv-admin/removeuserpasswd.js @@ -0,0 +1,109 @@ +var minisrv_service_file = true; + +var WTVAdmin = require("./WTVAdmin.js"); +var wtva = new WTVAdmin(minisrv_config, ssid_sessions[socket.ssid], service_name); +var auth = wtva.isAuthorized(); +if (auth === true) { + var password = null; + if (request_headers.Authorization) { + var authheader = request_headers.Authorization.split(' '); + if (authheader[0] == "Basic") { + password = Buffer.from(authheader[1], 'base64').toString(); + if (password) password = password.split(':')[1]; + } + } + if (wtva.checkPassword(password)) { + if (request_headers.query.username) { + var show_cannot_modify_self = false; + var show_user_has_no_password = false; + var user_info = wtva.getAccountInfo(request_headers.query.username.toLowerCase()); // username search + if (user_info) { + if (user_info.ssid == socket.ssid) { + show_cannot_modify_self = true; + } + var userAccount = wtva.getAccountBySSID(user_info.ssid); + userAccount.switchUserID(user_info.user_id, false, false); + if (!userAccount.getUserPasswordEnabled()) { + show_user_has_no_password = true; + } + if (request_headers.query.confirm_remove) { + if (!show_cannot_modify_self && !show_user_has_no_password) { + userAccount.disableUserPassword(); + } + } + } + } + headers = `200 OK +Content-Type: text/html +wtv-expire-all: wtv-admin:/removeuserpasswd +wtv-noback-all: wtv-admin:/removeuserpasswd`; + data = ` + + +${minisrv_config.config.service_name} Admin Tricks + + + + +
+
+

${minisrv_config.config.service_name} Admin Tricks

+
+ + + +
+

Remove Password from a User Account

+
+   +


` + if (request_headers.query.username) { + if (user_info && !request_headers.query.confirm_remove && !show_user_has_no_password && !show_cannot_modify_self) { + data += ` +User Information: + + +`; + if (user_info.account_users) { + data += ``; + } + data += ` + + + +` + data += `
Username:${user_info.username} (User ID: ${user_info.user_id})
SSID:${user_info.ssid}
Primary User:${user_info.account_users['subscriber'].subscriber_username}
+
+ + + +
+
`; + } else if (show_cannot_modify_self) { + data += `Cannot modify your account in this manner.
Try wtv-setup.


`; + } else if (show_user_has_no_password) { + data += `${user_info.username} has no password,
so there nothing to do.

`; + } else { + data += `Password removed from account "${user_info.username}"

`; + } + } + data += ` +
+
+
+

+Go Back +

+ + +`; + } else { + var errpage = wtvshared.doErrorPage(401, "Please enter the administration password, you can leave the username blank."); + headers = errpage[0]; + data = errpage[1]; + } +} else { + var errpage = wtvshared.doErrorPage(403, auth); + headers = errpage[0]; + data = errpage[1]; +} \ No newline at end of file diff --git a/zefie_wtvp_minisrv/WTVAdmin.js b/zefie_wtvp_minisrv/WTVAdmin.js index 78aff4ca..0c428d9e 100644 --- a/zefie_wtvp_minisrv/WTVAdmin.js +++ b/zefie_wtvp_minisrv/WTVAdmin.js @@ -148,6 +148,17 @@ class WTVAdmin { userSession.user_id = 0; return userSession; } + + isBanned(ssid) { + var self = this; + var isBanned = false; + Object.keys(this.minisrv_config.config.ssid_block_list).forEach(function (k) { + if (self.minisrv_config.config.ssid_block_list[k] == ssid) { + isBanned = true; + } + }); + return isBanned; + } } module.exports = WTVAdmin; diff --git a/zefie_wtvp_minisrv/WTVBGMusic.js b/zefie_wtvp_minisrv/WTVBGMusic.js index 2cfa8bdd..0fe4c2a6 100644 --- a/zefie_wtvp_minisrv/WTVBGMusic.js +++ b/zefie_wtvp_minisrv/WTVBGMusic.js @@ -1252,12 +1252,12 @@ class WTVBGMusic { this.wtvshared = new WTVShared(minisrv_config); } - getMusicObj() { + getMusicObj(force_default = false) { var music_obj = this.session_data.getSessionData("wtv-bgmusic"); if (music_obj === null) music_obj = {}; // check if we need to set defaults - var setDefaults = false; + var setDefaults = force_default; if (!music_obj.enableCategories) setDefaults = true; else if (music_obj.enableCategories.length == 0) setDefaults = true; if (!music_obj.enableSongs) setDefaults = true; diff --git a/zefie_wtvp_minisrv/WTVClientSessionData.js b/zefie_wtvp_minisrv/WTVClientSessionData.js index 68ab198b..0a1be9b1 100644 --- a/zefie_wtvp_minisrv/WTVClientSessionData.js +++ b/zefie_wtvp_minisrv/WTVClientSessionData.js @@ -451,7 +451,7 @@ class WTVClientSessionData { getUserPasswordEnabled() { if (!this.minisrv_config.config.passwords.enabled) return false; // master config override var enabled = this.getSessionData("subscriber_password"); - return (enabled); // true if set, false if null/disabled + return (enabled != null && typeof enabled != undefined); // true if set, false if null/disabled } validateUserPassword(passwd) { diff --git a/zefie_wtvp_minisrv/config.json b/zefie_wtvp_minisrv/config.json index 40308694..07f8dd7f 100644 --- a/zefie_wtvp_minisrv/config.json +++ b/zefie_wtvp_minisrv/config.json @@ -113,6 +113,7 @@ }, "wtv-admin": { "port": 1698, + "enable_multi_query": true, "password": "viRak-7" }, "http": {

+Go Back +