public IActionResult PutVote(int id, string author, int vote) { Poem poem = _poemRepository.GetById(id); if (vote == 0) { if (!poem.DownVoters.Contains(author)) { poem.AddDownvote(); poem.DownVoters.Add(author); if (poem.UpVoters.Contains(author)) { poem.RemoveUpvote(); poem.UpVoters.Remove(author); } } } else { if (!poem.UpVoters.Contains(author)) { poem.AddUpvote(); poem.UpVoters.Add(author); if (poem.DownVoters.Contains(author)) { poem.RemoveDownvote(); poem.DownVoters.Remove(author); } } } _poemRepository.Update(poem); _poemRepository.SaveChanges(); return(NoContent()); }
public ActionResult <Poem> PostPoem(PoemDTO poemDTO) { Poem poem = new Poem { Title = poemDTO.Title, Author = poemDTO.Author, PoemText = poemDTO.PoemText, Themes = poemDTO.Themes, UpVoters = new List <string>(), DownVoters = new List <string>(), Image = poemDTO.Image }; _poemRepository.Add(poem); _poemRepository.SaveChanges(); return(NoContent()); }