// GET: TodoItems/Edit/5 public async Task <ActionResult> Edit(int id) { var item = await _context.TodoItem.FirstOrDefaultAsync(ti => ti.Id == id); var loggedInUser = await GetCurrentUserAsync(); var TodoStatuses = await _context.TodoStatus .Select(td => new SelectListItem() { Text = td.Title, Value = td.Id.ToString() }) .ToListAsync(); var viewModel = new TodoItemStatusViewModel() { Id = id, Title = item.Title, TodoStatusId = item.TodoStatusId, StatusOptions = TodoStatuses, }; if (item.ApplicationUserId != loggedInUser.Id) { return(NotFound()); } return(View(viewModel)); }
public async Task <ActionResult> Edit(int id, TodoItemStatusViewModel TodoItemViewModel) { try { var todoItem = new TodoItem() { Id = TodoItemViewModel.Id, Title = TodoItemViewModel.Title, TodoStatusId = TodoItemViewModel.TodoStatusId }; var user = await GetCurrentUserAsync(); todoItem.ApplicationUserId = user.Id; _context.TodoItem.Update(todoItem); await _context.SaveChangesAsync(); return(RedirectToAction(nameof(Index))); } catch { return(View()); } }
// GET: TodoItems/Create public async Task <ActionResult> Create() { var ToDoStatuses = await _context.TodoStatus .Select(td => new SelectListItem() { Text = td.Title, Value = td.Id.ToString() }) .ToListAsync(); var viewModel = new TodoItemStatusViewModel(); viewModel.StatusOptions = ToDoStatuses; return(View(viewModel)); }
public async Task <ActionResult> Create(TodoItemStatusViewModel todoViewItem) { try { var todoItem = new TodoItem { Title = todoViewItem.Title, TodoStatusId = todoViewItem.TodoStatusId }; var user = await GetCurrentUserAsync(); todoItem.ApplicationUserId = user.Id; _context.TodoItem.Add(todoItem); await _context.SaveChangesAsync(); return(RedirectToAction(nameof(Index))); } catch { return(View()); } }