diff --git a/API/Controllers/Admin/TeamsAdminController.cs b/API/Controllers/Admin/TeamsAdminController.cs index 9cdff0d..6d5e2f8 100644 --- a/API/Controllers/Admin/TeamsAdminController.cs +++ b/API/Controllers/Admin/TeamsAdminController.cs @@ -5,8 +5,13 @@ using Services; namespace API.Controllers.Admin; + +/// +/// WARNING: This controller does not requires the requester to be authenticated, see https://codefirst.iut.uca.fr/git/IQBall/Server-Panel/issues/2 +/// +/// [ApiController] -public class TeamsAdminController(ITeamService service) : ControllerBase +public class TeamsAdminController(ITeamService service, ILogger logger) : ControllerBase { public record CountTeamsResponse(int Value); @@ -14,15 +19,10 @@ public class TeamsAdminController(ITeamService service) : ControllerBase [HttpGet("/admin/teams/count")] public async Task CountTeams() { + logger.LogTrace("Counting teams"); return new CountTeamsResponse(await service.CountTotalTeams()); } - - // [HttpGet("/admin/users/count")] - // public async Task CountUsers() - // { - // return new CountUsersResponse(await service.UsersCount()); - // } - + [HttpGet("/admin/teams")] public Task> ListTeams( [Range(0, int.MaxValue, ErrorMessage = "Only positive number allowed")] @@ -31,6 +31,7 @@ public class TeamsAdminController(ITeamService service) : ControllerBase int n ) { + logger.LogTrace("Listing teams"); return service.ListTeams(start, n); } @@ -39,6 +40,7 @@ public class TeamsAdminController(ITeamService service) : ControllerBase [HttpPost("/admin/teams")] public async Task AddTeam([FromBody] AddTeamRequest req) { + logger.LogTrace("Adding teams"); var team = await service.AddTeam(req.Name, req.Picture, req.FirstColor, req.SecondColor); return Ok(team); @@ -49,6 +51,7 @@ public class TeamsAdminController(ITeamService service) : ControllerBase [HttpPut("/admin/teams/{teamId:int}")] public async Task UpdateTeam(int teamId, [FromBody] UpdateTeamRequest req) { + logger.LogTrace("Updating teams"); await service.UpdateTeam(new Team(teamId, req.Name, req.Picture, req.MainColor, req.SecondaryColor)); return Ok(); @@ -59,6 +62,8 @@ public class TeamsAdminController(ITeamService service) : ControllerBase [HttpPost("/admin/teams/remove-all")] public async Task DeleteTeams([FromBody] DeleteTeamsRequest req) { + logger.LogTrace("Deleting teams"); + await service.RemoveTeams(req.Teams); return Ok(); } diff --git a/API/Controllers/Admin/UsersAdminController.cs b/API/Controllers/Admin/UsersAdminController.cs index deadca9..10d6a2d 100644 --- a/API/Controllers/Admin/UsersAdminController.cs +++ b/API/Controllers/Admin/UsersAdminController.cs @@ -5,8 +5,12 @@ using Services; namespace API.Controllers.Admin; +/// +/// WARNING: This controller does not requires the requester to be authenticated, see https://codefirst.iut.uca.fr/git/IQBall/Server-Panel/issues/2 +/// +/// [ApiController] -public class UsersAdminController(IUserService service) : ControllerBase +public class UsersAdminController(IUserService service, ILogger logger) : ControllerBase { public record CountUsersResponse(int Value); @@ -17,20 +21,17 @@ public class UsersAdminController(IUserService service) : ControllerBase string search ) { + logger.LogTrace("Counting Users"); return new CountUsersResponse(await service.UsersCount(search)); } [HttpGet("/admin/users/count")] public async Task CountUsers() { + logger.LogTrace("Counting Users"); return new CountUsersResponse(await service.UsersCount()); } - - // [HttpGet("/admin/users/count")] - // public async Task CountUsers() - // { - // return new CountUsersResponse(await service.UsersCount()); - // } + [HttpGet("/admin/users")] public async Task> ListUsers( @@ -42,6 +43,8 @@ public class UsersAdminController(IUserService service) : ControllerBase string? search ) { + logger.LogTrace("Listing Users"); + var result = await service.ListUsers(start, n, search); return result; } @@ -52,6 +55,8 @@ public class UsersAdminController(IUserService service) : ControllerBase int id ) { + logger.LogTrace("Getting a specific User ({})", id); + var result = await service.GetUser(id); if (result == null) return NotFound(); @@ -73,6 +78,8 @@ public class UsersAdminController(IUserService service) : ControllerBase [HttpPost("/admin/users")] public Task AddUser([FromBody] AddUserRequest req) { + logger.LogTrace("Adding a User"); + return service.CreateUser(req.Username, req.Email, req.Password, UsersController.DefaultProfilePicture, req.IsAdmin); } @@ -82,6 +89,8 @@ public class UsersAdminController(IUserService service) : ControllerBase [HttpPost("/admin/users/remove-all")] public async Task RemoveUsers([FromBody] RemoveUsersRequest req) { + logger.LogTrace("Removing Users"); + await service.RemoveUsers(req.Identifiers); return Ok(); } @@ -103,6 +112,8 @@ public class UsersAdminController(IUserService service) : ControllerBase { try { + logger.LogTrace("Updating Users"); + await service.UpdateUser(new User(id, req.Username, req.Email, UsersController.DefaultProfilePicture, req.IsAdmin)); return Ok();