From f4da5783b128b3da55eae406b054ae0f6e4d1b55 Mon Sep 17 00:00:00 2001 From: Roy Ben Shabat Date: Mon, 11 May 2020 08:24:34 +0300 Subject: Forgot Password ! Reset Password ! --- .../Controllers/FSEAccountController.cs | 67 ++++++++++++++++++++++ 1 file changed, 67 insertions(+) create mode 100644 Software/Visual_Studio/Web/Tango.MachineService/Controllers/FSEAccountController.cs (limited to 'Software/Visual_Studio/Web/Tango.MachineService/Controllers/FSEAccountController.cs') diff --git a/Software/Visual_Studio/Web/Tango.MachineService/Controllers/FSEAccountController.cs b/Software/Visual_Studio/Web/Tango.MachineService/Controllers/FSEAccountController.cs new file mode 100644 index 000000000..b7728af6a --- /dev/null +++ b/Software/Visual_Studio/Web/Tango.MachineService/Controllers/FSEAccountController.cs @@ -0,0 +1,67 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Web; +using System.Web.Mvc; +using Tango.BL; +using Tango.MachineService.Filters; +using Tango.MachineService.Models; +using Tango.Web.Helpers; +using System.Data.Entity; +using Tango.Web.Storage; +using System.IO; +using Microsoft.WindowsAzure.Storage.Blob; +using System.Net.Http; +using System.Net; +using System.Net.Http.Headers; +using System.Net.Mime; +using Tango.MachineService.Views.FSEAccount; + +namespace Tango.MachineService.Controllers +{ + public class FSEAccountController : Controller + { + private static Random rnd = new Random(); + + public ActionResult ResetPassword(String id) + { + ResetPasswordVM vm = new ResetPasswordVM(); + vm.FullName = "Full Name"; + vm.Password = "Password"; + + var reset = FSEController.PendingPasswordResets.SingleOrDefault(x => x.ID == id); + + if (reset != null) + { + using (ObservablesContext db = ObservablesContextHelper.CreateContext()) + { + var user = db.Users.SingleOrDefault(x => x.Guid == reset.UserGuid); + + if (user != null) + { + String newPass = GenerateRandomPassword(); + user.Password = Tango.BL.Entities.User.GetPasswordHash(newPass); + user.PasswordChangeRequired = true; + vm.Password = newPass; + vm.FullName = reset.FullName; + db.SaveChanges(); + } + } + } + + return View(vm); + } + + private String GenerateRandomPassword() + { + String pass = String.Empty; + + for (int i = 0; i < 4; i++) + { + pass += rnd.Next(0, 9).ToString(); + } + + return pass; + } + } +} \ No newline at end of file -- cgit v1.3.1