CatStation/Content.Server/Administration/Logs/IAdminLogManager.cs
Crude Oil 812fbd03af
Add functionality to select players when opening admin log UI (#44604)
* add user id to adminlogs command, allow opening logs for specific player

* replace ban list with opening player logs in ahelp window

* add entity logs verb

* make it less obvious I blatantly copied stuff from admin notes

* player log verb now actually working as intended

* use logic, not call command

* implement TryGetLastMind and TryGetLastMindOwner

* replace double condition with TryGetLastMind

* oops

* Apply suggestion from @AJCM-git

---------

Co-authored-by: AJCM-git <60196617+AJCM-git@users.noreply.github.com>
2026-07-14 20:57:10 +00:00

30 lines
1.1 KiB
C#

using System.Text.Json;
using System.Threading.Tasks;
using Content.Server.Database;
using Content.Server.GameTicking;
using Content.Shared.Administration.Logs;
using Robust.Shared.Network;
using Robust.Shared.Player;
namespace Content.Server.Administration.Logs;
public interface IAdminLogManager : ISharedAdminLogManager
{
void Initialize();
Task Shutdown();
void Update();
void RoundStarting(int id);
void RunLevelChanged(GameRunLevel level);
Task<List<SharedAdminLog>> All(LogFilter? filter = null, Func<List<SharedAdminLog>>? listProvider = null);
IAsyncEnumerable<string> AllMessages(LogFilter? filter = null);
IAsyncEnumerable<JsonDocument> AllJson(LogFilter? filter = null);
Task<Round> Round(int roundId);
Task<List<SharedAdminLog>> CurrentRoundLogs(LogFilter? filter = null);
IAsyncEnumerable<string> CurrentRoundMessages(LogFilter? filter = null);
IAsyncEnumerable<JsonDocument> CurrentRoundJson(LogFilter? filter = null);
Task<Round> CurrentRound();
Task<int> CountLogs(int round);
void OpenEui(ICommonSession admin, string? search = null, Guid? targetPlayer = null);
}