public async Task <IActionResult> Create(TodoCreateEditViewModel vm) { if (!ModelState.IsValid) { return(View(vm)); } var todo = new TodoItem { Title = vm.TodoItem.Title, Date = vm.TodoItem.Date, CategoryId = vm.TodoItem.CategoryId, Complete = vm.TodoItem.Complete, OwnerID = _userManager.GetUserId(User) }; var isAuthorized = await _authorizationService.AuthorizeAsync( User, todo, Operations.Create); if (!isAuthorized.Succeeded) { return(new ChallengeResult()); } _todoRepo.Add(todo); _todoRepo.Save(); return(RedirectToAction(nameof(List))); }
public async Task <IActionResult> Edit(int?id) { if (id == null) { return(NotFound()); } var todo = _todoRepo.Get((int)id); if (todo == null) { return(NotFound()); } var isAuthorized = await _authorizationService.AuthorizeAsync( User, todo, Operations.Update); if (!isAuthorized.Succeeded) { return(new ChallengeResult()); } var vm = new TodoCreateEditViewModel(); var categories = _todoRepo.GetCategories(); vm.TodoItem = todo; vm.CategorySelectList = new SelectList(categories, nameof(TodoCategory.Id), nameof(TodoCategory.Name)); return(View(vm)); }
public async Task <IActionResult> Edit(int id, TodoCreateEditViewModel vm) { if (!ModelState.IsValid) { return(View(vm)); } var todo = _todoRepo.Get(id); if (todo == null) { return(NotFound()); } var isAuthorized = await _authorizationService.AuthorizeAsync(User, todo, Operations.Update); if (!isAuthorized.Succeeded) { return(new ChallengeResult()); } todo.Title = vm.TodoItem.Title; todo.Date = vm.TodoItem.Date; todo.Category = vm.TodoItem.Category; todo.Complete = vm.TodoItem.Complete; _todoRepo.Update(todo); _todoRepo.Save(); return(RedirectToAction(nameof(List))); }
public IActionResult Create() { var vm = new TodoCreateEditViewModel(); var categories = _todoRepo.GetCategories(); vm.CategorySelectList = new SelectList(categories, nameof(TodoCategory.Id), nameof(TodoCategory.Name)); return(View(vm)); }
public TodoCreateEditPage(int id = 0) { InitializeComponent(); BindingContext = new TodoCreateEditViewModel(id); }