public async Task <Debate> EditDebate(string id, DebateRequestDto debate) { Debate debateToEdit = await _context.Debates .Where(d => d.Id == id) .Where(d => d.CreatedById == debate.CreatedById) .FirstAsync(); if (debate == null) { return(null); } debateToEdit.Description = debate.Description; debate.Topic = debate.Topic; try { _context.Debates.Update(debateToEdit); await _context.SaveChangesAsync(); } catch (Exception ex) { Console.Write(ex); return(null); } return(debateToEdit); }
public async Task <IActionResult> CreateDebate(DebateRequestDto newDebate) { var debate = await _debateService.CreateDebate(newDebate); if (!debate) { return(BadRequest()); } return(Ok(debate)); }
private async Task GenerateDebates() { var users = await _context.Users.ToListAsync(); var debates = new DebateRequestDto[] { new DebateRequestDto() { Topic = $"New guy {users[0].Email}", Description = $"Description {users[0].Email}", CreatedById = users[0].Id }, new DebateRequestDto() { Topic = $"New guy {users[1].Email}", Description = $"Description {users[1].Email}", CreatedById = users[1].Id }, new DebateRequestDto() { Topic = $"New guy {users[2].Email}", Description = $"Description {users[2].Email}", CreatedById = users[2].Id }, new DebateRequestDto() { Topic = $"New guy {users[3].Email}", Description = $"Description {users[3].Email}", CreatedById = users[3].Id }, new DebateRequestDto() { Topic = $"New guy {users[4].Email}", Description = $"Description {users[4].Email}", CreatedById = users[4].Id }, }; foreach (var debate in debates) { await _debateService.CreateDebate(debate); } await _context.SaveChangesAsync(); }
public async Task <IActionResult> EditDebate(string id, DebateRequestDto editedDebate) { var debate = await _debateService.GetDebate(id); if (debate.CreatedAt > DateTime.Now.AddHours(-1)) { return(StatusCode(406, new { error = "Debates are only editable within the first hour after they are created." })); } var updatedDebate = await _debateService.EditDebate(id, editedDebate); if (updatedDebate == null) { return(BadRequest()); } return(Ok(updatedDebate)); }
public async Task <bool> CreateDebate(DebateRequestDto debate) { Debate newDebate = new Debate(); newDebate.Description = debate.Description; newDebate.Topic = debate.Topic; newDebate.CreatedById = debate.CreatedById; try { await _context.Debates.AddAsync(newDebate); await _context.SaveChangesAsync(); } catch (Exception ex) { Console.WriteLine(ex); return(false); } return(true); }