public async Task <IActionResult> AddCollection(CollectionAddRequest request, User user) { var result = (OkObjectResult) await GetCollection(request.Name, user); var collection = (Collection)result.Value; if (collection != null) { return(new BadRequestResult()); } Collection newCollection = new Collection { Name = request.Name, CreationDate = DateTime.Now, Color = request.Color }; await _context.Collections.AddAsync(newCollection); await _context.SaveChangesAsync(); UserCollection newUserCollection = new UserCollection { IdUser = user.IdUser, IdCollection = newCollection.IdCollection }; await _context.UserCollections.AddAsync(newUserCollection); await _context.SaveChangesAsync(); return(new OkObjectResult(newCollection)); }
public async Task <IActionResult> AddItem(AddingItemRequest request) { //TODO check if it there is note with the same title var item = new Item { Title = request.Title, Content = request.Content, CreationDate = DateTime.Now, KnowledgeRating = request.KnowledgeRating, Type = request.Type }; await _context.Items.AddAsync(item); await _context.SaveChangesAsync(); await _context.CollectionItems.AddAsync(new CollectionItem { IdItem = item.IdItem, IdCollection = request.IdCollection }); await _context.SaveChangesAsync(); return(new OkResult()); }
public async Task <IActionResult> Register(RegistrationRequest request) { EncodedPassword password = EncodePassword(request.Password, GenerateRandomSalt32()); User newUser = new User { Username = request.Username, Email = request.Email, Password = password.hash, Salt = password.salt }; await _context.Users.AddAsync(newUser); await _context.SaveChangesAsync(); return(new OkObjectResult(newUser)); }