40 return $scriptObject->access() ? $scriptObject->main() : NULL;
53 if (class_exists(
'ext_update', FALSE)) {
55 'class ext_update for this run does already exist, requiring impossible',
61 if ($className ===
'') {
63 'Requested update script of extension does not exist',
80 if ($className !==
'') {
82 return $updater->access();
96 'EXT:' . $extensionKey .
'/class.ext_update.php',
99 if (!file_exists($updateScript)) {
106 if (!preg_match(
'/<\?php.*namespace\s+([^;]+);.*class/is', $scriptSourceCode, $matches)) {
108 $className =
'ext_update' . md5($extensionKey . $scriptSourceCode);
109 $temporaryFileName = PATH_site .
'typo3temp/ExtensionManager/UpdateScripts/' . $className .
'.php';
111 $scriptSourceCode = preg_replace(
'/^\s*class\s+ext_update\s+/m',
'class ' . $className .
' ', $scriptSourceCode);
114 $updateScript = $temporaryFileName;
116 $className = $matches[1] .
'\ext_update';
118 include_once $updateScript;
119 if (!class_exists($className, FALSE)) {
121 sprintf(
'class.ext_update.php of extension "%s" did not declare ext_update class', $extensionKey),
requireUpdateScript($extensionKey)
checkUpdateScriptExists($extensionKey)
static writeFileToTypo3tempDir($filepath, $content)
static makeInstance($className)
static getUrl($url, $includeHeader=0, $requestHeaders=FALSE, &$report=NULL)
executeUpdateIfNeeded($extensionKey)
determineUpdateClassName($extensionKey)
static getFileAbsFileName($filename, $onlyRelative=TRUE, $relToTYPO3_mainDir=FALSE)