public override Task <IViewProviderResult> BuildEditAsync(LabelAdmin label, IViewProviderContext updater) { EditLabelViewModel editLabelViewModel = null; if (label.Id == 0) { editLabelViewModel = new EditLabelViewModel() { IsNewLabel = true }; } else { editLabelViewModel = new EditLabelViewModel() { Id = label.Id, Name = label.Name, Description = label.Description, ForeColor = label.ForeColor, BackColor = label.BackColor }; } return(Task.FromResult(Views( View <EditLabelViewModel>("Admin.Edit.Header", model => editLabelViewModel).Zone("header").Order(1), View <EditLabelViewModel>("Admin.Edit.Content", model => editLabelViewModel).Zone("content").Order(1), View <EditLabelViewModel>("Admin.Edit.Footer", model => editLabelViewModel).Zone("actions").Order(1), View <EditLabelViewModel>("Admin.Edit.Actions", model => editLabelViewModel).Zone("actions-right").Order(1) ))); }
public async Task <IActionResult> Edit(Guid id) { var label = await _todoRepository.GetLabelAsync(id); var model = EditLabelViewModel.FromEntity(label); return(View(model)); }
public async Task <IActionResult> CreatePost(EditLabelViewModel viewModel) { var user = await _contextFacade.GetAuthenticatedUserAsync(); if (user == null) { return(Unauthorized()); } if (!ModelState.IsValid) { return(View(viewModel)); } // Create label var label = new Label() { FeatureId = await GetFeatureIdAsync(), Name = viewModel.Name, Description = viewModel.Description, ForeColor = viewModel.ForeColor, BackColor = viewModel.BackColor, CreatedUserId = user.Id, CreatedDate = DateTimeOffset.UtcNow }; // Persist label var result = await _labelManager.CreateAsync(label); if (result.Succeeded) { // Indicate new label result.Response.IsNewLabel = true; // Execute view providers await _viewProvider.ProvideUpdateAsync(result.Response, this); // Add confirmation _alerter.Success(T["Label Added Successfully!"]); // Return return(RedirectToAction(nameof(Index))); } else { foreach (var error in result.Errors) { ModelState.AddModelError(string.Empty, error.Description); } } return(View(viewModel)); }
public ViewResult Edit(Guid id) { var label = _databaseContext.Label .FirstOrDefault(p => p.LabelID == id); ViewData["Success"] = TempData["Success"]; var model = new EditLabelViewModel { Label = label }; return(View(model)); }
public IActionResult Update(Guid id, EditLabelViewModel model) { if (ModelState.IsValid) { var label = _databaseContext.Label .FirstOrDefault(m => m.LabelID == id); label.LabelName = model.Label.LabelName; TempData["Success"] = true; _databaseContext.SaveChanges(); } return(RedirectToAction(nameof(Index))); }
public async Task <IActionResult> Edit(EditLabelViewModel model) { if (!ModelState.IsValid) { return(View(model)); } var label = await _todoRepository.GetLabelAsync(model.Id); label.Value = model.Value; if (!await _todoRepository.UpdateLabelAsync(label)) { ModelState.AddModelError("Value", "Label is already added."); return(View(model)); } return(RedirectToAction("Index")); }
public override async Task <IViewProviderResult> BuildUpdateAsync(LabelAdmin label, IViewProviderContext context) { if (label == null) { throw new ArgumentNullException(nameof(label)); } if (label.IsNewLabel) { return(await BuildEditAsync(label, context)); } var model = new EditLabelViewModel(); if (!await context.Updater.TryUpdateModelAsync(model)) { return(await BuildEditAsync(label, context)); } model.Name = model.Name?.Trim(); model.Description = model.Description?.Trim(); if (context.Updater.ModelState.IsValid) { label.Name = model.Name; label.Description = model.Description; label.ForeColor = model.ForeColor; label.BackColor = model.BackColor; var result = await _labelManager.UpdateAsync((Label)label); foreach (var error in result.Errors) { context.Updater.ModelState.AddModelError(string.Empty, error.Description); } } return(await BuildEditAsync(label, context)); }