public UserModel GetUser(LoginModel model) { User user = null; if (model.provider == Provider.Twitter) { user = repository.AsQueryable<User>().FirstOrDefault(x => x.TwitterSecret == model.Secret && x.TwitterToken == model.Token) ?? new User(); user.TwitterToken = model.Token; user.TwitterSecret = model.Secret; user.TwitterEnabled = true; repository.Save(user); } else if (model.provider == Provider.Facebook) { user = repository.AsQueryable<User>().FirstOrDefault(x => x.FacebookId == model.ExternalId) ?? new User(); user.FacebookId = model.ExternalId; user.FacebookToken = model.Token; user.FacebookEnabled = true; repository.Save(user); } repository.Commit(); var response = new UserModel() { UserId = user.Id, IsFacebookEnabled = user.FacebookEnabled, IsTwitterEnabled = user.TwitterEnabled }; return response; }
public HttpResponseMessage Put(UserModel request) { var user = userService.UpdateUser(request); HttpResponseMessage response; if (user == null) { response = Request.CreateResponse(HttpStatusCode.NotFound, "User not found"); } else { response = Request.CreateResponse(HttpStatusCode.OK, request); } return response; }
public UserModel UpdateUser(UserModel model) { var user = repository.AsQueryable<User>().FirstOrDefault(x => x.Id == model.UserId); if (user != null) { user.TwitterEnabled = model.IsTwitterEnabled; user.FacebookEnabled = model.IsFacebookEnabled; repository.Save(user); repository.Commit(); model.IsTwitterEnabled = user.TwitterEnabled; model.IsFacebookEnabled = user.FacebookEnabled; model.UserId = user.Id; return model; } return null; }