Example #1
0
        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 }));
        }
Example #2
0
        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 }));
        }