// POST: Sequences/Append/5?Activity=7 // [HttpPost] // [ValidateAntiForgeryToken] public ActionResult Append(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } int?h = Convert.ToInt32(HttpContext.Request.QueryString["Activity"]); if (h == null) { return(HttpNotFound()); } int seqnr = (from sa in db.SequencesToActivities where sa.SequenceID == id select sa.Seqnr).Count(); bool reverse = false; if (seqnr > 0) { SequenceToActivity previous = (from sa in db.SequencesToActivities.Include(a => a.Activity) where sa.SequenceID == id & sa.Seqnr == seqnr select sa).First(); Activity next = db.Activities.Find(h); int dID = previous.Reverted ? previous.Activity.Dest1ID : previous.Activity.Dest2ID; reverse = (dID != next.Dest1ID); } db.SequencesToActivities.Add(new SequenceToActivity((int)id, (int)h, seqnr + 1, reverse)); db.SaveChanges(); return(RedirectToAction("Edit", new { Id = id })); }
// POST: Sequences/Append/5?Activity=7 // [HttpPost] // [ValidateAntiForgeryToken] public ActionResult Revert(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } int?h = Convert.ToInt32(HttpContext.Request.QueryString["Seqnr"]); if (h == null) { return(HttpNotFound()); } SequenceToActivity s2a = (from sa in db.SequencesToActivities where sa.SequenceID == id & sa.Seqnr == h select sa).First(); s2a.Reverted = !s2a.Reverted; db.SaveChanges(); return(RedirectToAction("Edit", new { Id = id })); }