protected function expireCache($status, $tableName, $recordId, array $databaseData)
{
if ($status === 'update' && $tableName === 'pages' || $tableName === 'pages_language_overlay') {
if ($tableName == 'pages') {
$languageId = 0;
$pageId = $recordId;
} else {
$fullRecord = BackendUtility::getRecord($tableName, $recordId);
$pageId = $fullRecord['pid'];
$languageId = $fullRecord['sys_language_uid'];
unset($fullRecord);
}
$expireCache = FALSE;
if (isset($databaseData['hidden'])) {
$expireCache = TRUE;
} else {
foreach (EncodeDecoderBase::$pageTitleFields as $fieldName) {
if (isset($databaseData[$fieldName])) {
$expireCache = TRUE;
break;
}
}
}
if ($expireCache) {
$this->expireCachesForPageAndSubpages($pageId, $languageId);
}
}
}