TYPO3 - Расширение формы - класс для элемента формы - PullRequest
0 голосов
/ 15 марта 2019

В: Есть ли способ присвоения класса css элементу формы по умолчанию?

Я использую TYPO3 9.5.5 и PHP 7.2.
Пока у меня есть способ, но это скорее обходной путь, чем чистое решение ....

form.ts

plugin.tx_form.settings.yamlConfigurations {
  100 = EXT:skeleton/Configuration/YAML/CustomFormSetup.yaml
}

module.tx_form.settings.yamlConfigurations {
  100 = EXT:skeleton/Configuration/YAML/CustomFormSetup.yaml
}

CustomFormSetup.yaml

TYPO3:
  CMS:
    Form:
      persistenceManager:
        allowedExtensionPaths:
          20: EXT:skeleton/Resources/Private/Forms/
        allowSaveToExtensionPaths: true
        allowDeleteFromExtensionPaths: true

      prototypes:
        contactPrototype:
          __inheritances:
            10: TYPO3.CMS.Form.prototypes.standard
          formElementsDefinition:
            Form:
              renderingOptions:
                formClass: 'js-form'
                templateRootPaths:
                  100: 'EXT:skeleton/Resources/Private/Forms/Templates/'
                partialRootPaths:
                  100: 'EXT:skeleton/Resources/Private/Forms/Partials/'
                layoutRootPaths:
                  100: 'EXT:skeleton/Resources/Private/Forms/Layouts/'

Примечание: Я добавил свой собственный атрибут в TYPO3.CMS.Form.prototypes.contactPrototype.formElementsDefinition.Form.renderingOptions.formClass

Form.html Здесь я просто скопировалфайл Form.html по умолчанию из расширения формы и добавленный class="{form.renderingOptions.formClass}" к тегу formvh:form.

Это работает, но выглядит грязно, поскольку я хочу добавить класс по умолчанию

...