• Christian Kuhn's avatar
    [!!!][FEATURE] FormEngine: The extendables · 0ee65b8f
    Christian Kuhn authored and Anja Leichsenring's avatar Anja Leichsenring committed
    For details, see the ReST files with examples for new API
    and TCA changes.
    
    * Split TCA config "type" to "type" and "renderType":
      TCA config "type" is a technical debt since it both defines the
      database storage as well as the widget that is used to render
      a certain field in FormEngine. While "type" is kept, the
      render widget is now extracted to a "renderType".
    
    * t3editor uses this "renderType" now. type=text with
      renderType=t3editor will call the new T3editorElement provided
      by ext:t3editor, and falls back to TextElement if t3editor is
      not loaded.
    
    * t3editor is now enabled for "setup" and "constants" of
      sys_template records if opening the whole record.
    
    * t3editor now works when configured in a flex form.
    
    * Introduce an API in FormEngine NodeFactory to register new
      renderType, used by t3editor.
    
    * Introduce a resolver API in FormEngine NodeFactory to change
      the class that renders a widget or container.
    
    * Split TextElement into TextElement that only renders a textarea
      and RichTextElement provided by ext:rtehtmlarea that renders RTE.
      ext:rtehtmlarea uses the new resolver API to route rendering to
      its own class in case RTE is enabled and configured for a field.
    
    * In TCA section "types" a new array "columnsOverrides" is
      introduced that allows overwriting some column configurations
      of fields. Currently, this works for some View/FormEngine related
      settings like renderType and defaultExtras.
    
    * TCA Migration is introduced to dynamically rewrite TCA before
      it is put into cache.
    
    * TCA migration is called a second time in ext:compatibility6 in
      case TCA is still registered via ext_tables.php. This has performance
      penalty since it is done on every frontend and backend call.
    
    * TCA migration is also called dynamically for flex form definitions.
    
    * TCA migration moves configured t3editor wizards to type=text with
      renderType=t3editor.
    
    * TCA migration removes the 5th parameter "style pointer" from
      types showitem
    
    * TCA migration moves the 4th showitem parameter "extra configuration"
      to "defaultExtras" of "columnsOverrides" of given TCA type.
    
    Change-Id: Ia2c2bc16463a01021c7a6be765b4efa872a130fd
    Resolves: #67229
    Releases: master
    Reviewed-on: http://review.typo3.org/39662
    
    Reviewed-by: Christian Kuhn's avatarChristian Kuhn <lolli@schwarzbu.ch>
    Tested-by: Christian Kuhn's avatarChristian Kuhn <lolli@schwarzbu.ch>
    Reviewed-by: default avatarFrank Nägler <typo3@naegler.net>
    Tested-by: default avatarFrank Nägler <typo3@naegler.net>
    Reviewed-by: Markus Klein's avatarMarkus Klein <markus.klein@typo3.org>
    Tested-by: Markus Klein's avatarMarkus Klein <markus.klein@typo3.org>
    Reviewed-by: Anja Leichsenring's avatarAnja Leichsenring <aleichsenring@ab-softlab.de>
    Tested-by: Anja Leichsenring's avatarAnja Leichsenring <aleichsenring@ab-softlab.de>
    0ee65b8f