Exemplo n.º 1
0
        public ActionResult CreateAdDetails()
        {
            var user           = User as UserPrinciple;
            var adDetailsModel = new AdDetailsViewModel
            {
                UserId = user.UserId
            };

            return(View("EditAdDetails", adDetailsModel));
        }
Exemplo n.º 2
0
        public ActionResult AdDetails(int adId)
        {
            SimpleAdDb db        = new SimpleAdDb(Properties.Settings.Default.ConStr);
            var        viewModel = new AdDetailsViewModel
            {
                Ad = db.GetById(adId)
            };
            var cookie = Request.Cookies["AdIds"];

            if (cookie != null)
            {
                var ids = cookie.Value.Split(',').Select(int.Parse);
                viewModel.ShowDeleteButton = ids.Any(i => i == adId);
            }

            return(View(viewModel));
        }
        public async Task <IActionResult> AdDetails(int?id)
        {
            AdDetailsViewModel model = new AdDetailsViewModel();

            var getByIdReult = await _adService.GetAdById(id ?? 0, dataForEdit : false);

            if (!getByIdReult.Succedeed)
            {
                return(View(model));
            }

            await _adViewsService.UpdateViewsAd(id ?? 0);

            model.AddDetails = getByIdReult.Property;

            var similarAdsResult =
                await _adService.GetAdsByProductTypeId(model.AddDetails.Characteristics.ProductType.ProductTypesId);

            if (!similarAdsResult.Succedeed)
            {
                return(View(model));
            }

            var similarAds = similarAdsResult.Property;

            model.SimilarAds = similarAds.OrderBy(x => Guid.NewGuid()).Take(4).ToList();

            var otherAdsByAuthorResult = await _adService.GetAdsByUserId(model.AddDetails.ApplicationUser.Id);

            if (!otherAdsByAuthorResult.Succedeed)
            {
                return(View(model));
            }

            var otherAdsByAuthor = otherAdsByAuthorResult.Property;

            model.OtherAdsByAuthor = otherAdsByAuthor.Take(5).ToList();

            return(View(model));
        }
Exemplo n.º 4
0
 private AdDetails MapViewModelToAdDetails(AdDetailsViewModel adDetailsModel)
 {
     return(new AdDetails
     {
         AdId = adDetailsModel.AdId,
         Name = adDetailsModel.Name,
         State = adDetailsModel.State,
         Kind = adDetailsModel.Kind,
         Price = adDetailsModel.Price,
         Description = adDetailsModel.Description,
         Location = new Location {
             LocationId = adDetailsModel.Location.LocationId
         },
         User = new User {
             UserId = adDetailsModel.UserId
         },
         AddressLine = adDetailsModel.AddressLine,
         CreationDate = DateTime.Now,
         Categories = (IReadOnlyCollection <Category>)adDetailsModel.Categories,
         Images = (IReadOnlyCollection <Image>)adDetailsModel.Images
     });
 }