Exemple #1
0
        public async Task <IActionResult> Edit(InputModels.EditBoardInput input)
        {
            if (ModelState.IsValid)
            {
                var serviceResponse = BoardRepository.UpdateBoard(input);
                return(await ForumViewResult.RedirectFromService(this, serviceResponse, FailureCallback));
            }

            return(await FailureCallback());

            async Task <IActionResult> FailureCallback()
            {
                var boardRecord = BoardRepository.First(b => b.Id == input.Id);

                var viewModel = new PageViewModels.EditPage {
                    Id         = boardRecord.Id,
                    Categories = BoardRepository.CategoryPickList(),
                    Roles      = RoleRepository.PickList(boardRecord.Id)
                };

                viewModel.Name        = input.Name;
                viewModel.Description = input.Description;

                if (!string.IsNullOrEmpty(input.Category))
                {
                    viewModel.Categories.First(item => item.Value == input.Category).Selected = true;
                }

                return(await Task.Run(() => { return ForumViewResult.ViewResult(this, viewModel); }));
            }
        }
Exemple #2
0
        public IActionResult Edit(int id)
        {
            var boardRecord = BoardRepository.First(b => b.Id == id);
            var category    = BoardRepository.Categories.First(item => item.Id == boardRecord.CategoryId);

            var viewModel = new PageViewModels.EditPage {
                Id          = boardRecord.Id,
                Name        = boardRecord.Name,
                Description = boardRecord.Description,
                Categories  = BoardRepository.CategoryPickList(),
                Roles       = RoleRepository.PickList(boardRecord.Id),
            };

            viewModel.Categories.First(item => item.Text == category.Name).Selected = true;

            return(ForumViewResult.ViewResult(this, viewModel));
        }
Exemple #3
0
        public PageViewModels.EditPage GetEditPageModel(string id)
        {
            var role = RoleManager.FindByIdAsync(id).Result;

            if (role is null)
            {
                throw new HttpNotFoundError();
            }

            DataModels.ApplicationUser createdBy  = null;
            DataModels.ApplicationUser modifiedBy = null;

            if (role.CreatedById != null)
            {
                createdBy = UserManager.FindByIdAsync(role.CreatedById).Result;
            }

            if (role.ModifiedById != null)
            {
                modifiedBy = UserManager.FindByIdAsync(role.ModifiedById).Result;
            }

            var usersInRole = UserManager.GetUsersInRoleAsync(role.Name).Result;

            var viewModel = new PageViewModels.EditPage {
                Id            = role.Id,
                Description   = role.Description,
                Name          = role.Name,
                CreatedBy     = createdBy?.DecoratedName,
                Created       = role.CreatedDate,
                ModifiedBy    = modifiedBy?.DecoratedName,
                Modified      = role.ModifiedDate,
                NumberOfUsers = usersInRole.Count()
            };

            return(viewModel);
        }
Exemple #4
0
        public async Task <PageViewModels.EditPage> GetEditPageModel(string id)
        {
            var role = await RoleManager.FindByIdAsync(id);

            if (role is null)
            {
                throw new HttpNotFoundError();
            }

            DataModels.ApplicationUser createdBy  = null;
            DataModels.ApplicationUser modifiedBy = null;

            if (role.CreatedById != null)
            {
                createdBy = await UserManager.FindByIdAsync(role.CreatedById);
            }

            if (role.ModifiedById != null)
            {
                modifiedBy = await UserManager.FindByIdAsync(role.ModifiedById);
            }

            var usersInRole = await UserManager.GetUsersInRoleAsync(role.Name);

            var viewModel = new PageViewModels.EditPage {
                Id            = role.Id,
                Description   = role.Description,
                Name          = role.Name,
                CreatedBy     = createdBy?.DisplayName,
                Created       = role.CreatedDate.ToPassedTimeString(),
                ModifiedBy    = modifiedBy?.DisplayName,
                Modified      = role.ModifiedDate.ToPassedTimeString(),
                NumberOfUsers = usersInRole.Count()
            };

            return(viewModel);
        }