public IHttpActionResult Update(int id, CodeSnipetDataModel codeSnipet) { if (!this.ModelState.IsValid) { return(BadRequest(ModelState)); } var existingCodeSnipet = this.data.CodeSnipets.All().FirstOrDefault(a => a.Id == id); if (existingCodeSnipet == null) { return(BadRequest(NO_CODE_SNIPET)); } var currentUserId = this.userIdProvider.GetUserId(); if (existingCodeSnipet.UserId != currentUserId) { return(BadRequest(NOT_YOUR_SNIPET)); } existingCodeSnipet.Content = codeSnipet.Content; existingCodeSnipet.Language = codeSnipet.Language; existingCodeSnipet.Title = codeSnipet.Title; this.data.SaveChanges(); codeSnipet.Id = id; codeSnipet.UserId = existingCodeSnipet.UserId; codeSnipet.AddedOn = existingCodeSnipet.AddedOn; codeSnipet.Score = CalculateScoreForSnipet(id); UpdateLastActivityForUser(); return(Ok(codeSnipet)); }
public IHttpActionResult Create(CodeSnipetDataModel codeSnipet) { if (!this.ModelState.IsValid) { return(BadRequest(ModelState)); } var currentUserId = this.userIdProvider.GetUserId(); var newCodeSnipet = new CodeSnipet { Content = codeSnipet.Content, Language = codeSnipet.Language, Title = codeSnipet.Title, UserId = currentUserId, AddedOn = DateTime.Now }; this.data.CodeSnipets.Add(newCodeSnipet); this.data.SaveChanges(); UpdateLastActivityForUser(); return(Ok(newCodeSnipet.Id)); }