public IActionResult Add(ItemModel model) { if (model == null) { throw new ArgumentNullException(nameof(model)); } // Determine if the parent already exists. var path = System.IO.Path.GetDirectoryName(model.Path).Replace("\\", "/"); var parent = _context.Items.FirstOrDefault(i => i.Path == path) ?? new Item() { Name = new System.IO.DirectoryInfo(path).Name, Path = path, PublishedOn = model.PublishedOn?.ToUniversalTime(), CreatedOn = model.CreatedOn?.ToUniversalTime() ?? DateTime.UtcNow, UpdatedOn = model.UpdatedOn?.ToUniversalTime() ?? DateTime.UtcNow }; var item = new Item() { Name = model.Name, Path = model.Path, Description = model.Description, Author = model.Author, PublishedOn = model.PublishedOn?.ToUniversalTime(), CreatedOn = model.CreatedOn?.ToUniversalTime() ?? DateTime.UtcNow, UpdatedOn = model.UpdatedOn?.ToUniversalTime() ?? DateTime.UtcNow, Parent = parent }; _context.Items.Add(item); _context.SaveChanges(); return(new JsonResult(new ItemModel(item))); }
public IActionResult Add(PageModel model) { if (model == null) { throw new ArgumentNullException(nameof(model)); } var page = new Page() { Name = model.Name, Path = model.Path, SortOrder = model.SortOrder, Body = model.Body, IsEnabled = model.IsEnabled }; _context.Pages.Add(page); _context.SaveChanges(); return(new JsonResult(new PageModel(page))); }
public IActionResult Add(UserModel model) { if (model == null) { throw new ArgumentNullException(nameof(model)); } var user = new User() { Id = Guid.NewGuid(), Username = model.Username, Email = model.Email, Password = _auth.HashPassword(model.Password), DisplayName = model.DisplayName, FirstName = model.FirstName, LastName = model.LastName, IsEnabled = model.IsEnabled }; _context.Users.Add(user); _context.SaveChanges(); return(new JsonResult(new UserModel(user))); }