public async Task <IHttpActionResult> Put([FromODataUri] int key, Ecard update) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } if (key != update.EcardID) { return(BadRequest()); } db.Entry(update).State = EntityState.Modified; try { await db.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!EcardExists(key)) { return(NotFound()); } else { throw; } } return(Updated(update)); }
public IHttpActionResult PutEcard(int id, Ecard ecard) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } if (id != ecard.EcardID) { return(BadRequest()); } db.Entry(ecard).State = EntityState.Modified; try { db.SaveChanges(); } catch (DbUpdateConcurrencyException) { if (!EcardExists(id)) { return(NotFound()); } else { throw; } } return(StatusCode(HttpStatusCode.NoContent)); }
public ActionResult Delete(int ItemID) { Ecard ecard = EcardBusiness.Find(ItemID); ecard.Draft = true; EcardBusiness.Update(ecard); EcardBusiness.Save(); return(RedirectToAction("Index")); }
public async Task <IHttpActionResult> Post(Ecard ecard) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } db.Ecards.Add(ecard); await db.SaveChangesAsync(); return(Created(ecard)); }
public IHttpActionResult GetEcard(int id) { Ecard ecard = db.Ecards.Find(id); if (ecard == null) { return(NotFound()); } return(Ok(ecard)); }
public IHttpActionResult PostEcard(Ecard ecard) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } db.Ecards.Add(ecard); db.SaveChanges(); return(CreatedAtRoute("DefaultApi", new { id = ecard.EcardID }, ecard)); }
public IHttpActionResult DeleteEcard(int id) { Ecard ecard = db.Ecards.Find(id); if (ecard == null) { return(NotFound()); } db.Ecards.Remove(ecard); db.SaveChanges(); return(Ok(ecard)); }
public ActionResult Details(int?id) { if (id == null) { return(View(ViewNamesConstant.FrontendHomeError)); } Ecard ecard = EcardBusiness.Find(id); if (ecard == null) { return(View(ViewNamesConstant.FrontendHomeError)); } return(View(ViewNamesConstant.AdminEcardsDetails, ecard)); }
// GET: Ecards/Details/5 public ActionResult Details(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } Ecard ecard = EcardBusiness.Find(id); if (ecard == null) { return(HttpNotFound()); } return(View(ViewNamesConstant.AdminEcardsDetails, ecard)); }
public ActionResult Edit(int?id) { if (id == null) { return(View(ViewNamesConstant.FrontendHomeError)); } Ecard ecard = EcardBusiness.Find(id); if (ecard == null) { return(View(ViewNamesConstant.FrontendHomeError)); } ViewBag.Categories = CategoryBusiness.All.ToList(); return(View(ViewNamesConstant.AdminEcardsEdit, ecard)); }
// GET: Ecards/Details/5 public ActionResult Details(string slug) { if (string.IsNullOrEmpty(slug)) { return(View(ViewNamesConstant.FrontendHomeError)); } Ecard ecard = EcardBusiness.All.Where(x => x.EcardSlug.Equals(slug)).FirstOrDefault(); if (ecard == null) { return(View(ViewNamesConstant.FrontendHomeError)); } ViewBag.topEcards = EcardBusiness.All.Where(x => x.Draft != true).OrderBy(x => x.Price).Take(12).ToList(); return(View(ViewNamesConstant.FrontendEcardsDetails, ecard)); }
// GET: Ecards/Edit/5 public ActionResult Edit(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } Ecard ecard = EcardBusiness.Find(id); if (ecard == null) { return(HttpNotFound()); } ViewBag.Categories = CategoryBusiness.All.ToList(); return(View(ViewNamesConstant.AdminEcardsEdit, ecard)); }
// GET: DummyData public ActionResult Index() { var faker = new Faker("en"); using (var context = new EgreetingContext()) { //20 category; var categories = new List <Category>(); categories.Add(new Category { CategoryID = 1, CategoryName = "Birthday", CategorySlug = "birthday" }); categories.Add(new Category { CategoryID = 2, CategoryName = "Wedding", CategorySlug = "wedding" }); categories.Add(new Category { CategoryID = 3, CategoryName = "New year", CategorySlug = "new-year" }); categories.Add(new Category { CategoryID = 4, CategoryName = "Festivals", CategorySlug = "festivals" }); for (int i = 5; i < 20; i++) { categories.Add(new Category { CategoryID = i, CategoryName = "Category " + i, CategorySlug = "Category-" + i, CreatedDate = faker.Date.Past(), }); } context.Set <Category>().AddRange(categories); context.SaveChanges(); } //3 role using (var context = new EgreetingContext()) { var store = new RoleStore <ApplicationRole>(context); var manager = new RoleManager <ApplicationRole>(store); var role = new ApplicationRole { Name = "Admin", EgreetingRole = new EgreetingRole { EgreetingRoleID = 1, EgreetingRoleName = "Admin", CreatedDate = faker.Date.Past(), } }; manager.Create(role); role = new ApplicationRole { Name = "User", EgreetingRole = new EgreetingRole { EgreetingRoleID = 2, EgreetingRoleName = "User", CreatedDate = faker.Date.Past(), } }; manager.Create(role); role = new ApplicationRole { Name = "Subcriber", EgreetingRole = new EgreetingRole { EgreetingRoleID = 3, EgreetingRoleName = "Subcriber", CreatedDate = faker.Date.Past(), } }; manager.Create(role); } //20 user using (var context = new EgreetingContext()) { var image = System.IO.File.ReadAllBytes(Server.MapPath("~/Content/Admin/dist/img/avatar.png")); var store = new UserStore <ApplicationUser>(context); var manager = new UserManager <ApplicationUser>(store); var user = new ApplicationUser { UserName = "******", Email = "*****@*****.**", EgreetingUser = new EgreetingUser { EgreetingUserID = 1, Email = "*****@*****.**", FirstName = "Tien Thinh", LastName = "Nguyen", Avatar = image, EgreetingUserSlug = generateSlug(), BirthDay = DateTime.Now, PaymentDueDate = DateTime.Now, CreditCardNumber = "123456789012", CreditCardCVG = "123", CreatedDate = faker.Date.Past(), } }; manager.Create(user, "123456aA@"); manager.AddToRole(user.Id, "Admin"); user = new ApplicationUser { UserName = "******", Email = "*****@*****.**", EgreetingUser = new EgreetingUser { EgreetingUserID = 2, Email = "*****@*****.**", FirstName = "Tien Thinh", LastName = "Nguyen", Avatar = image, EgreetingUserSlug = generateSlug(), BirthDay = DateTime.Now, PaymentDueDate = DateTime.Now, CreditCardNumber = "123456789012", CreditCardCVG = "123", CreatedDate = faker.Date.Past(), } }; manager.Create(user, "123456aA@"); manager.AddToRole(user.Id, "Admin"); user = new ApplicationUser { UserName = "******", Email = "*****@*****.**", EgreetingUser = new EgreetingUser { EgreetingUserID = 3, Email = "*****@*****.**", FirstName = "Tien Thinh", LastName = "Nguyen", Avatar = image, EgreetingUserSlug = generateSlug(), BirthDay = DateTime.Now, PaymentDueDate = DateTime.Now, CreditCardNumber = "123456789012", CreditCardCVG = "123", CreatedDate = faker.Date.Past(), } }; manager.Create(user, "123456aA@"); manager.AddToRole(user.Id, "User"); user = new ApplicationUser { UserName = "******", Email = "*****@*****.**", EgreetingUser = new EgreetingUser { EgreetingUserID = 4, Email = "*****@*****.**", FirstName = "Tien Thinh", LastName = "Nguyen", Avatar = image, EgreetingUserSlug = generateSlug(), BirthDay = DateTime.Now, PaymentDueDate = DateTime.Now, CreditCardNumber = "123456789012", CreditCardCVG = "123", CreatedDate = faker.Date.Past(), } }; manager.Create(user, "123456aA@"); manager.AddToRole(user.Id, "Subcriber"); for (int i = 5; i <= 20; i++) { user = new ApplicationUser { UserName = "******" + i + "@gmail.com", Email = "subcriber" + i + "@gmail.com", EgreetingUser = new EgreetingUser { EgreetingUserID = 4, Email = "subcriber" + i + "@gmail.com", FirstName = "Tien Thinh " + i, LastName = "Nguyen", Avatar = image, EgreetingUserSlug = generateSlug(), BirthDay = DateTime.Now, PaymentDueDate = DateTime.Now, CreditCardNumber = "123456789012", CreditCardCVG = "123", CreatedDate = faker.Date.Past(), } }; manager.Create(user, "123456aA@"); manager.AddToRole(user.Id, "Subcriber"); } } // 100 Ecard using (var context = new EgreetingContext()) { var ecards = new List <Ecard>(); for (int i = 1; i <= 10; i++) { var categoriesID = new List <int> { faker.Random.Number(1, 20), faker.Random.Number(1, 20) }; var ecard = new Ecard { EcardID = i, EcardName = faker.Commerce.ProductName(), EcardSlug = faker.Lorem.Slug() + i, EcardType = 4, EcardUrl = "Ecard_" + faker.Random.Number(1, 10) + ".mp4", ThumbnailUrl = "Thumbnail_" + faker.Random.Number(24, 39) + ".png", Price = faker.Random.Double() * 100, Categories = context.Set <Category>().Where(x => categoriesID.Contains(x.CategoryID)).ToList(), EgreetingUser = context.Set <EgreetingUser>().Where(x => x.EgreetingUserID == 1).FirstOrDefault(), CreatedDate = faker.Date.Past(), }; ecards.Add(ecard); } for (int i = 11; i <= 30; i++) { var categoriesID = new List <int> { faker.Random.Number(1, 20), faker.Random.Number(1, 20) }; var ecard = new Ecard { EcardID = i, EcardName = faker.Commerce.ProductName(), EcardSlug = faker.Lorem.Slug() + i, EcardType = 2, EcardUrl = "Ecard_" + faker.Random.Number(11, 23) + ".gif", ThumbnailUrl = "Thumbnail_" + faker.Random.Number(24, 39) + ".png", Price = faker.Random.Double() * 100, Categories = context.Set <Category>().Where(x => categoriesID.Contains(x.CategoryID)).ToList(), EgreetingUser = context.Set <EgreetingUser>().Where(x => x.EgreetingUserID == 1).FirstOrDefault(), CreatedDate = faker.Date.Past(), }; ecards.Add(ecard); } for (int i = 31; i <= 100; i++) { var categoriesID = new List <int> { faker.Random.Number(1, 20), faker.Random.Number(1, 20) }; var ecard = new Ecard { EcardID = i, EcardName = faker.Commerce.ProductName(), EcardSlug = faker.Lorem.Slug() + i, EcardType = 1, EcardUrl = "Ecard_" + faker.Random.Number(24, 39) + ".png", ThumbnailUrl = "Thumbnail_" + faker.Random.Number(24, 39) + ".png", Price = faker.Random.Double() * 100, Categories = context.Set <Category>().Where(x => categoriesID.Contains(x.CategoryID)).ToList(), EgreetingUser = context.Set <EgreetingUser>().Where(x => x.EgreetingUserID == 1).FirstOrDefault(), CreatedDate = faker.Date.Past(), }; ecards.Add(ecard); } context.Set <Ecard>().AddRange(ecards); context.SaveChanges(); } // 500 Feedback using (var context = new EgreetingContext()) { var feedbacks = new List <Feedback>(); for (int i = 1; i <= 500; i++) { var ecardID = faker.Random.Number(1, 100); var userID = faker.Random.Number(1, 4); var feedback = new Feedback { FeedbackID = i, Subject = faker.Lorem.Sentence(10), Message = faker.Lorem.Sentences(4), Ecard = context.Set <Ecard>().Where(x => x.EcardID == ecardID).FirstOrDefault(), EgreetingUser = context.Set <EgreetingUser>().Where(x => x.EgreetingUserID == userID).FirstOrDefault(), CreatedDate = faker.Date.Past(), }; feedbacks.Add(feedback); } context.Set <Feedback>().AddRange(feedbacks); context.SaveChanges(); } // 16 subcrieber using (var context = new EgreetingContext()) { var subcribers = new List <Subcriber>(); for (int i = 5; i <= 20; i++) { var subcriber = new Subcriber { SubcriberID = i, Email = "subcriber" + i + "@gmail.com", EgreetingUser = context.Set <EgreetingUser>().Find(i), CreatedDate = faker.Date.Past(), }; subcribers.Add(subcriber); } context.Set <Subcriber>().AddRange(subcribers); context.SaveChanges(); } // 100 Payment using (var context = new EgreetingContext()) { var payments = new List <Payment>(); for (int i = 1; i <= 100; i++) { var userID = faker.Random.Number(5, 20); var payment = new Payment { PaymentID = i, Month = i % 12 == 0 ? 1 : i % 12, Year = faker.Random.Number(2000, 2019), PaymentStatus = faker.Random.Bool(), EgreetingUser = context.Set <EgreetingUser>().Find(userID), CreatedDate = faker.Date.Past(), }; payments.Add(payment); } context.Set <Payment>().AddRange(payments); context.SaveChanges(); } //200 Order using (var context = new EgreetingContext()) { var orders = new List <Order>(); for (int i = 1; i <= 200; i++) { var ecardIDs = new List <int>() { faker.Random.Number(1, 100), faker.Random.Number(1, 100), faker.Random.Number(1, 100) }; var orderDetails = new List <OrderDetail>(); var sendStatusOder = true; foreach (var item in ecardIDs) { bool sendStatus = faker.Random.Bool(); var orderDetail = new OrderDetail { SendStatus = sendStatus, Ecard = context.Set <Ecard>().Find(item), CreatedDate = faker.Date.Past(), }; if (sendStatus) { orderDetail.SendTime = faker.Date.Soon(); } orderDetails.Add(orderDetail); sendStatusOder = sendStatusOder && sendStatus; } var userID = faker.Random.Number(5, 20); var order = new Order { OrderID = i, SenderName = faker.Lorem.Sentence(3), RecipientEmail = "*****@*****.**", SendSubject = faker.Lorem.Sentence(4), SendMessage = faker.Lorem.Sentences(4), ScheduleTime = faker.Date.Past(), SendStatus = sendStatusOder, TotalPrice = faker.Random.Double(), User = context.Set <EgreetingUser>().Find(userID), OrderDetails = orderDetails, CreatedDate = faker.Date.Past(), }; orders.Add(order); } context.Set <Order>().AddRange(orders); context.SaveChanges(); } return(View()); }
public ActionResult Edit([Bind(Include = "EcardID,EcardName,EcardSlug,EcardType,Price")] Ecard ecard) { if (ModelState.IsValid) { using (var context = new EgreetingContext()) { var ecardUpdate = context.Set <Ecard>().Find(ecard.EcardID); var thumbnailFile = Request.Files["Thumbnail"]; var ecardFile = Request.Files["EcardFile"]; string pathThumbnail = Server.MapPath("~/Uploads/Thumbnails/"); string pathEcardFiles = Server.MapPath("~/Uploads/EcardFiles/"); if (!Directory.Exists(pathEcardFiles)) { Directory.CreateDirectory(pathEcardFiles); if (!Directory.Exists(pathThumbnail)) { Directory.CreateDirectory(pathThumbnail); } } if (ecardFile != null) { if (!Path.GetExtension(ecardFile.FileName).CheckExtentionFile(ecard.EcardType)) { ModelState.AddModelError(string.Empty, "File upload not support!"); ViewBag.Categories = CategoryBusiness.All.ToList(); return(View(ViewNamesConstant.AdminEcardsCreate, ecard)); } ecard.EcardUrl = "EcardUrl_" + DateTime.Now.ToFileTime() + Path.GetExtension(ecardFile.FileName); ecardFile.SaveAs(pathEcardFiles + ecard.EcardUrl); if (thumbnailFile != null && Path.GetExtension(thumbnailFile.FileName).CheckExtentionFile()) { ecard.ThumbnailUrl = "Thumbnail_" + DateTime.Now.ToFileTime() + Path.GetExtension(thumbnailFile.FileName); thumbnailFile.SaveAs(pathThumbnail + ecard.ThumbnailUrl); } else { ecard.ThumbnailUrl = "thumbnail.png"; } } ecardUpdate.EcardName = ecard.EcardName; if (!string.IsNullOrEmpty(ecard.EcardSlug)) { if (!context.Set <Ecard>().Any(x => ecard.EcardSlug.Equals(x.EcardSlug))) { ecardUpdate.EcardSlug = ecard.EcardSlug; } else { ecardUpdate.EcardSlug = ecard.EcardSlug + DateTime.Now.ToFileTime(); } } ecardUpdate.EcardType = ecard.EcardType; ecardUpdate.Price = ecard.Price; ecardUpdate.ModifiedDate = DateTime.Now; context.Set <Ecard>().Attach(ecardUpdate); context.Entry(ecardUpdate).State = EntityState.Modified; context.SaveChanges(); } return(RedirectToAction("Index")); } ViewBag.Categories = CategoryBusiness.All.ToList(); return(View(ViewNamesConstant.AdminEcardsEdit, ecard)); }
public ActionResult Edit(Ecard ecard) { if (ModelState.IsValid) { using (var context = new DesignTimeDbContextFactory().CreateDbContext(null)) { var ecardUpdate = context.Set <Ecard>().Find(ecard.EcardID); var thumbnailFile = Request.Form.Files["Thumbnail"]; var ecardFile = Request.Form.Files["EcardFile"]; string pathThumbnail = $"{_webHostEnvironment.WebRootPath}Uploads/Thumbnails/"; string pathEcardFiles = $"{_webHostEnvironment.WebRootPath}Uploads/EcardFiles/"; if (!Directory.Exists(pathEcardFiles)) { Directory.CreateDirectory(pathEcardFiles); if (!Directory.Exists(pathThumbnail)) { Directory.CreateDirectory(pathThumbnail); } } if (ecardFile != null) { if (!Path.GetExtension(ecardFile.FileName).CheckExtentionFile(ecard.EcardType)) { ModelState.AddModelError(string.Empty, "File upload not support!"); ViewBag.Categories = CategoryBusiness.All.ToList(); return(View(ViewNamesConstant.AdminEcardsCreate, ecard)); } ecard.EcardUrl = "EcardUrl_" + DateTime.Now.ToFileTime() + Path.GetExtension(ecardFile.FileName); using (var fileStream = new FileStream(pathEcardFiles + ecard.EcardUrl, FileMode.Create)) { ecardFile.CopyTo(fileStream); } if (thumbnailFile != null && Path.GetExtension(thumbnailFile.FileName).CheckExtentionFile()) { ecard.ThumbnailUrl = "Thumbnail_" + DateTime.Now.ToFileTime() + Path.GetExtension(thumbnailFile.FileName); using (var fileStream = new FileStream(pathThumbnail + ecard.ThumbnailUrl, FileMode.Create)) { thumbnailFile.CopyTo(fileStream); } } else { ecard.ThumbnailUrl = "thumbnail.png"; } } ecardUpdate.EcardName = ecard.EcardName; if (!string.IsNullOrEmpty(ecard.EcardSlug)) { if (!context.Set <Ecard>().Any(x => ecard.EcardSlug.Equals(x.EcardSlug))) { ecardUpdate.EcardSlug = ecard.EcardSlug; } else { ecardUpdate.EcardSlug = ecard.EcardSlug + DateTime.Now.ToFileTime(); } } ecardUpdate.EcardType = ecard.EcardType; ecardUpdate.Price = ecard.Price; ecardUpdate.ModifiedDate = DateTime.Now; context.Set <Ecard>().Attach(ecardUpdate); context.Entry(ecardUpdate).State = EntityState.Modified; context.SaveChanges(); } return(RedirectToAction("Index")); } ViewBag.Categories = CategoryBusiness.All.ToList(); return(View(ViewNamesConstant.AdminEcardsEdit, ecard)); }
public ActionResult Create([Bind(Include = "EcardName,EcardSlug,EcardType,Price")] Ecard ecard, string ListCategoryString) { if (ModelState.IsValid) { var thumbnailFile = Request.Files["Thumbnail"]; var ecardFile = Request.Files["EcardFile"]; string pathThumbnail = Server.MapPath("~/Uploads/Thumbnails/"); string pathEcardFiles = Server.MapPath("~/Uploads/EcardFiles/"); if (!Directory.Exists(pathEcardFiles)) { Directory.CreateDirectory(pathEcardFiles); if (!Directory.Exists(pathThumbnail)) { Directory.CreateDirectory(pathThumbnail); } } if (ecardFile != null) { if (!Path.GetExtension(ecardFile.FileName).CheckExtentionFile(ecard.EcardType)) { ModelState.AddModelError(string.Empty, "File upload not support!"); ViewBag.Categories = CategoryBusiness.All.ToList(); return(View(ViewNamesConstant.AdminEcardsCreate, ecard)); } ecard.EcardUrl = "EcardUrl_" + DateTime.Now.ToFileTime() + Path.GetExtension(ecardFile.FileName); ecardFile.SaveAs(pathEcardFiles + ecard.EcardUrl); if (thumbnailFile != null && Path.GetExtension(thumbnailFile.FileName).CheckExtentionFile()) { ecard.ThumbnailUrl = "Thumbnail_" + DateTime.Now.ToFileTime() + Path.GetExtension(thumbnailFile.FileName); thumbnailFile.SaveAs(pathThumbnail + ecard.ThumbnailUrl); } else { ecard.ThumbnailUrl = "thumbnail.png"; } } else { ModelState.AddModelError(string.Empty, "There is no is ecard file found!"); ViewBag.Categories = CategoryBusiness.All.ToList(); return(View(ViewNamesConstant.AdminEcardsCreate, ecard)); } using (var context = new EgreetingContext()) { var lstCategoryID = ListCategoryString.Split('-').Where(x => x.Length > 0).Select(x => Convert.ToInt32(x)).ToList(); var lstCategory = context.Set <Category>().Where(x => lstCategoryID.Contains(x.CategoryID)).ToList(); ecard.Categories = lstCategory; if (context.Set <Ecard>().Any(x => ecard.EcardSlug.Equals(x.EcardSlug))) { ecard.EcardSlug = ecard.EcardSlug + DateTime.Now.ToFileTime(); } var currentContext = System.Web.HttpContext.Current; if (currentContext.User != null && Request.IsAuthenticated) { string email = ""; email = User.Identity.Name; var user = context.Set <EgreetingUser>().Where(x => x.Email.Equals(email)).FirstOrDefault(); ecard.EgreetingUser = user; } ecard.CreatedDate = DateTime.Now; context.Set <Ecard>().Add(ecard); context.SaveChanges(); } return(RedirectToAction("Index")); } ViewBag.Categories = CategoryBusiness.All.ToList(); return(View(ViewNamesConstant.AdminEcardsCreate, ecard)); }
public ActionResult Create([Bind(Include = "ScheduleTime,ScheduleType,SenderName,RecipientEmail,SendSubject,SendMessage")] ScheduleSender ScheduleSender, int?EcardID, int?EgreetingUserID) { if (ModelState.IsValid) { using (var context = new EgreetingContext()) { // thinh: check user exist var egreetingUser = new EgreetingUser(); if (EcardID != null) { egreetingUser = context.Set <EgreetingUser>().Find(EgreetingUserID); if (egreetingUser == null) { ModelState.AddModelError(string.Empty, "User not found!"); ViewBag.Ecards = EcardBusiness.AllNoTracking.Where(x => x.Draft != true).Select(x => new { x.EcardID, x.EcardName }).ToDictionary(k => k.EcardID, v => v.EcardName); ViewBag.EgreetingUsers = EgreetingUserBusiness.AllNoTracking.Where(x => x.Draft != true).Select(x => new { x.EgreetingUserID, x.Email }).ToDictionary(k => k.EgreetingUserID, v => v.Email); return(View(ViewNamesConstant.AdminScheduleSendersCreate, ScheduleSender)); } } else { ModelState.AddModelError(string.Empty, "Need at least one user!"); ViewBag.Ecards = EcardBusiness.AllNoTracking.Where(x => x.Draft != true).Select(x => new { x.EcardID, x.EcardName }).ToDictionary(k => k.EcardID, v => v.EcardName); ViewBag.EgreetingUsers = EgreetingUserBusiness.AllNoTracking.Where(x => x.Draft != true).Select(x => new { x.EgreetingUserID, x.Email }).ToDictionary(k => k.EgreetingUserID, v => v.Email); return(View(ViewNamesConstant.AdminScheduleSendersCreate, ScheduleSender)); } // thinh: check ecard exist var ecard = new Ecard(); if (EcardID != null) { ecard = context.Set <Ecard>().Find(EcardID); if (ecard == null) { ModelState.AddModelError(string.Empty, "Ecard not found!"); ViewBag.Ecards = EcardBusiness.AllNoTracking.Where(x => x.Draft != true).Select(x => new { x.EcardID, x.EcardName }).ToDictionary(k => k.EcardID, v => v.EcardName); ViewBag.EgreetingUsers = EgreetingUserBusiness.AllNoTracking.Where(x => x.Draft != true).Select(x => new { x.EgreetingUserID, x.Email }).ToDictionary(k => k.EgreetingUserID, v => v.Email); return(View(ViewNamesConstant.AdminScheduleSendersCreate, ScheduleSender)); } } else { ModelState.AddModelError(string.Empty, "Need at least one ecard!"); ViewBag.Ecards = EcardBusiness.AllNoTracking.Where(x => x.Draft != true).Select(x => new { x.EcardID, x.EcardName }).ToDictionary(k => k.EcardID, v => v.EcardName); ViewBag.EgreetingUsers = EgreetingUserBusiness.AllNoTracking.Where(x => x.Draft != true).Select(x => new { x.EgreetingUserID, x.Email }).ToDictionary(k => k.EgreetingUserID, v => v.Email); return(View(ViewNamesConstant.AdminScheduleSendersCreate, ScheduleSender)); } // thinh: create schedule sender ScheduleSender.Ecard = ecard; ScheduleSender.EgreetingUser = egreetingUser; ScheduleSender.CreatedDate = DateTime.Now; context.Set <ScheduleSender>().Add(ScheduleSender); context.SaveChanges(); } return(RedirectToAction("Index")); } ViewBag.Ecards = EcardBusiness.AllNoTracking.Where(x => x.Draft != true).Select(x => new { x.EcardID, x.EcardName }).ToDictionary(k => k.EcardID, v => v.EcardName); ViewBag.EgreetingUsers = EgreetingUserBusiness.AllNoTracking.Where(x => x.Draft != true).Select(x => new { x.EgreetingUserID, x.Email }).ToDictionary(k => k.EgreetingUserID, v => v.Email); return(View(ViewNamesConstant.AdminScheduleSendersCreate, ScheduleSender)); }
public ActionResult Create(Ecard ecard, string ListCategoryString) { if (ModelState.IsValid) { var thumbnailFile = Request.Form.Files["Thumbnail"]; var ecardFile = Request.Form.Files["EcardFile"]; string pathThumbnail = $"{_webHostEnvironment.WebRootPath}Uploads/Thumbnails/"; string pathEcardFiles = $"{_webHostEnvironment.WebRootPath}Uploads/EcardFiles/"; if (!Directory.Exists(pathEcardFiles)) { Directory.CreateDirectory(pathEcardFiles); if (!Directory.Exists(pathThumbnail)) { Directory.CreateDirectory(pathThumbnail); } } if (ecardFile != null) { if (!Path.GetExtension(ecardFile.FileName).CheckExtentionFile(ecard.EcardType)) { ModelState.AddModelError(string.Empty, "File upload not support!"); ViewBag.Categories = CategoryBusiness.All.ToList(); return(View(ViewNamesConstant.AdminEcardsCreate, ecard)); } ecard.EcardUrl = "EcardUrl_" + DateTime.Now.ToFileTime() + Path.GetExtension(ecardFile.FileName); using (var fileStream = new FileStream(pathEcardFiles + ecard.EcardUrl, FileMode.Create)) { ecardFile.CopyTo(fileStream); } if (thumbnailFile != null && Path.GetExtension(thumbnailFile.FileName).CheckExtentionFile()) { ecard.ThumbnailUrl = "Thumbnail_" + DateTime.Now.ToFileTime() + Path.GetExtension(thumbnailFile.FileName); using (var fileStream = new FileStream(pathThumbnail + ecard.ThumbnailUrl, FileMode.Create)) { thumbnailFile.CopyTo(fileStream); } } else { ecard.ThumbnailUrl = "thumbnail.png"; } } else { ModelState.AddModelError(string.Empty, "There is no is ecard file found!"); ViewBag.Categories = CategoryBusiness.All.ToList(); return(View(ViewNamesConstant.AdminEcardsCreate, ecard)); } using (var context = new DesignTimeDbContextFactory().CreateDbContext(null)) { var lstCategoryID = ListCategoryString.Split('-').Where(x => x.Length > 0).Select(x => Convert.ToInt32(x)).ToList(); var lstCategory = context.Set <Category>().Where(x => lstCategoryID.Contains(x.CategoryID)).Select(x => x.CategoryEcards).ToList(); ecard.CategoryEcards = (ICollection <CategoryEcard>)lstCategory; if (context.Set <Ecard>().Any(x => ecard.EcardSlug.Equals(x.EcardSlug))) { ecard.EcardSlug = ecard.EcardSlug + DateTime.Now.ToFileTime(); } if (HttpContext.User != null && User.Identity.IsAuthenticated) { string email = ""; email = User.Identity.Name; var user = context.Set <EgreetingUser>().Where(x => x.Email.Equals(email)).FirstOrDefault(); ecard.EgreetingUser = user; } ecard.CreatedDate = DateTime.Now; context.Set <Ecard>().Add(ecard); context.SaveChanges(); } return(RedirectToAction("Index")); } ViewBag.Categories = CategoryBusiness.All.ToList(); return(View(ViewNamesConstant.AdminEcardsCreate, ecard)); }