示例#1
0
        public ActionResult CreateAd(ClassifiedAdAdd newItem)
        {
            if (!ModelState.IsValid)
            {
                var retItem = Mapper.Map <ClassifiedAdAddForm>(newItem);
                var f       = ClassifiedAdManager.GetSubCatWithCat(newItem.SubCatId);

                // Create form
                retItem.SubCategoryId   = f.Id;
                retItem.SubCategoryName = f.Name;
                retItem.CategoryName    = f.CategoryName;
                retItem.ConfigureForm(ClassifiedAdManager);
                retItem.AdInfo = null;

                var getinfo = f.AdInfoTemplate?.RecommendedInfo;
                if (getinfo != null)
                {
                    if (getinfo.Count() > 0)
                    {
                        retItem.AdInfo = new List <InfoForm>();
                        retItem.AdInfo = getinfo.ToList();
                    }
                }

                return(View(retItem));
            }
            // Prevent double post
            if (TempData["hasBeenPosted"] == null)
            {
                TempData["hasBeenPosted"] = true;
                // Sanitize description
                newItem.Description = new HtmlSanitizer().Sanitize(newItem.Description);

                // Process the input
                var addedItem = ClassifiedAdManager.AddClassifiedAd(newItem);

                if (addedItem == null)
                {
                    return(View(newItem));
                }
                else
                {
                    // Prevent user going back after posting ad
                    TempData["isPostedCreate"] = true;
                    return(RedirectToAction("MyAdPreview", new { adId = addedItem.Id }));
                }
            }

            return(RedirectToAction("MyAdList"));
        }
示例#2
0
        public ActionResult CreateAd(int?subCatId)
        {
            if (Request.UrlReferrer == null || Request.UrlReferrer != null && (Request.UrlReferrer.Host == Request.Url.Host && !subCatId.HasValue || Request.UrlReferrer.Host != Request.Url.Host && subCatId.HasValue || Request.UrlReferrer.Host != Request.Url.Host && !subCatId.HasValue))
            {
                TempData.Clear();
                return(RedirectToAction("CategorySelectCreateAd"));
            }

            // check if user pressed back button after posting
            if (TempData["isPostedCreate"] != null || ViewBag.isPostedCreate != null)
            {
                return(RedirectToAction("CategorySelectCreateAd"));
            }

            var f = ClassifiedAdManager.GetSubCatWithCat(subCatId.Value);

            // Create form
            var defaultForm = new ClassifiedAdAddForm
            {
                SubCategoryId   = f.Id,
                SubCategoryName = f.Name,
                CategoryName    = f.CategoryName
            };

            defaultForm.ConfigureForm(ClassifiedAdManager);

            var getinfo = f.AdInfoTemplate?.RecommendedInfo;

            if (getinfo != null)
            {
                if (getinfo.Count() > 0)
                {
                    defaultForm.AdInfo = new List <InfoForm>();
                    defaultForm.AdInfo = getinfo.ToList();
                }
            }
            return(View(defaultForm));
        }