[TYPO3-core] RFC #16334: Make FlexForms editable via TSConfig and group access lists

Ernesto Baschny [cron IT] ernst at cron-it.de
Wed Nov 17 09:01:53 CET 2010


Hi Kai,

this feature is really amazing! Especially the part of manipulating the
definitions of Flexform using the regular "TCEFORM" syntax in PageTS =>
fantastic!

+1 by reading and testing.

Attached is a slightly modified patch according to our CGL, but the code
was already very beautiful: We decided to use single spaces and include
the $varname in the phpdoc @param.

After discussing yesterday with Kai and Steffen, we also need an Upgrade
Wizard for this:

The flexform fields waren't "excluded" until now. Several extensions
flexform.xml definition which <excluded>1</excluded>, which wasn't being
applied until this patch. As soon as an user upgrades, their users won't
be able to see those fields anymore, since they have to be excplicitly
activated in the ACL (like any other exclude field...).

Thus the Upgrade Wizard should go through the user+group list and add
the flexform fields. The admin can then remove them at wish from the ACL
definition.

Cheers,
Ernesto

Kai Vogel schrieb am 16.11.2010 22:23:
> Hi Jeff, hi Ernesto,
> 
> now I've implemented your suggestions. You can find a new patch attached.
> 
> 
> What is new:
> ------------------------
> 1. Allowed Exclude Fields are now reversed and work correctly
> 
> 2. Only fields with an enabled exclude-tag are listed in Allowed Exclude
> Fields
> 
> 3. The fields are now prefixed with the title of the FlexForm field
>    (e.g.: Plugin Options: News: What to display)
> 
> 4. The patch is now able to handle multiple FlexForms for one extension
> 
> 5. Now all fields from type "flex" will be parsed, not only pi_flexform
> 
> 6. All determination and remapping of the extension key is gone
> 
> 
> New syntax:
> ------------------------
> TCEFORM.[table].[flex-field].[DS-key].[sheet-name].[field-name]
> 
> [table]      : The content table ($TYPO3_CONF_VARS['SYS']['contentTable'])
> 
> [flex-field] : Name of the field which contains the FlexForms (pi_flexform)
> 
> [DS-key]     : FlexForm-DS-Key ("pt_list_pi1,list" => "pt_list_pi1" and
> ",media" => "media")
> 
> [sheet-name] : Name of the desired FlexForm sheet
> 
> [field-name] : Name of the desired FlexForm field
> 
> 
> New example TSConfig:
> ------------------------
> TCEFORM.tt_content.pi_flexform {
> 
>   ## Plugin: tt_news (DS-key: 9,list)
>   9 {
> 
>     ## Remove some view types
>     sDEF.what_to_display {
>       removeItems = LIST2,LIST3,HEADER_LIST,SINGLE2,VERSION_PREVIEW
>     }
> 
>     ## Remove complete template-tab
>     s_template {
>       disabled = 1
>     }
> 
>   }
> 
> }
> 
> 
> Best regards

-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: editable_flexforms-core-v3.diff
URL: <http://lists.typo3.org/pipermail/typo3-team-core/attachments/20101117/2ae1349c/attachment.asc>


More information about the TYPO3-team-core mailing list