public ActionResult GetConnections([DataSourceRequest] DataSourceRequest dsRequest, int userId) { var model = db.UserProfiles.Find(userId); var connections = model.Followers.Select(e => ProfileConnectionViewModel.CreateViewModel(e)) .AsQueryable(); var viewModel = connections.ToDataSourceResult(dsRequest); return(Json(viewModel)); }
// TODO: maybe delete or implement public ActionResult CreateConnection([DataSourceRequest] DataSourceRequest dsRequest, ProfileConnectionViewModel eduViewModel, int userId) { if (ModelState.IsValid) { var edu = new Education(); var user = db.UserProfiles.Find(userId); edu.UserId = user.UserId; edu.UserProfile = user; db.Education.Add(edu); db.SaveChanges(); } return(Json(ModelState.ToDataSourceResult())); }
public ActionResult DeleteConnection([DataSourceRequest] DataSourceRequest dsRequest, ProfileConnectionViewModel connViewModel, int userId) { var user = db.UserProfiles.Find(userId); var connModel = user.Followers.SingleOrDefault(conn => conn.UserId == connViewModel.Id); if (connModel != null && ModelState.IsValid) { user.Followers.Remove(connModel); user.Following.Remove(connModel); var request = db.Requests.Single(r => r.FromUserId == userId || r.UserId == userId); db.Requests.Remove(request); db.Entry(user).State = EntityState.Modified; db.SaveChanges(); } return(Json(ModelState.ToDataSourceResult())); }