private bool RegisterUser(User user) { using (var model = new BXC_MasterControlEntities(new Uri("http://odata.bxc.mepcontent.com/userservice.svc"))) { var alreadyused = (from u in model.Users where u.UserName == user.Email select u).FirstOrDefault(); if (alreadyused == null) { var newUser = new UserService.User {UserName = user.Email, Password = user.Password}; model.AddObject("Users", newUser); model.SaveChanges(); //TODO: encrypt password model.AddObject("ExtendedProperties", CreateProperty("FirstName", user.FirstName, model, newUser.Id)); model.AddObject("ExtendedProperties", CreateProperty("LastName", user.LastName, model, newUser.Id)); model.AddObject("ExtendedProperties", CreateProperty("PhoneNumber", user.PhoneNumber, model, newUser.Id)); model.AddObject("ExtendedProperties", CreateProperty("Company", user.Company, model, newUser.Id)); if(!String.IsNullOrWhiteSpace(Alias)) { model.AddObject("ExtendedProperties", CreateProperty("Alias", Alias, model, newUser.Id)); } model.SaveChanges(); } else { return false; } return true; } }
public ActionResult Index(IndexViewModel model) { if (!model.Register && CheckLogin(model.Email, model.Password)) { LoggedIn = true; return RedirectToAction("Index"); } if(model.Register) { var user = new User { Email = model.Email, FirstName = model.FirstName, LastName = model.LastName, Company = model.Company, PhoneNumber = model.PhoneNumber, Password = model.Password }; if(RegisterUser(user)) { LoggedIn = true; model.IsLoggedIn = true; model.Register = false; } else { model.Register = true; model.Message = "Email already registered. Please Try Again."; model.IsLoggedIn = false; } return View("Index", model); } model.Message = "Email/Password not found!"; model.LoginFail = true; return View("Index", model); }