Hopefully prevent interactions between admins without AHelp access and AHelps. (#11041)
This commit is contained in:
@@ -167,7 +167,8 @@ namespace Content.Server.Administration.Systems
|
|||||||
// Confirm that this person is actually allowed to send a message here.
|
// Confirm that this person is actually allowed to send a message here.
|
||||||
var personalChannel = senderSession.UserId == message.ChannelId;
|
var personalChannel = senderSession.UserId == message.ChannelId;
|
||||||
var senderAdmin = _adminManager.GetAdminData(senderSession);
|
var senderAdmin = _adminManager.GetAdminData(senderSession);
|
||||||
var authorized = personalChannel || senderAdmin != null;
|
var senderAHelpAdmin = senderAdmin?.HasFlag(AdminFlags.Adminhelp) ?? false;
|
||||||
|
var authorized = personalChannel || senderAHelpAdmin;
|
||||||
if (!authorized)
|
if (!authorized)
|
||||||
{
|
{
|
||||||
// Unauthorized bwoink (log?)
|
// Unauthorized bwoink (log?)
|
||||||
@@ -189,8 +190,10 @@ namespace Content.Server.Administration.Systems
|
|||||||
|
|
||||||
LogBwoink(msg);
|
LogBwoink(msg);
|
||||||
|
|
||||||
// Admins
|
// Admins w/ AHelp access
|
||||||
var targets = _adminManager.ActiveAdmins.Select(p => p.ConnectedClient).ToList();
|
var targets = _adminManager.ActiveAdmins
|
||||||
|
.Where(p => _adminManager.GetAdminData(p)?.HasFlag(AdminFlags.Adminhelp) ?? false)
|
||||||
|
.Select(p => p.ConnectedClient).ToList();
|
||||||
|
|
||||||
// And involved player
|
// And involved player
|
||||||
if (_playerManager.TryGetSessionById(message.ChannelId, out var session))
|
if (_playerManager.TryGetSessionById(message.ChannelId, out var session))
|
||||||
|
|||||||
Reference in New Issue
Block a user