start([], []); $dataHandler->clear_cacheCmd('pages'); $languageService = $this->getLanguageService(); return new JsonResponse([ 'success' => true, 'title' => $languageService->sL('core.cache:notification.group.pages.success.title'), 'message' => $languageService->sL('core.cache:notification.group.pages.success.message'), ]); } public function flushCacheGroupAllAction(ServerRequestInterface $request): ResponseInterface { $dataHandler = GeneralUtility::makeInstance(DataHandler::class); $dataHandler->start([], []); $dataHandler->clear_cacheCmd('all'); $languageService = $this->getLanguageService(); return new JsonResponse([ 'success' => true, 'title' => $languageService->sL('core.cache:notification.group.all.success.title'), 'message' => $languageService->sL('core.cache:notification.group.all.success.message'), ]); } public function flushCachePageAction(ServerRequestInterface $request): ResponseInterface { $parsedBody = $request->getParsedBody(); $pageUid = (int)($parsedBody['id'] ?? 0); $languageService = $this->getLanguageService(); $permissionClause = $this->getBackendUser()->getPagePermsClause(Permission::PAGE_SHOW); $pageRow = BackendUtility::readPageAccess($pageUid, $permissionClause); if ($pageUid !== 0 && $this->getBackendUser()->doesUserHaveAccess($pageRow, Permission::PAGE_SHOW)) { $dataHandler = GeneralUtility::makeInstance(DataHandler::class); $dataHandler->start([], []); $dataHandler->clear_cacheCmd($pageUid); return new JsonResponse([ 'success' => true, 'title' => $languageService->sL('core.cache:notification.page.success.title'), 'message' => sprintf($languageService->sL('core.cache:notification.page.success.message'), BackendUtility::getRecordTitle('pages', $pageRow)), ]); } return new JsonResponse([ 'success' => false, 'title' => $languageService->sL('core.cache:notification.page.error.title'), 'message' => $languageService->sL('core.cache:notification.page.error.message'), ]); } protected function getBackendUser(): BackendUserAuthentication { return $GLOBALS['BE_USER']; } protected function getLanguageService(): LanguageService { return $GLOBALS['LANG']; } }