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"
            }));
        }