Example #1
0
        public async Task <IActionResult> DeleteFolder(DeleteFolderViewModel model)
        {
            var user = await GetCurrentUserAsync();

            var app = await _dbContext.Apps.FindAsync(model.AppId);

            if (app == null)
            {
                return(NotFound());
            }
            if (app.CreatorId != user.Id)
            {
                return(Unauthorized());
            }
            if (!ModelState.IsValid)
            {
                model.Recover(user, app.AppName);
                return(View(model));
            }
            try
            {
                var token = await _appsContainer.AccessToken(app.AppId, app.AppSecret);

                await _foldersService.DeleteFolderAsync(token, model.SiteName, model.Path);

                return(RedirectToAction(nameof(ViewFiles), new { appId = model.AppId, siteName = model.SiteName, path = model.Path.DetachPath() }));
            }
            catch (AiurUnexpectedResponse e)
            {
                ModelState.AddModelError(string.Empty, e.Response.Message);
                model.Recover(user, app.AppName);
                return(View(model));
            }
        }
        public async Task <IActionResult> DeleteFolder([FromRoute] string path)
        {
            var user = await GetCurrentUserAsync();

            var model = new DeleteFolderViewModel(user)
            {
                Path = path
            };

            return(View(model));
        }
Example #3
0
        public async Task <IActionResult> DeleteFolder(DeleteFolderViewModel model)
        {
            var user = await GetCurrentUserAsync();

            if (!ModelState.IsValid)
            {
                model.Recover(user);
                return(View(model));
            }
            try
            {
                await _foldersService.DeleteFolderAsync(await AccessToken, user.SiteName, model.Path);

                return(RedirectToAction(nameof(ViewFiles), new { path = model.Path.DetachPath() }));
            }
            catch (AiurUnexpectedResponse e)
            {
                ModelState.AddModelError(string.Empty, e.Response.Message);
                model.Recover(user);
                return(View(model));
            }
        }
Example #4
0
        public async Task <IActionResult> DeleteFolder([FromRoute] string appId, [FromRoute] string siteName, [FromRoute] string path)
        {
            var user = await GetCurrentUserAsync();

            var app = await _dbContext.Apps.FindAsync(appId);

            if (app == null)
            {
                return(NotFound());
            }
            if (app.CreatorId != user.Id)
            {
                return(Unauthorized());
            }
            var model = new DeleteFolderViewModel(user)
            {
                AppId    = appId,
                SiteName = siteName,
                Path     = path,
                AppName  = app.AppName
            };

            return(View(model));
        }