Skip to content

Latest commit

 

History

History
531 lines (411 loc) · 14.9 KB

typo3-fractor-rules.md

File metadata and controls

531 lines (411 loc) · 14.9 KB

24 Rules Overview

AbstractMessageGetSeverityFluidFractor

Migrate to severity property 'value'

-<div class="{severityClassMapping.{status.severity}}">
+<div class="{severityClassMapping.{status.severity.value}}">
     <!-- stuff happens here -->
 </div>

EmailFinisherYamlFractor

Convert single recipient values to array for EmailFinisher

 finishers:
   -
     options:
-      recipientAddress: bar@domain.com
-      recipientName: 'Bar'
+      recipients:
+        bar@domain.com: 'Bar'

MigrateEmailFlagToEmailTypeFlexFormFractor

Migrate email flag to email type

 <T3DataStructure>
     <sheets>
         <sDEF>
             <ROOT>
                 <sheetTitle>Sheet Title</sheetTitle>
                 <type>array</type>
                 <el>
                     <email_field>
                         <config>
-                            <type>input</type>
-                            <eval>trim,email</eval>
-                            <max>255</max>
+                            <type>email</type>
                         </config>
                     </email_field>
                 </el>
             </ROOT>
         </sDEF>
     </sheets>
 </T3DataStructure>

MigrateEvalIntAndDouble2ToTypeNumberFlexFormFractor

Migrate eval int and double2 to type number

 <T3DataStructure>
     <sheets>
         <sDEF>
             <ROOT>
                 <sheetTitle>Sheet Title</sheetTitle>
                 <type>array</type>
                 <el>
                     <int_field>
                         <label>int field</label>
                         <config>
-                            <type>input</type>
-                            <eval>int</eval>
+                            <type>number</type>
                         </config>
                     </int_field>
                     <double2_field>
                         <label>double2 field</label>
                         <config>
-                            <type>input</type>
-                            <eval>double2</eval>
+                            <type>number</type>
+                            <format>decimal</format>
                         </config>
                     </double2_field>
                 </el>
             </ROOT>
         </sDEF>
     </sheets>
 </T3DataStructure>

MigrateInternalTypeFolderToTypeFolderFlexFormFractor

Migrates TCA internal_type into new new TCA type folder

 <T3DataStructure>
     <sheets>
         <sDEF>
             <ROOT>
                 <sheetTitle>Sheet Title</sheetTitle>
                 <type>array</type>
                 <el>
                     <aColumn>
                         <config>
-                            <type>group</type>
-                            <internal_type>folder</internal_type>
+                            <type>folder</type>
                         </config>
                     </aColumn>
                 </el>
             </ROOT>
         </sDEF>
     </sheets>
 </T3DataStructure>

MigrateNullFlagFlexFormFractor

Migrate null flag

 <T3DataStructure>
     <sheets>
         <sDEF>
             <ROOT>
                 <sheetTitle>Sheet Title</sheetTitle>
                 <type>array</type>
                 <el>
                     <aFlexField>
                         <config>
-                            <eval>null</eval>
+                            <nullable>true</nullable>
                         </config>
                     </aFlexField>
                 </el>
             </ROOT>
         </sDEF>
     </sheets>
 </T3DataStructure>

MigratePasswordAndSaltedPasswordToPasswordTypeFlexFormFractor

Migrate password and salted password to password type

 <T3DataStructure>
     <sheets>
         <sDEF>
             <ROOT>
                 <sheetTitle>Sheet Title</sheetTitle>
                 <type>array</type>
                 <el>
                     <password_field>
                         <config>
-                            <type>input</type>
-                            <eval>trim,password,saltedPassword</eval>
+                            <type>password</type>
                         </config>
                     </password_field>
                     <another_password_field>
                         <config>
-                            <type>input</type>
-                            <eval>trim,password</eval>
+                            <type>password</type>
+                            <hashed>false</hashed>
                         </config>
                     </another_password_field>
                 </el>
             </ROOT>
         </sDEF>
     </sheets>
 </T3DataStructure>

MigrateRenderTypeColorpickerToTypeColorFlexFormFractor

Migrate renderType colorpicker to type color

 <T3DataStructure>
     <sheets>
         <sDEF>
             <ROOT>
                 <sheetTitle>Sheet Title</sheetTitle>
                 <type>array</type>
                 <el>
                     <a_color_field>
                         <config>
-                            <type>input</type>
-                            <renderType>colorpicker</renderType>
+                            <type>color</type>
                             <required>1</required>
                             <size>20</size>
-                            <max>1234</max>
-                            <eval>trim,null</eval>
                             <valuePicker>
                                 <items type="array">
                                     <numIndex index="0" type="array">
                                         <numIndex index="0">typo3 orange</numIndex>
                                         <numIndex index="1">#FF8700</numIndex>
                                     </numIndex>
                                 </items>
                             </valuePicker>
                         </config>
                     </a_color_field>
                 </el>
             </ROOT>
         </sDEF>
     </sheets>
 </T3DataStructure>

