getQueryBuilderForTable('sys_template'); $queryBuilder->getRestrictions()->removeAll(); $elementCount = $queryBuilder->count('uid') ->from('sys_template') ->where( $queryBuilder->expr()->orX( $queryBuilder->expr()->like( 'constants', $queryBuilder->createNamedParameter('%EXT:fluid_styled_content/Configuration/TypoScript/Static%', \PDO::PARAM_STR) ), $queryBuilder->expr()->like( 'config', $queryBuilder->createNamedParameter('%EXT:fluid_styled_content/Configuration/TypoScript/Static%', \PDO::PARAM_STR) ), $queryBuilder->expr()->like( 'include_static_file', $queryBuilder->createNamedParameter('%EXT:fluid_styled_content/Configuration/TypoScript/Static%', \PDO::PARAM_STR) ) ) ) ->execute()->fetchColumn(0); return (bool)$elementCount; } /** * @return string[] All new fields and tables must exist */ public function getPrerequisites(): array { return [ DatabaseUpdatedPrerequisite::class ]; } /** * Performs the database update * * @return bool */ public function executeUpdate(): bool { $connection = GeneralUtility::makeInstance(ConnectionPool::class)->getConnectionForTable('sys_template'); $queryBuilder = $connection->createQueryBuilder(); $queryBuilder->getRestrictions()->removeAll(); $statement = $queryBuilder->select('uid', 'include_static_file', 'constants', 'config') ->from('sys_template') ->where( $queryBuilder->expr()->orX( $queryBuilder->expr()->like( 'constants', $queryBuilder->createNamedParameter('%EXT:fluid_styled_content/Configuration/TypoScript/Static%', \PDO::PARAM_STR) ), $queryBuilder->expr()->like( 'config', $queryBuilder->createNamedParameter('%EXT:fluid_styled_content/Configuration/TypoScript/Static%', \PDO::PARAM_STR) ), $queryBuilder->expr()->like( 'include_static_file', $queryBuilder->createNamedParameter('%EXT:fluid_styled_content/Configuration/TypoScript/Static%', \PDO::PARAM_STR) ) ) ) ->execute(); while ($record = $statement->fetch()) { $search = 'EXT:fluid_styled_content/Configuration/TypoScript/Static'; $replace = 'EXT:fluid_styled_content/Configuration/TypoScript'; $record['include_static_file'] = str_replace($search, $replace, $record['include_static_file']); $record['constants'] = str_replace($search, $replace, $record['constants']); $record['config'] = str_replace($search, $replace, $record['config']); $queryBuilder = $connection->createQueryBuilder(); $queryBuilder->update('sys_template') ->where( $queryBuilder->expr()->eq( 'uid', $queryBuilder->createNamedParameter($record['uid'], \PDO::PARAM_INT) ) ) ->set('include_static_file', $record['include_static_file']) ->set('constants', $record['constants']) ->set('config', $record['config']); $queryBuilder->execute(); } return true; } }