Using 6.2-dev: You are fine, dont worry.
If you are upgrading flux to the current git master on typo3 6.0 or 6.1 you will currently break your installation. This is because of a bug in typo3:
http://forge.typo3.org/issues/54115
##You have 2 ways to fix this: The preferred and recommended way to fix this problem is to replace code in your templatefiles. We provide a script for that.
The second way to fix it, is a core hack in the source of TYPO3. We provide you a link at the bottom of this page. (see headline Core Hack).
Change every occurence of (see script - no need to do that by hand)
{namespace flux=Tx_Flux_ViewHelpers}to{namespace flux=FluidTYPO3\Flux\ViewHelpers}flux:flexformtoflux:formflux:flexform.gridtoflux:gridflux:flexform.grid.columntoflux:grid.columnflux:flexform.grid.rowtoflux:grid.rowflux:flexform.containertoflux:form.containerflux:flexform.datatoflux:form.dataflux:flexform.objecttoflux:form.objectflux:flexform.sectiontoflux:form.sectionflux:flexform.sheettoflux:form.sheetflux:flexform.field.wizard.addtoflux:wizard.addflux:flexform.field.wizard.colorPickertoflux:wizard.colorPickerflux:flexform.field.wizard.edittoflux:wizard.editflux:flexform.field.wizard.linktoflux:wizard.linkflux:flexform.field.wizard.listtoflux:wizard.listflux:flexform.field.wizard.selecttoflux:wizard.selectflux:flexform.field.wizard.slidertoflux:wizard.sliderflux:flexform.field.wizard.suggesttoflux:wizard.suggestflux:flexform.field.checkboxtoflux:field.checkboxflux:flexform.field.controllerActionstoflux:field.controllerActionsflux:flexform.field.customtoflux:field.customflux:flexform.field.filetoflux:field.fileflux:flexform.field.inlinetoflux:field.inlineflux:flexform.field.inline.faltoflux:field.inline.falflux:flexform.field.inputtoflux:field.inputflux:flexform.field.relationtoflux:field.relationflux:flexform.field.selecttoflux:field.selectflux:flexform.field.texttoflux:field.textflux:flexform.field.treetoflux:field.treeflux:flexform.field.userFunctoflux:field.userFuncflux:flexform.contenttoflux:form.content
This can be done automatically using the following script:
Use at your own risk, change $directory
<?php
$directory = '/Users/danilo/Sites/hmspl/typo3conf/ext/';
$replaceNamespaces = array(
'{namespace flux=Tx_Flux_ViewHelpers}' => '{namespace flux=FluidTYPO3\Flux\ViewHelpers}',
);
$replaceViewHelpers = array(
'flux:flexform' => 'flux:form',
'flux:flexform.grid' => 'flux:grid',
'flux:flexform.grid.column' => 'flux:grid.column',
'flux:flexform.grid.row' => 'flux:grid.row',
'flux:flexform.container' => 'flux:form.container',
'flux:flexform.data' => 'flux:form.data',
'flux:flexform.object' => 'flux:form.object',
'flux:flexform.section' => 'flux:form.section',
'flux:flexform.sheet' => 'flux:form.sheet',
'flux:flexform.field.wizard.add' => 'flux:wizard.add',
'flux:flexform.field.wizard.colorPicker' => 'flux:wizard.colorPicker',
'flux:flexform.field.wizard.edit' => 'flux:wizard.edit',
'flux:flexform.field.wizard.link' => 'flux:wizard.link',
'flux:flexform.field.wizard.list' => 'flux:wizard.list',
'flux:flexform.field.wizard.select' => 'flux:wizard.select',
'flux:flexform.field.wizard.slider' => 'flux:wizard.slider',
'flux:flexform.field.wizard.suggest' => 'flux:wizard.suggest',
'flux:flexform.field.checkbox' => 'flux:field.checkbox',
'flux:flexform.field.controllerActions' => 'flux:field.controllerActions',
'flux:flexform.field.custom' => 'flux:field.custom',
'flux:flexform.field.file' => 'flux:field.file',
'flux:flexform.field.inline' => 'flux:field.inline',
'flux:flexform.field.inline.fal' => 'flux:field.inline.fal',
'flux:flexform.field.input' => 'flux:field.input',
'flux:flexform.field.relation' => 'flux:field.relation',
'flux:flexform.field.select' => 'flux:field.select',
'flux:flexform.field.text' => 'flux:field.text',
'flux:flexform.field.tree' => 'flux:field.tree',
'flux:flexform.field.userFunc' => 'flux:field.userFunc',
'flux:flexform.content' => 'flux:form.content',
);
die('MAKE A DAMN BACKUP, YOU COWBOY!' . PHP_EOL);
$dir = new RecursiveDirectoryIterator($directory);
$ite = new RecursiveIteratorIterator($dir);
foreach($ite as $file) {
if ('html' !== $file->getExtension()) {
continue;
}
$content = file_get_contents($file->getPathname());
$hasNamespace = FALSE;
foreach ($replaceNamespaces as $oldNamespace => $newNamespace) {
if (FALSE === strpos($content, $oldNamespace)) {
continue;
}
$hasNamespace = TRUE;
$content = str_replace($oldNamespace, $newNamespace, $content);
}
if (FALSE === $hasNamespace) {
continue;
}
foreach ($replaceViewHelpers as $oldViewHelper => $newViewHelper) {
$newViewHelper = str_replace('$', '\\$', $newViewHelper);
$content = preg_replace('/<(\/?)' . preg_quote($oldViewHelper) . '([\s\/>])/', '<$1' . $newViewHelper . '$2', $content);
}
file_put_contents($file->getPathname(), $content);
print_r('Modified ' . $file->getFilename() . PHP_EOL);
}
?>Change 1 line of code:
https://review.typo3.org/#/c/25814/9/typo3/sysext/fluid/Classes/Core/Parser/TemplateParser.php
You are pretty safe to do that, as the change will be backported to 6.0 and 6.1 on the next release.