Exemplo n.º 1
0
        public async Task <IActionResult> DissolveGroup([Required] string groupName)
        {
            var user = await GetKahlaUser();

            var group = await _ownerChecker.FindMyOwnedGroupAsync(groupName, user.Id);

            await group.ForEachUserAsync((eachUser, relation) => _pusher.DissolveEvent(eachUser, group.Id), _userManager);

            _dbContext.GroupConversations.Remove(group);
            await _dbContext.SaveChangesAsync();

            return(this.Protocol(ErrorType.Success, $"Successfully dissolved the group '{groupName}'!"));
        }
Exemplo n.º 2
0
        public async Task <IActionResult> DissolveGroup([Required] string groupName)
        {
            var user = await GetKahlaUser();

            var group = await _ownerChecker.FindMyOwnedGroupAsync(groupName, user.Id);

            await group.ForEachUserAsync((eachUser, relation) => _pusher.DissolveEvent(eachUser, group.Id));

            _dbContext.GroupConversations.Remove(group);
            await _dbContext.SaveChangesAsync();

            var token = await _appsContainer.AccessToken();

            var siteName = _configuration["UserFilesSiteName"];
            await _foldersService.DeleteFolderAsync(token, siteName, $"conversation-{group.Id}");

            return(this.Protocol(ErrorType.Success, $"Successfully dissolved the group '{groupName}'!"));
        }