예제 #1
0
        public virtual async Task <ActionResult> Delete(DeleteUserAccountViewModel model)
        {
            var user = UserService.FindByUsername(model.AccountName);

            if (user == null || user.IsDeleted)
            {
                return(View("DeleteUserAccountStatus", new DeleteUserAccountStatus()
                {
                    AccountName = model.AccountName,
                    Description = $"Account {model.AccountName} not found.",
                    Success = false
                }));
            }
            else
            {
                var admin  = GetCurrentUser();
                var status = await _deleteAccountService.DeleteGalleryUserAccountAsync(user, admin, model.Signature, model.ShouldUnlist, commitAsTransaction : true);

                return(View("DeleteUserAccountStatus", status));
            }
        }
예제 #2
0
        public virtual ActionResult Delete(string accountName)
        {
            var user = _userService.FindByUsername(accountName);

            if (user == null || user.IsDeleted || (user is Organization))
            {
                return(HttpNotFound("User not found."));
            }

            var listPackageItems = _packageService
                                   .FindPackagesByAnyMatchingOwner(user, includeUnlisted: true)
                                   .Select(p => new ListPackageItemViewModel(p))
                                   .ToList();
            var model = new DeleteUserAccountViewModel
            {
                Packages    = listPackageItems,
                User        = user,
                AccountName = user.Username,
            };

            return(View("DeleteUserAccount", model));
        }