public ActionResult AddTag(Guid id, string name, string value) { var versions = new Versions(); var version = versions.GetVersion(id); if (version.Tags.ContainsKey(name)) throw new HttpException(406, "Tag name already exists"); version.Tags.Add(name, value); versions.UpdateVersion(version); if (Request.IsAjaxRequest()) return Json(null); else return RedirectToAction("EditTags", new { id = id }); }
public JsonResult UpdateTag(Guid id, string oldName, string name, string value) { var versions = new Versions(); var version = versions.GetVersion(id); if (!version.Tags.ContainsKey(oldName)) throw new HttpException(404, "Tag not found"); if (oldName == name) { version.Tags[name] = value; } else if (version.Tags.ContainsKey(name)) { throw new HttpException(406, "Tag name already exists"); } else { version.Tags.Remove(oldName); version.Tags.Add(name, value); } versions.UpdateVersion(version); return Json(null); }
public JsonResult RemoveTag(Guid id, string name) { var versions = new Versions(); var version = versions.GetVersion(id); if (!version.Tags.ContainsKey(name)) throw new HttpException(404, "Tag not found"); version.Tags.Remove(name); versions.UpdateVersion(version); return Json(null); }
public ActionResult Edit(Guid id, string comment) { Version version = null; try { var versions = new Versions(); version = versions.GetVersion(id); version.Comment = comment; versions.UpdateVersion(version); return RedirectToAction("Details", new { id = version.Key }); } catch (Exception ex) { ModelState.AddModelError("Error", ex); } var groups = new Groups(); var apps = new Apps(); Group group = null; App app = null; if (version != null) { group = groups.GetGroup(version.GroupKey); app = apps.GetApp(version.AppKey); } var model = new VersionDetails() { Version = version, App = app, Group = group, }; return View(model); }