public ActionResult DeleteSub(string id, string env, string sub, SubstitutionParameter model) { var subParam = reader.GetSubstitutionParameter(Server.UrlDecode(sub)); if (subParam.Id != sub) { throw new InvalidDataException("Substitution parameters don't match"); } reader.DeleteSubstitutionParameter(env, Server.UrlDecode(sub)); return(RedirectToAction("Details", "Environment", new { id = "edit", item = env })); }
public ActionResult EditSub(string id, string item, SubstitutionParameter model) { var subPar = reader.GetSubstitutionParameter(Server.UrlDecode(item)); subPar.IsSecure = model.IsSecure; subPar.ItemValue = model.ItemValue.IsInstance() ? model.ItemValue.TrimEnd() : null; subPar.Description = model.Description; if (subPar.IsSecure && subPar.ItemValue.ContainsCharacters()) { subPar.ItemValue = subPar.ItemValue.Encrypt(KeyHelper.SharedSecret); } if (!subPar.UserHasAccessTo()) { throw new UnauthorizedAccessException("Access denied to configset"); } reader.UpdateSubstitutionParameter(subPar); return(RedirectToAction("Details", "Environment", new { id = "edit", item = subPar.Environment.Id })); }