From 945520000da0ae4a3fa3b40e9756d67379e25314 Mon Sep 17 00:00:00 2001 From: Roy Ben-Shabat Date: Tue, 19 Feb 2019 18:10:35 +0200 Subject: Machine Studio v4.0.8.0 --- .../Controllers/MachineStudioController.cs | 15 +++++++-------- .../Web/Tango.MachineService/Controllers/PPCController.cs | 4 ++-- 2 files changed, 9 insertions(+), 10 deletions(-) (limited to 'Software/Visual_Studio/Web/Tango.MachineService/Controllers') diff --git a/Software/Visual_Studio/Web/Tango.MachineService/Controllers/MachineStudioController.cs b/Software/Visual_Studio/Web/Tango.MachineService/Controllers/MachineStudioController.cs index 82082ca2f..054c8d781 100644 --- a/Software/Visual_Studio/Web/Tango.MachineService/Controllers/MachineStudioController.cs +++ b/Software/Visual_Studio/Web/Tango.MachineService/Controllers/MachineStudioController.cs @@ -145,15 +145,9 @@ namespace Tango.MachineService.Controllers using (ObservablesContext db = ObservablesContextHelper.CreateContext()) { - //Load relation first... - db.Roles.ToList(); - db.Permissions.ToList(); - db.UsersRoles.ToList(); - db.RolesPermissions.ToList(); - String userID = TokensManager.GetTokenObject(request.AccessToken); - var user = db.Users.SingleOrDefault(x => x.Guid == userID); + var user = new UserBuilder(db).Set(userID).WithRolesAndPermissions().Build(); if (user != null && user.HasPermission(Permissions.PublishMachineStudioVersions)) { @@ -281,7 +275,7 @@ namespace Tango.MachineService.Controllers db.UsersRoles.ToList(); db.RolesPermissions.ToList(); - user = db.Users.SingleOrDefault(x => x.Email.ToLower() == request.Email.ToLower()); + user = new UserBuilder(db).Set(x => x.Email.ToLower() == request.Email.ToLower()).WithRolesAndPermissions().WithDeleted().Build(); IHashGenerator g = new BasicHashGenerator(); @@ -318,6 +312,11 @@ namespace Tango.MachineService.Controllers } else { + if (user.Deleted) + { + throw new AuthenticationException("Your account has been disabled. Please contact your administrator."); + } + user.LastLogin = DateTime.UtcNow; user.Password = g.Encrypt(request.Password); } diff --git a/Software/Visual_Studio/Web/Tango.MachineService/Controllers/PPCController.cs b/Software/Visual_Studio/Web/Tango.MachineService/Controllers/PPCController.cs index 5e41e0d8a..ead64fb38 100644 --- a/Software/Visual_Studio/Web/Tango.MachineService/Controllers/PPCController.cs +++ b/Software/Visual_Studio/Web/Tango.MachineService/Controllers/PPCController.cs @@ -317,7 +317,7 @@ namespace Tango.MachineService.Controllers var user_guid = TokensManager.GetTokenObject(request.AccessToken).UserGuid; - var user = db.Users.SingleOrDefault(x => x.Guid == user_guid); + var user = new UserBuilder(db).Set(user_guid).WithRolesAndPermissions().Build(); if (user != null && user.HasPermission(Permissions.PublishPPCVersions)) { @@ -432,7 +432,7 @@ namespace Tango.MachineService.Controllers BasicHashGenerator hash = new BasicHashGenerator(); String pass = hash.Encrypt(request.Password); - var user = db.Users.SingleOrDefault(x => x.Email.ToLower() == request.Email.ToLower() && x.Password == pass); + var user = new UserBuilder(db).Set(x => x.Email.ToLower() == request.Email.ToLower() && x.Password == pass).Build(); if (user == null) { -- cgit v1.3.1