MCSManager/helper/KeyManager.js

32 lines
817 B
JavaScript
Raw Normal View History

2020-10-08 11:59:48 +08:00
const userCenter = require("../model/UserModel").userCenter();
const permission = require("./Permission");
2020-07-18 10:11:33 +08:00
// 通过 KEY 来获取相对的用户身份
function getUser(key = "") {
2020-10-08 11:59:48 +08:00
key = key.trim();
const userList = userCenter.userList;
for (const userName in userList) {
if (userList[userName].dataModel.apikey === key) {
return userList[userName];
2020-07-18 10:11:33 +08:00
}
2020-10-08 11:59:48 +08:00
}
return null;
2020-07-18 10:11:33 +08:00
}
module.exports.isMaster = (key) => {
2020-10-08 11:59:48 +08:00
const user = getUser(key);
if (!user) return false;
2020-07-18 10:11:33 +08:00
2020-10-08 11:59:48 +08:00
const userName = user.dataModel.username;
if (userName.substr(0, 1) === "#") return true;
else return false;
};
2020-07-18 10:11:33 +08:00
module.exports.hasServer = (key, serverName) => {
2020-10-08 11:59:48 +08:00
const user = getUser(key);
if (!user) return false;
2020-07-18 10:11:33 +08:00
2020-10-08 11:59:48 +08:00
const userName = user.dataModel.username;
return permission.isCanServer(userName, serverName);
};