public JsonResult <Response> AddProblem(int listId, int probId) { ProblemList pl = db.ProblemLists.First(p => p.Id == listId); if (pl == null) { return(Json(new Response { Status = HttpStatusCode.BadRequest, Message = "Invalid list ID" })); } if (pl.ProblemListEntries.Where(p => p.ProblemId == probId).Count() > 0) { return(Json(new Response { Status = HttpStatusCode.OK, Message = "Problem already on list" })); } ProblemListEntry ple = db.ProblemListEntries.Create(); ple.ProblemListId = listId; ple.ProblemId = probId; pl.ProblemListEntries.Add(ple); db.SaveChanges(); return(Json(new Response { Status = HttpStatusCode.OK, Message = "Added" })); }
public JsonResult <Response> RemoveProblem(int listId, int probId) { ProblemListEntry ple = db.ProblemListEntries.First(p => p.ProblemId == probId && p.ProblemListId == listId); if (ple == null) { return(Json(new Response { Status = HttpStatusCode.OK, Message = "Problem not on list" })); } db.ProblemListEntries.Remove(ple); db.SaveChanges(); return(Json(new Response { Status = HttpStatusCode.OK, Message = "Removed" })); }