From 212b0bcd9c64dd0c1a30a5ecc760b1af5929df06 Mon Sep 17 00:00:00 2001 From: Kimiya Beheshti Date: Fri, 4 Jun 2021 10:07:54 +0200 Subject: [PATCH 1/3] Update: remove filter for listing invitations (coscine/issues#1531) --- src/Project/Controllers/ProjectController.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Project/Controllers/ProjectController.cs b/src/Project/Controllers/ProjectController.cs index aeb220e..fb677d3 100644 --- a/src/Project/Controllers/ProjectController.cs +++ b/src/Project/Controllers/ProjectController.cs @@ -600,7 +600,7 @@ namespace Coscine.Api.Project.Controllers return Unauthorized($"You are not an owner of the project."); } - var invitations = _invitationModel.GetAllWhere(x => x.Project == projectId && x.Expiration > DateTime.UtcNow) + var invitations = _invitationModel.GetAllWhere(x => x.Project == projectId) .Select(x => new InvitationReturnObject { Id = x.Id, -- GitLab From 4ee5d5d3f35eb49b502e4cbde9fafcf3c522d4f1 Mon Sep 17 00:00:00 2001 From: Kimiya Beheshti Date: Tue, 8 Jun 2021 15:29:58 +0200 Subject: [PATCH 2/3] Update: solve the problem of showing deplications in email lists (coscine/issues#1531) --- src/Project/Controllers/ProjectController.cs | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/src/Project/Controllers/ProjectController.cs b/src/Project/Controllers/ProjectController.cs index fb677d3..896d08b 100644 --- a/src/Project/Controllers/ProjectController.cs +++ b/src/Project/Controllers/ProjectController.cs @@ -657,6 +657,20 @@ namespace Coscine.Api.Project.Controllers return BadRequest("This invitee already has a valid invitation to this project."); } + var expiredInvitations = _invitationModel.GetAllWhere( + x => x.Project == sendInvitationObject.Project && + x.InviteeEmail == sendInvitationObject.Email && + x.Expiration <= DateTime.UtcNow + ); + + if (expiredInvitations != null && expiredInvitations.Any()) + { + foreach (var expiredInvitation in expiredInvitations) + { + _invitationModel.Delete(expiredInvitation); + } + } + var token = _invitationModel.CreateInvitation(sendInvitationObject.Project, user.Id, sendInvitationObject.Role, sendInvitationObject.Email); var body = new JObject -- GitLab From d2f1c06e5b3f72e759c5d32f1843925fb7b4a539 Mon Sep 17 00:00:00 2001 From: Heinrichs Date: Wed, 30 Jun 2021 11:26:44 +0200 Subject: [PATCH 3/3] Remove unnecessary checks --- src/Project/Controllers/ProjectController.cs | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/src/Project/Controllers/ProjectController.cs b/src/Project/Controllers/ProjectController.cs index 896d08b..f4c2f28 100644 --- a/src/Project/Controllers/ProjectController.cs +++ b/src/Project/Controllers/ProjectController.cs @@ -652,7 +652,7 @@ namespace Coscine.Api.Project.Controllers x.Expiration > DateTime.UtcNow ); - if (invitations != null && invitations.Any()) + if (invitations.Any()) { return BadRequest("This invitee already has a valid invitation to this project."); } @@ -663,12 +663,9 @@ namespace Coscine.Api.Project.Controllers x.Expiration <= DateTime.UtcNow ); - if (expiredInvitations != null && expiredInvitations.Any()) + foreach (var expiredInvitation in expiredInvitations) { - foreach (var expiredInvitation in expiredInvitations) - { - _invitationModel.Delete(expiredInvitation); - } + _invitationModel.Delete(expiredInvitation); } var token = _invitationModel.CreateInvitation(sendInvitationObject.Project, user.Id, sendInvitationObject.Role, sendInvitationObject.Email); -- GitLab