public JsonResult AddSubverseToSet(string subverseName, int setId) { // check if set exists var setToModify = _db.Usersets.Find(setId); if (setToModify == null) { Response.StatusCode = (int)HttpStatusCode.BadRequest; return(Json("Set doesn't exist.", JsonRequestBehavior.AllowGet)); } // check if user is set owner if (!Utils.User.IsUserSetOwner(User.Identity.Name, setId)) { Response.StatusCode = (int)HttpStatusCode.BadRequest; return(Json("Unauthorized request.", JsonRequestBehavior.AllowGet)); } // check if subverse exists var subverseToAdd = _db.Subverses.FirstOrDefault(s => s.name.Equals(subverseName, StringComparison.OrdinalIgnoreCase)); if (subverseToAdd == null) { Response.StatusCode = (int)HttpStatusCode.BadRequest; return(Json("The subverse does not exist.", JsonRequestBehavior.AllowGet)); } // check if subverse is already a part of this set if (setToModify.Usersetdefinitions.Any(sd => sd.Subversename.Equals(subverseName, StringComparison.OrdinalIgnoreCase))) { Response.StatusCode = (int)HttpStatusCode.BadRequest; return(Json("The subverse is already a part of this set.", JsonRequestBehavior.AllowGet)); } // add subverse to set Usersetdefinition newUsersetdefinition = new Usersetdefinition { Set_id = setId, Subversename = subverseToAdd.name }; _db.Usersetdefinitions.Add(newUsersetdefinition); _db.SaveChangesAsync(); return(Json("Add subverse to set request sucessful.", JsonRequestBehavior.AllowGet)); }
public JsonResult AddSubverseToSet(string subverseName, int setId) { // check if set exists var setToModify = _db.Usersets.Find(setId); if (setToModify == null) { Response.StatusCode = (int)HttpStatusCode.BadRequest; return Json("Set doesn't exist.", JsonRequestBehavior.AllowGet); } // check if user is set owner if (!UserHelper.IsUserSetOwner(User.Identity.Name, setId)) { Response.StatusCode = (int)HttpStatusCode.BadRequest; return Json("Unauthorized request.", JsonRequestBehavior.AllowGet); } // check if subverse exists var subverseToAdd = _db.Subverses.FirstOrDefault(s => s.name.Equals(subverseName, StringComparison.OrdinalIgnoreCase)); if (subverseToAdd == null) { Response.StatusCode = (int)HttpStatusCode.BadRequest; return Json("The subverse does not exist.", JsonRequestBehavior.AllowGet); } // check if subverse is already a part of this set if (setToModify.Usersetdefinitions.Any(sd => sd.Subversename.Equals(subverseName, StringComparison.OrdinalIgnoreCase))) { Response.StatusCode = (int)HttpStatusCode.BadRequest; return Json("The subverse is already a part of this set.", JsonRequestBehavior.AllowGet); } // add subverse to set Usersetdefinition newUsersetdefinition = new Usersetdefinition { Set_id = setId, Subversename = subverseToAdd.name }; _db.Usersetdefinitions.Add(newUsersetdefinition); _db.SaveChangesAsync(); return Json("Add subverse to set request sucessful.", JsonRequestBehavior.AllowGet); }