예제 #1
0
        public async Task <ActionResult> Create(ClassifiedAdViewModel model)
        {
            if (ModelState.IsValid)
            {
                var expireDate = model.ExpireDate ?? DateTime.Today.AddDays(30);
                if (model.ExpireTime == null)
                {
                    expireDate = expireDate.AddDays(1);
                }
                var expireTime   = model.ExpireTime ?? DateTime.Today;
                var classifiedAd = new ClassifiedAd()
                {
                    UserId      = User.Identity.GetUserId(),
                    TypeId      = model.TypeId,
                    Title       = model.Title,
                    Description = model.Description,
                    Created     = DateTime.Now,
                    Expires     = expireDate
                                  .AddHours(expireTime.Hour)
                                  .AddMinutes(expireTime.Minute)
                                  .AddSeconds(expireTime.Second)
                };
                _db.ClassifiedAds.Add(classifiedAd);
                await _db.SaveChangesAsync();

                return(RedirectToAction("Index"));
            }

            ViewBag.TypeId = new SelectList(_db.ClassifiedTypes, "Id", "Name");
            return(View(model));
        }
        public ActionResult Details(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            ClassifiedAd classifiedAd = db.ClassifiedAds.Find(id);

            if (classifiedAd == null)
            {
                return(HttpNotFound());
            }
            ClassifiedAdViewModel classifiedAdVM = new ClassifiedAdViewModel();

            classifiedAdVM.ClassifiedAdId = classifiedAd.ClassifiedAdId;
            classifiedAdVM.Title          = classifiedAd.Title;
            classifiedAdVM.Description    = classifiedAd.Description;
            return(View(classifiedAdVM));
        }
        public ActionResult Create(ClassifiedAdViewModel classifiedAdVM)
        {
            ClassifiedAd classifiedAd = new ClassifiedAd();

            if (ModelState.IsValid)
            {
                string[] images = null;
                if (classifiedAdVM.Image != null)
                {
                    images = classifiedAdVM.Image.Split(';');
                }

                classifiedAd.Title       = classifiedAdVM.Title;
                classifiedAd.Description = classifiedAdVM.Description;
                classifiedAd.City        = db.Cities.Find(Convert.ToInt32(Request.Form["City"]));
                classifiedAd.Category    = db.Categories.Find(Convert.ToInt32(Request.Form["Category"]));
                classifiedAd.User        = db.Users.Find(User.Identity.GetUserId());
                classifiedAd.Images      = new List <Image>();
                if (images != null)
                {
                    foreach (string image in images)
                    {
                        var img = db.Images.Where(i => i.Identifier == image).FirstOrDefault();
                        if (img != null)
                        {
                            classifiedAd.Images.Add(img);
                        }
                    }
                }

                db.ClassifiedAds.Add(classifiedAd);
                db.SaveChanges();
                return(RedirectToAction("Index", "Home"));
            }

            return(View(classifiedAdVM));
        }