public ActionResult Create([Bind(Include = "Id,SendingMemberId,ReceivingMemberId,SendingBeerId,ReceiverBeerId,IsApproved,SendingComments,ReceivingComments")] Trade trade) { if (ModelState.IsValid) { db.Trades.Add(trade); db.SaveChanges(); var recievingmember = db.Cellars.Find(trade.ReceivingMemberId).Member; var bodyTemplate = "<p>Hi {0}</p><p>You have a trade offer made to you,please log into your account to see offer.</p>"; var body = string.Format(bodyTemplate, recievingmember.FirstName); MessagSender.SendEmail(recievingmember.Email, "CraftX Pending Trade Offer", body); var tradelisttypeviewmodel = new TradeListTypeViewModel { TradeListType = TradeListType.PendingOffersMade }; return(RedirectToAction("Index", new { model = tradelisttypeviewmodel })); } var userid = User.Identity.GetUserId(); var sendingmember = db.Members.Find(userid); var sendingcellar = sendingmember.Cellars.First(); ViewBag.SendingBeerId = new SelectList(sendingcellar.Beers, "Id", "BeerName"); return(View(trade)); }
// GET: Trades public ActionResult Index(TradeListTypeViewModel model) { IEnumerable <Trade> trades; TradeListType tradelisttype; if (model == null) { tradelisttype = TradeListType.AllOffersRecieved; } else { tradelisttype = model.TradeListType; } var userid = User.Identity.GetUserId(); var member = db.Members.Find(userid); var cellar = member.Cellars.First(); var senttrades = cellar.Trades1; var recievedtrades = cellar.Trades; var alltrades = senttrades.Union(recievedtrades); switch (tradelisttype) { case TradeListType.AcceptedOffers: trades = alltrades.Where(t => t.IsApproved.HasValue && t.IsApproved.Value); break; case TradeListType.AllOffersMade: trades = senttrades; break; case TradeListType.AllOffersRecieved: trades = recievedtrades; break; case TradeListType.DeniedOffers: trades = alltrades.Where(t => t.IsApproved.HasValue && !t.IsApproved.Value); break; case TradeListType.PendingOffersMade: trades = senttrades.Where(t => !t.IsApproved.HasValue); break; case TradeListType.PendingOffersRecieved: trades = recievedtrades.Where(t => !t.IsApproved.HasValue); break; default: trades = null; break; } ViewBag.listtype = new TradeListTypeViewModel { TradeListType = tradelisttype }; return(View(trades.ToList())); }