// GET: Filters/Edit/5 public ActionResult Edit(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } StaticFilterCreate viewModel = this.getCreateViewModel(); PredefinedStaticFilter filter = db.StaticFilters.Find(id); if (filter == null) { return(HttpNotFound()); } if (filter.OwnerID != User.Identity.GetUserId()) { return(new HttpStatusCodeResult(HttpStatusCode.Forbidden)); } viewModel.ProjectID = filter.ProjectID; viewModel.TaskID = filter.TaskID; viewModel.To = filter.To?.ToUnixTimestamp() ?? 0; viewModel.From = filter.From?.ToUnixTimestamp() ?? 0; viewModel.UserID = filter.UserID; viewModel.FilterID = filter.FilterID; viewModel.Name = filter.Name; return(View("Create", viewModel)); }
private StaticFilterCreate getCreateViewModel() { string userID = User.Identity.GetUserId(); StaticFilterCreate viewModel = new StaticFilterCreate(); // fill list for dropdown with projects var tmp = this.db.GetProjectsForUser(userID).ToList() .Select(p => new KeyValuePair <object, string>(p.ProjectID, p.Name)).ToList(); tmp.Insert(0, new KeyValuePair <object, string>(null, null)); viewModel.SelectableProjects = tmp; // fill list for dropdown with users tmp = this.db.GetRelatedUsers(userID).ToList() .Select(u => new KeyValuePair <object, string>(u.Id, u.Email)).ToList(); tmp.Insert(0, new KeyValuePair <object, string>(null, null)); viewModel.SelectableUsers = tmp; // fill list for dropdown with tasks tmp = this.db.GetAllTasksForUser(userID).ToList() .Select(t => new KeyValuePair <object, string>(t.TaskID, t.Name)).ToList(); tmp.Insert(0, new KeyValuePair <object, string>(null, null)); viewModel.SelectableTasks = tmp; return(viewModel); }