public async Task <IActionResult> Details(int?id) { if (id == null) { return(NotFound()); } var advertisement = await _context.Advertisements .SingleOrDefaultAsync(m => m.ID == id); if (advertisement == null) { return(NotFound()); } var comments = from c in _context.Comments select c; comments = comments.Where(c => c.AdvertisementID == id); if (comments == null) { return(NotFound()); } var model = new PutAdViewModel(advertisement, comments); return(View(model)); }
public async Task <IActionResult> Edit(int id, [Bind("ID,City,Area,Address,Description,Price,Contact,Date,Studio,OneRoom,TwoRooms,ThreeRooms")] PutAdViewModel putAdViewModel) { if (id.ToString() != putAdViewModel.ID) { return(NotFound()); } if (ModelState.IsValid) { try { _context.Update(putAdViewModel); await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!PutAdViewModelExists(putAdViewModel.ID)) { return(NotFound()); } else { throw; } } return(RedirectToAction("Index")); } return(View(putAdViewModel)); }
public async Task <IActionResult> AddComment(string textButton, int ad_id) { Comment comment = new Comment(); comment.UserId = _userName; comment.AdvertisementID = ad_id; comment.DateOfComent = DateTime.Now; comment.Like = 0; comment.Dislike = 0; comment.Text = textButton; _context.Add(comment); await _context.SaveChangesAsync(); var comments = from c in _context.Comments select c; comments = comments.Where(m => m.AdvertisementID == ad_id); var advertisement = await _context.Advertisements .SingleOrDefaultAsync(m => m.ID == comment.AdvertisementID); var listModel = comments.ToList(); var model = new PutAdViewModel(advertisement, comments); //return View("~/Views/Advertisements/Details.cshtml", model); return(PartialView("~/Views/Shared/_DetailsPartial.cshtml", listModel)); }
// GET: Advertisements public async Task <IActionResult> Index() { var advertisements = _context.Advertisements; var model = new PutAdViewModel(advertisements); //model.UserID = _userName; return(View("~/Views/Home/Ads.cshtml", model)); }
public async Task <IActionResult> Create([Bind("ID, City,Area,Address,Description,Studio,OneRoom,TwoRooms,ThreeRooms,Price,Contact,Date")] PutAdViewModel putad, IFormFile upload) { //if (ModelState.IsValid) //{ // _context.Add(putAdViewModel); // await _context.SaveChangesAsync(); // return RedirectToAction("Index"); //} //return View(putAdViewModel); if (ModelState.IsValid) { //if (upload != null && upload.Length > 0) //{ // //Models.File fileIn = new Models.File(); // Data.EfModels.UploadImage Imagein = new UploadImage(); // var fileName = ContentDispositionHeaderValue.Parse(upload.ContentDisposition).FileName.Trim('"'); // byte[] fileBytes = null; // using (var fileStream = upload.OpenReadStream()) // using (var ms = new MemoryStream()) // { // fileStream.CopyTo(ms); // fileBytes = ms.ToArray(); // //string s = Convert.ToBase64String(fileBytes); // // act on the Base64 data // } // Imagein.Imagename = fileName; // Imagein.ContentType = upload.ContentType; // Imagein.Content = fileBytes; // _context.Add(Imagein); // await _context.SaveChangesAsync(); // _context.Add(Imagein); //} _context.Add(putad); await _context.SaveChangesAsync(); return(RedirectToAction("Index")); } //ViewData["ID"] = new SelectList(_context.Users, "ID", "ID", advertisement.ID); return(View(putad)); }
public async Task <IActionResult> Dislike(int?id) { var comment = await _context.Comments.SingleOrDefaultAsync(m => m.CommentID == id); // var model = new CommentViewModel(comment); comment.Dislike++; _context.Update(comment); await _context.SaveChangesAsync(); var advertisement = await _context.Advertisements .SingleOrDefaultAsync(m => m.ID == comment.AdvertisementID); var comments = from c in _context.Comments select c; comments = comments.Where(m => m.AdvertisementID == advertisement.ID); var model = new PutAdViewModel(advertisement, comments); return(View("~/Views/Advertisements/Details.cshtml", model)); }