public async Task <IActionResult> Create(CreateIdeaModel model) { if (ModelState.IsValid) { Idea i = _context.Idea.FirstOrDefault(temp => temp.Title.ToLower().Trim() == model.Title.Trim().ToLower()); if (i == null) { i = new Idea(); i.Description = model.Description; i.PostDate = DateTime.UtcNow; i.Video = model.Video; if (HttpContext.User.Identities.Any(u => u.IsAuthenticated)) { Member m = _context.Member.FirstOrDefault(temp => temp.Phone == HttpContext.User.Identity.Name); if (m != null) { i.PostedBy = m; } } i.Status = StatusType.Active; i.Title = model.Title; _context.Add(i); await _context.SaveChangesAsync(); foreach (IFormFile file in Request.Form.Files) { string fileName = Path.GetFileName(file.FileName); var webRoot = _env.WebRootPath; //var PathWithFolderName = System.IO.Path.Combine(webRoot, "MyFolder"); var image = new IdeaImages(); fileName = string.Format("{0}-{1}", Guid.NewGuid(), fileName); image.Image = fileName; image.Id = i.ID; _context.IdeaImages.Add(image); var filePath = Path.Combine(Directory.GetCurrentDirectory(), @"wwwroot\images", fileName); using (var fileStream = new FileStream(filePath, FileMode.Create)) { await file.CopyToAsync(fileStream); } _context.SaveChanges(); } return(RedirectToAction(nameof(Index))); } else { ModelState.AddModelError("DuplicateTitle", "Another idea with same title is found."); } } return(View(model)); }
public async Task CreateBackLogItemAsync(CreateIdeaModel createIdeaModel) { _context.Add(new BackLog { ProblemDescription = createIdeaModel.ProblemDescription, CustomerProblem = createIdeaModel.CustomerProblem, RaisedBy = createIdeaModel.RaisedBy, Status = IdeaStatuses.IdeaPending }); await _context.SaveChangesAsync(); }
//[ValidateAntiForgeryToken] //[Authorize] public async Task <IActionResult> Create([Bind("CustomerProblem,ProblemDescription")] CreateIdeaModel createIdeaModel) { if (ModelState.IsValid) { createIdeaModel.RaisedBy = User.Identity.Name; await _backlogUow.CreateBackLogItemAsync(createIdeaModel); return(RedirectToAction(nameof(Index))); } return(View(createIdeaModel)); }