MigrateRequiredFlagFlexFormFractor

Migrate required flag

 <T3DataStructure>
     <sheets>
         <sDEF>
             <ROOT>
                 <sheetTitle>Sheet Title</sheetTitle>
                 <type>array</type>
                 <el>
                     <aColumn>
                         <config>
-                            <eval>trim,required</eval>
+                            <eval>trim</eval>
+                            <required>1</required>
                         </config>
                     </aColumn>
                 </el>
             </ROOT>
         </sDEF>
     </sheets>
 </T3DataStructure>

MigrateTypeNoneColsToSizeFlexFormFractor

Migrates option cols to size for TCA type none

 <T3DataStructure>
     <sheets>
         <sDEF>
             <ROOT>
                 <sheetTitle>Sheet Title</sheetTitle>
                 <type>array</type>
                 <el>
                     <aColumn>
                         <config>
                             <type>none</type>
-                            <cols>20</cols>
+                            <size>20</size>
                         </config>
                     </aColumn>
                 </el>
             </ROOT>
         </sDEF>
     </sheets>
 </T3DataStructure>

RemoveConfigDisablePageExternalUrlFractor

Remove config.disablePageExternalUrl

-config.disablePageExternalUrl = 1
+-

RemoveConfigDoctypeSwitchFractor

Remove config.doctypeSwitch

-config.doctypeSwitch = 1
+-

RemoveConfigMetaCharsetFractor

Remove config.metaCharset

-config.metaCharset = 1
+-

RemoveConfigSendCacheHeadersOnlyWhenLoginDeniedInBranchFractor

Remove config.sendCacheHeaders_onlyWhenLoginDeniedInBranch

-config.sendCacheHeaders_onlyWhenLoginDeniedInBranch = 1
+-

RemoveConfigSpamProtectEmailAddressesAsciiOptionFractor

Remove config.spamProtectEmailAddresses with option ascii

-config.spamProtectEmailAddresses = ascii
+-

RemoveNewContentElementWizardOptionsFractor

Remove TSConfig mod.web_layout.disableNewContentElementWizard and mod.newContentElementWizard.override

-mod.web_layout.disableNewContentElementWizard = 1
-mod.newContentElementWizard.override = 1
+-

RemoveNoCacheHashAndUseCacheHashAttributeFluidFractor

Remove noCacheHash="1" and useCacheHash="1" attribute

-<f:link.page noCacheHash="1">Link</f:link.page>
-<f:link.typolink useCacheHash="1">Link</f:link.typolink>
+<f:link.page>Link</f:link.page>
+<f:link.typolink>Link</f:link.typolink>

RemoveTceFormsDomElementFlexFormFractor

Remove TCEForms key from all elements in data structure

 <T3DataStructure>
     <ROOT>
-        <TCEforms>
-            <sheetTitle>aTitle</sheetTitle>
-        </TCEforms>
+        <sheetTitle>aTitle</sheetTitle>
         <type>array</type>
         <el>
             <aFlexField>
-                <TCEforms>
-                    <label>aFlexFieldLabel</label>
-                    <config>
-                        <type>input</type>
-                    </config>
-                </TCEforms>
+                <label>aFlexFieldLabel</label>
+                <config>
+                    <type>input</type>
+                </config>
             </aFlexField>
         </el>
     </ROOT>
 </T3DataStructure>

RemoveUseCacheHashFromTypolinkTypoScriptFractor

Remove useCacheHash TypoScript setting

 typolink {
     parameter = 3
-    useCacheHash = 1
 }

RemoveWorkspaceModeOptionsFractor

Remove TSConfig options.workspaces.swapMode and options.workspaces.changeStageMode

-options.workspaces.swapMode = any
-options.workspaces.changeStageMode = any
+-

RenameConfigXhtmlDoctypeToDoctypeFractor

Migrate typoscript xhtmlDoctype to doctype

-config.xhtmlDoctype = 1
+config.doctype = 1

RenameTcemainLinkHandlerMailKeyFractor

Rename key mail to email for MailLinkHandler

 TCEMAIN.linkHandler {
-    mail {
+    email {
         handler = TYPO3\\CMS\\Recordlist\\LinkHandler\\MailLinkHandler
         label = LLL:EXT:recordlist/Resources/Private/Language/locallang_browse_links.xlf:email
         displayAfter = page,file,folder,url
         scanBefore = url
     }
 }

TranslationFileYamlFractor

Use key translationFiles instead of translationFile

 TYPO3:
   CMS:
     Form:
       prototypes:
         standard:
           formElementsDefinition:
             Form:
               renderingOptions:
                 translation:
-                  translationFile:
-                    10: 'EXT:form/Resources/Private/Language/locallang.xlf'
+                  translationFiles:
                     20: 'EXT:myextension/Resources/Private/Language/locallang.xlf'

UseConfigArrayForTSFEPropertiesFractor

Use config array in TSFE instead of deprecated class properties

-page.10.data = TSFE:fileTarget
+page.10.data = TSFE:config|config|fileTarget