public ActionResult Edit(int? id) { User user; UserRepository userRep = new UserRepository(); if (!id.HasValue) { user = new User(); } else { user = userRep.GetByID(id.Value); if (user == null) { return RedirectToAction("List"); } } UsersEditVM model = new UsersEditVM(); model.ID = user.ID; model.Username = user.Username; model.FirstName = user.FirstName; model.LastName = user.LastName; model.Email = user.Email; model.Groups = PopulateAssignedGroups(user); return View(model); }
public ActionResult Edit() { UsersEditVM model = new UsersEditVM(); TryUpdateModel(model); UserRepository userRep = new UserRepository(unitOfWork); string selectedGroups = Request.Form["assignedGroups"]; string[] assignedGroups; if (selectedGroups == null) { assignedGroups = new string[0]; } else { assignedGroups = selectedGroups.Split(','); } User user; if (model.ID == 0) { user = new User(); } else { user = userRep.GetByID(model.ID); if (user == null) { return RedirectToAction("List"); } } if (!ModelState.IsValid) { model.Groups = PopulateAssignedGroups(user); return View(model); } user.ID = model.ID; user.Username = model.Username; user.Password = model.Password; user.FirstName = model.FirstName; user.LastName = model.LastName; user.Email = model.Email; UpdateUserGroups(user, assignedGroups); userRep.Save(user); unitOfWork.Commit(); return RedirectToAction("List"); }
public static void SendEmail(User user) { MailMessage message = new MailMessage(); message.Sender = new MailAddress("*****@*****.**"); message.To.Add(user.Email); message.Subject = "Subject"; message.From = new MailAddress("*****@*****.**"); message.Body = "Hello! It's me!"; SmtpClient smtp = new SmtpClient("smtp.gmail.com", 587); smtp.EnableSsl = true; smtp.UseDefaultCredentials = false; #region Private smtp.Credentials = new System.Net.NetworkCredential("*****@*****.**", "SlojnaParola123"); #endregion smtp.Send(message); }
public void UpdateUserGroups(User user, string[] assignedGroups) { if (assignedGroups == null) { return; } if (user.Groups == null) { user.Groups = new List<Group>(); } var assignedGroupsHS = new HashSet<string>(assignedGroups); var userGroups = new HashSet<int>(user.Groups.Select(g => g.ID)); foreach (var group in new GroupRepository(unitOfWork).GetAll()) { if (assignedGroupsHS.Contains(group.ID.ToString())) { if (!userGroups.Contains(group.ID)) { user.Groups.Add(group); } } else { if (userGroups.Contains(group.ID)) { user.Groups.Remove(group); } } } }
public List<AssignedGroupsVM> PopulateAssignedGroups(User user) { List<AssignedGroupsVM> assignedGroups = new List<AssignedGroupsVM>(); List<Group> groups = new GroupRepository().GetAll(); if (user.Groups == null) { user.Groups = new List<Group>(); } foreach (var g in groups) { assignedGroups.Add(new AssignedGroupsVM { ID = g.ID, Name = g.Name, IsAssigned = user.Groups.Select(gr => gr.ID).Contains(g.ID) }); } return assignedGroups; }
public static void AuthenticateUser(string username, string password) { LoggedUser = new UserRepository().First(u => u.Username == username && u.Password == password); }