public void ViewModelToBusinessObject_Empty_Id() { var user = new UserModel(); user.Id = new BoRef(); UserBo userBo = Mapper.Map<UserModel, UserBo>(user); Assert.That(userBo.Id, Is.Not.EqualTo(ObjectId.Empty)); }
public MicropostsForUserModel GetMicropostsForUser(UserModel user) { var micropostsForUser = new MicropostsForUserModel(); micropostsForUser.User = user; var micropostOwners = user.Microposts .Select(m => new MicropostOwnerModel {Owner = user, Micropost = m}) .ToList(); foreach (BoRef userId in user.Following) { var userBo = _repository.FindById<UserBo>(userId); UserModel followingUser = Mapper.Map<UserBo, UserModel>(userBo); if (followingUser != null) { var micropostsFollowOwner = followingUser.Microposts .Where(m => m != null) .Select(m => new MicropostOwnerModel { Owner = followingUser, Micropost = m }) .ToList(); micropostOwners.AddRange(micropostsFollowOwner); } } micropostsForUser.Microposts = micropostOwners.OrderByDescending(mo => mo.Micropost.CreatedAt); return micropostsForUser; }
public void ViewModelToBusinessObject_Email() { var user = new UserModel(); user.Email = "*****@*****.**"; UserBo userBo = Mapper.Map<UserModel, UserBo>(user); Assert.That(userBo.Email, Is.EqualTo(user.Email)); }
public bool Save(UserModel user, string micropostContent) { UserBo userBo = Mapper.Map<UserModel, UserBo>(user); var micropost = new MicropostModel { Content = micropostContent }; MicropostBo micropostBo = Mapper.Map<MicropostModel, MicropostBo>(micropost); userBo.Microposts.Add(micropostBo); return _repository.Save(userBo); }
public MicropostModel SaveNew(UserModel user, string micropostContent) { UserBo userBo = Mapper.Map<UserModel, UserBo>(user); var micropost = new MicropostModel { Content = micropostContent }; MicropostBo micropostBo = Mapper.Map<MicropostModel, MicropostBo>(micropost); userBo.Microposts.Add(micropostBo); bool saved = _repository.Save(userBo); return (saved) ? Mapper.Map<MicropostBo, MicropostModel>(micropostBo) : new MicropostModel(); }
public bool Delete(UserModel user, BoRef micropostId) { var userBo = _repository.FindById<UserBo>(user.Id); var micropostOid = ObjectIdConverter.ConvertBoRefToObjectId(micropostId); MicropostBo micropostBo = userBo.Microposts.FirstOrDefault(m => m.Id == micropostOid); if (micropostBo != null) { userBo.Microposts.Remove(micropostBo); return _repository.Save(userBo); } return false; }
public ActionResult SignIn(UserModel user) { UserModel userLogged = _userBS.Login(user); if (userLogged.Id.IsEmpty()) { ViewBag.FlashMessage = "Invalid email/password combination."; ViewBag.FlashClass = "error"; return View(user); } _userBS.Authenticate(userLogged); if (TempData.ContainsKey(CustomAuthentication.RedirectKey)) { string returnUrl = TempData[CustomAuthentication.RedirectKey].ToString(); TempData.Remove(CustomAuthentication.RedirectKey); return Redirect(returnUrl); } return RedirectToAction("Show", "Users", new { id = userLogged.Id.Value }); }
public bool Follow(BoRef loggedId, UserModel userToFollow) { bool result = false; var loggedUserBo = _repository.FindById<UserBo>(loggedId); var followUserBo = _repository.FindById<UserBo>(userToFollow.Id); if (loggedUserBo != null && followUserBo != null) { //TODO: Transactional? if (!loggedUserBo.Following.Contains(followUserBo.Id)) { loggedUserBo.Following.Add(followUserBo.Id); result = _repository.Save(loggedUserBo); } if (result && !followUserBo.Followers.Contains(loggedUserBo.Id)) { followUserBo.Followers.Add(loggedUserBo.Id); result = _repository.Save(followUserBo); } } return result; }
public static string GetAvatarPath(UserModel user) { return "~/Content/images/avatars/" + GetAvatarName(user); }
private string FormatAvatarName(UserModel user, HttpPostedFileBase file) { return string.Format("avatar_{0}.{1}", user.Id.Value, file.ContentType.Split('/')[1]); }
private static string GetAvatarName(UserModel user) { return (string.IsNullOrEmpty(user.Avatar) || user.Id.IsEmpty()) ? "noavatar.png" : user.Avatar; }
public ActionResult Update(UserModel user, HttpPostedFileBase avatarFile) { UserModel loggedUser = _userBS.GetUser(user.Id); if (loggedUser.Email != user.Email && _userBS.IsEmailUsedBySomeone(user)) { ViewBag.FlashMessage = "Email is already used by someone."; ViewBag.FlashClass = "alert"; return View("Settings", user); } if (TryUpdateModel(loggedUser)) { bool avatarChanged = (avatarFile != null && avatarFile.ContentLength > 0); if (avatarChanged) { loggedUser.Avatar = FormatAvatarName(loggedUser, avatarFile); string path = Server.MapPath(GetAvatarPath(loggedUser)); avatarFile.SaveAs(path); } loggedUser = _userBS.Save(loggedUser, true); } return RedirectToAction("Show", "Users", new { id = loggedUser.Id.Value }); }
public UserModel Save(UserModel user, bool updatePassword) { UserBo userBo = Mapper.Map<UserModel, UserBo>(user); if (updatePassword) { IHashSalt hashSalt = _encryptorBS.CreatePasswordHashSalt(user.Password); userBo.PasswordHash = hashSalt.Hash; userBo.PasswordSalt = hashSalt.Salt; } if (_repository.Save(userBo)) { return Mapper.Map<UserBo, UserModel>(userBo); } return new UserModel(); }
public void ViewModelToBusinessObject_Password() { var user = new UserModel(); user.Password = "******"; UserBo userBo = Mapper.Map<UserModel, UserBo>(user); Assert.That(userBo.PasswordHash, Is.Not.Null); Assert.That(user.Password, Is.Not.EqualTo(userBo.PasswordHash)); }
private UserModel GetUserForTest(string name, string password, string email) { var user = new UserModel(); user.Id = new BoRef(); user.Name = name; user.Password = password; user.Email = email; return user; }
public UserModel Login(UserModel user) { var userBo = _repository.FindByKeyValue<UserBo>("Email", user.Email.ToLower()); if (userBo != null) { string hash2Authenticate = Encryptor.CreateHashedPassword(user.Password, userBo.PasswordSalt); if (hash2Authenticate == userBo.PasswordHash) { return Mapper.Map<UserBo, UserModel>(userBo); } } user.Id = new BoRef(); return user; }
public void ViewModelToBusinessObject_Id() { var user = new UserModel(); user.Id = new BoRef("4f5ea430ee62da0cc0df2483"); UserBo userBo = Mapper.Map<UserModel, UserBo>(user); Assert.That(userBo.Id.ToString(), Is.EqualTo(user.Id.Value)); }
public void Authenticate(UserModel user) { FormsAuthentication.SetAuthCookie(user.Id.Value, false); }
public void ViewModelToBusinessObject_Name() { var user = new UserModel(); user.Name = "abcde"; UserBo userBo = Mapper.Map<UserModel, UserBo>(user); Assert.That(userBo.Name, Is.EqualTo(user.Name)); }
public bool IsEmailUsedBySomeone(UserModel user) { UserBo thisUserBo = Mapper.Map<UserModel, UserBo>(user); var otherUserBo = _repository.FindByKeyValue<UserBo>("Email", thisUserBo.Email.ToLower()); return (otherUserBo != null && thisUserBo.Id != otherUserBo.Id); }
public ActionResult SignUp(UserModel user) { if (_userBS.IsEmailUsedBySomeone(user)) { ViewBag.FlashMessage = "Email is already used by someone."; ViewBag.FlashClass = "alert"; return View(user); } UserModel userSaved = _userBS.Save(user, true); if (userSaved.Id.IsEmpty()) { ViewBag.FlashMessage = "Sign up failure!"; ViewBag.FlashClass = "error"; return View(user); } _userBS.Authenticate(userSaved); return RedirectToAction("Show", "Users", new { id = userSaved.Id.Value, isNewUser = true }); }