public async Task <IActionResult> CreateAdmin([Bind("Message,RecipientId")] CreateMessageModel model) { var sender = _context.Users.FirstOrDefaultAsync(user => user.Id == _userManager.GetUserId(User)); model.UsersHasMessages = new UsersHasMessages { Sender = await sender }; if (ModelState.IsValid) { model.Message.DateSent = DateTime.Now; _context.Add(model.Message); await _context.SaveChangesAsync(); model.UsersHasMessages.IsAdminMessage = 1; model.UsersHasMessages.IsDeleted = 0; model.UsersHasMessages.AlreadyRead = 0; model.UsersHasMessages.Messages = model.Message; model.UsersHasMessages.MessagesId = model.Message.Id; IList <ApplicationUser> users = _context.Users.ToList(); foreach (var user in users) { //Data for UsersHasMessages table model.UsersHasMessages.RecipientId = user.Id; _context.Add(model.UsersHasMessages); await _context.SaveChangesAsync(); } return(RedirectToAction(nameof(Index))); } return(View(model)); }
public async Task Delete_Message_DeleteMessage() { // Arrange var messagesController = this.CreateMessagesController(true); //add recipient var recipientUser = new ApplicationUser() { Email = "*****@*****.**", UserName = "******" }; mockadvert_siteContext.Add(recipientUser); //add msg var msg = new Messages() { Subject = "Delete me", Text = "LOL" }; mockadvert_siteContext.Add(msg); mockadvert_siteContext.SaveChanges(); var userHasMsg = new UsersHasMessages() { MessagesId = msg.Id, RecipientId = recipientUser.Id, SenderId = fakeUser.Id, IsDeleted = 0 }; mockadvert_siteContext.UsersHasMessages.Add(userHasMsg); mockadvert_siteContext.SaveChanges(); // Act var result = await messagesController.Delete( userHasMsg.MessagesId, userHasMsg.SenderId, userHasMsg.RecipientId); // Assert Assert.Equal((short)1, userHasMsg.IsDeleted); }
public async Task <IActionResult> CreateAsync(int id, Comments comment) { if (ModelState.IsValid) { var comments = new Comments { Listingid = id, Userid = this.User.FindFirstValue(ClaimTypes.NameIdentifier), Text = comment.Text, Date = DateTime.Now }; _context.Add(comments); await _context.SaveChangesAsync(); return(RedirectToAction("Details", "Listings", new { id = id })); } // turetu sito nepasiekti return(RedirectToAction("Index", "Home")); }
public async Task <IActionResult> CreatePost([Bind("Subcategoryid,Name,Description,Price,GoogleLatitude,GoogleLongitude,GoogleRadius,ListingPictures")] ListingNewModel newListing) { if (ModelState.IsValid) { Listings listings = new Listings() { Subcategoryid = newListing.Subcategoryid, Name = newListing.Name, Description = newListing.Description, Price = newListing.Price, GoogleLatitude = newListing.GoogleLatitude, GoogleLongitude = newListing.GoogleLongitude, GoogleRadius = newListing.GoogleRadius * 1000 }; listings.Userid = this.User.FindFirstValue(ClaimTypes.NameIdentifier); listings.Date = DateTime.Now; listings.Display = 1; listings.Verified = 0; /* * listings.GoogleLongitude = 0;// newListing.GoogleLongitude; * listings.GoogleLatitude = 0;// newListing.GoogleLatitude; * listings.GoogleRadius = 10000;// newListing.GoogleRadius; */ _context.Add(listings); _context.SaveChanges(); if (newListing.ListingPictures != null && newListing.ListingPictures.Count() > 4) //jei nuotrauku daugiau nei 4 atmetam { TempData["PictureError"] = "Nuotraukų negali būti daugiau nei 4!"; return(RedirectToAction(nameof(Create), newListing)); } if (newListing.ListingPictures != null) { foreach (var picture in newListing.ListingPictures) { if (picture.Length > ImageMaximumBytes) //jei dydid didesnis uz 10MB atmeta { TempData["PictureError"] = "Nuotraukos dydis negali būti didesnis nei 10Mb!"; return(RedirectToAction(nameof(Create), newListing)); } if (!IsImage(picture)) { TempData["PictureError"] = "Failas nėra nuotrauka!"; return(RedirectToAction(nameof(Create), newListing)); } } foreach (var picture in newListing.ListingPictures) { if (picture.Length > 0) { var pic = new ListingPictures { ListingId = listings.Id, ContentType = picture.ContentType }; _context.Add(pic); await _context.SaveChangesAsync(); string[] filenameAndExtension = picture.FileName.Split('.'); filenameAndExtension[0] = pic.PictureId.ToString(); string fileName = filenameAndExtension[0] + "." + filenameAndExtension[1]; string path = "UserPictures" + "\\" + fileName; path = Path.GetFullPath(path); pic.FileName = fileName; _context.ListingPictures.Update(pic); using (var stream = new FileStream(path, FileMode.Create)) { await picture.CopyToAsync(stream); } } } } await _context.SaveChangesAsync(); //TempData["Success"] = "Jūsų skelbimas bus patalpintas, kai administratorius jį patikrins"; return(RedirectToAction(nameof(Index))); } ViewData["Subcategoryid"] = new SelectList(_context.Subcategory, "Id", "Id"); ViewData["Userid"] = new SelectList(_context.Users, "Id", "UserName"); return(View(newListing)); }