public async Task <IActionResult> CreateFolder(
            string path, string name,
            [FromServices] IAuthorizationService authorizationService)
        {
            if (!await authorizationService.AuthorizeAsync(User, Permissions.ManageOwnMedia))
            {
                return(Unauthorized());
            }

            if (string.IsNullOrEmpty(path))
            {
                path = "";
            }

            var mediaFolder = await _mediaFileStore.GetFolderAsync(path);

            if (mediaFolder == null || !mediaFolder.IsDirectory)
            {
                return(StatusCode(StatusCodes.Status404NotFound, "Cannot find path"));
            }

            var newPath = _mediaFileStore.Combine(path, name);

            mediaFolder = await _mediaFileStore.GetFolderAsync(newPath);

            if (mediaFolder != null)
            {
                return(StatusCode(StatusCodes.Status403Forbidden, "Folder already exists"));
            }

            await _mediaFileStore.TryCreateFolderAsync(newPath);

            mediaFolder = await _mediaFileStore.GetFolderAsync(newPath);

            return(Json(mediaFolder));
        }