diff --git a/Content.Server/Administration/Managers/RoleBanManager.cs b/Content.Server/Administration/Managers/RoleBanManager.cs index 3cf2880be5..f085ecf7ad 100644 --- a/Content.Server/Administration/Managers/RoleBanManager.cs +++ b/Content.Server/Administration/Managers/RoleBanManager.cs @@ -123,6 +123,12 @@ public sealed class RoleBanManager //WD start public async void UtkaCreateJobBan(string admin, string target, string job, string reason, uint minutes, bool isGlobalBan) { + if (!_prototypeManager.TryIndex(job, out _)) + { + UtkaSendResponse(false); + return; + } + var role = string.Concat(JobPrefix, job); var located = await _playerLocator.LookupIdByNameOrIdAsync(target); diff --git a/Content.Server/UtkaIntegration/Commands/UtkaBanCommand.cs b/Content.Server/UtkaIntegration/Commands/UtkaBanCommand.cs index ae21976d0d..50d55649a7 100644 --- a/Content.Server/UtkaIntegration/Commands/UtkaBanCommand.cs +++ b/Content.Server/UtkaIntegration/Commands/UtkaBanCommand.cs @@ -105,6 +105,8 @@ public sealed class UtkaBanCommand : IUtkaCommand null, serverName); + UtkaSendResponse(true); + await dbMan.AddServerBanAsync(banDef); if (plyMgr.TryGetSessionById(targetUid, out var targetPlayer)) @@ -113,7 +115,8 @@ public sealed class UtkaBanCommand : IUtkaCommand targetPlayer.ConnectedClient.Disconnect(msg); } - UtkaSendResponse(true); + var banlist = await dbMan.GetServerBansAsync(null, targetUid, null); + var banId = banlist[^1].Id; var utkaBanned = new UtkaBannedEvent() {