Ejemplo n.º 1
0
        public ActionResult Create(Card card)
        {
            card.bid = TempData["bid"] as string;
            card.lid = TempData["lid"] as string;
            if (ModelState.IsValid)
            {
                card.cardPos = db.Cards.Where<Card>(c => c.bid == card.bid && c.lid == card.lid).Count() + 1;
                card.cdate = DateTime.Now;
                card.archived = false;
                db.Cards.Add(card);
                db.SaveChanges();
                return RedirectToAction("Index");
            }

            ViewBag.bid = card.bid;
            ViewBag.lid = card.lid;
            return View(card);
        }
Ejemplo n.º 2
0
        public ActionResult Move(Card card)
        {
            if (ModelState.IsValid)
            {
                string newLid = card.lid;
                string oldLid = TempData["oldLid"] as string;
                card.lid = oldLid;
                db.Entry(card).State = EntityState.Modified;
                db.Cards.Remove(card);
                db.SaveChanges();

                var cardsOfBoard = db.Cards.Where<Card>(c => c.bid == card.bid);

                var cards = cardsOfBoard.Where<Card>(c => c.lid == oldLid && c.cardPos > card.cardPos);
                foreach (Card c in cards)
                    c.cardPos--;
                db.SaveChanges();

                card.cardPos = cardsOfBoard.Where<Card>(c => c.lid == newLid).Count() + 1;
                card.lid = newLid;
                db.Cards.Add(card);
                db.SaveChanges();

                return RedirectToAction("Index");
            }
            ViewBag.bid = card.bid;
            ViewBag.lid = card.lid;
            return View(card);
        }
Ejemplo n.º 3
0
 public ActionResult Edit(Card card)
 {
     if (ModelState.IsValid)
     {
         int newPos = card.cardPos;
         int oldPos = (int)TempData["oldPos"];
         card.cardPos = oldPos;
         db.Entry(card).State = EntityState.Modified;
         db.Cards.Remove(card);
         db.SaveChanges();
         Card otherCard = db.Cards.First<Card>(c => c.cardPos == newPos);
         string lid = otherCard.lid;
         db.Entry(otherCard).State = EntityState.Modified;
         db.Cards.Remove(otherCard);
         db.SaveChanges();
         card.cardPos = newPos;
         card.lid = TempData["lid"] as string;
         db.Cards.Add(card);
         db.SaveChanges();
         otherCard.cardPos = oldPos;
         otherCard.lid = lid;
         db.Cards.Add(otherCard);
         db.SaveChanges();
         return RedirectToAction("Index");
     }
     ViewBag.bid = card.bid;
     ViewBag.lid = card.lid;
     return View(card);
 }