Typo3 Form Finisher

时间:2018-03-08 15:37:23

标签: forms typo3 typo3-8.x

您好我已经制作了一个表格修整器,但我有一些问题。 在BE我可以选择,但没有加载任何字段。

这里是BaseSetup.yaml的代码



TYPO3:
   CMS:
     Form:
       prototypes:
         standard:
           formElementsDefinition:
             Form:
               renderingOptions:
                 translation:
                   translationFile:
                     '10': 'EXT:form/Resources/Private/Language/locallang.xlf'
                     '20': 'EXT:formfinisher/Resources/Private/Language/locallang.xlf'
           finishersDefinition:
            EmailPdf:
              implementationClassName: 'IL\Formfinish\Domain\Finishers\EmailPdfFinisher'




这是Code FormEditorSetup.yaml



TYPO3:
  CMS:
    Form:
      ########### FORM MANAGER CONFIGURATION ###########
      formManager:
        translationFile:
          10: 'EXT:form/Resources/Private/Language/Database.xlf'
          20: 'EXT:formfinisher/Resources/Private/Language/Database.xlf'
      ########### FORMEDITOR CONFIGURATION ###########
      prototypes:
        standard:
          formEditor:
            translationFile:
              10: 'EXT:form/Resources/Private/Language/Database.xlf'
              20: 'EXT:formfinisher/Resources/Private/Language/Database.xlf'
          ########### DEFAULT FORM ELEMENT DEFINITIONS ###########
          formElementsDefinition:
            Form:
              formEditor:
                editors:
                  900:
                    selectOptions:
                      1491637029:
                        value: 'EmailPdf'
                        label: 'Email with Pdf'
                        
                propertyCollections:
                  finishers:
                    50:
                      identifier: 'EmailPdf'
                      editors:
                        __inheritances:
                          10: 'TYPO3.CMS.Form.mixins.formElementMixins.BaseCollectionEditorsMixin'
                        100:
                         label: 'Email with Pdf'
                        200:
                         identifier: 'subject'
                         templateName: 'Inspector-TextEditor'
                         label: 'formEditor.elements.Form.finisher.EmailToSender.editor.subject.label'
                         propertyPath: 'options.subject'
                         enableFormelementSelectionButton: true
                         propertyValidators:
                          10: 'NotEmpty'
                          20: 'FormElementIdentifierWithinCurlyBracesInclusive'
                        300:
                         identifier: 'pdfOrt'
                         templateName: 'Inspector-TextEditor'
                         label: 'Pdf Ort'
                         propertyPath: 'options.subject'
                         enableFormelementSelectionButton: true
                         propertyValidators:
                           10: 'NotEmpty'
                           20: 'FormElementIdentifierWithinCurlyBracesInclusive'
                        400:
                         identifier: 'pdfAddress'
                         templateName: 'Inspector-TextEditor'
                         label: 'Pdf Address'
                         propertyPath: 'options.subject'
                         enableFormelementSelectionButton: true
                         propertyValidators:
                           10: 'NotEmpty'
                           20: 'FormElementIdentifierWithinCurlyBracesInclusive'
                        500:
                         identifier: 'recipientAddress'
                         templateName: 'Inspector-TextEditor'
                         label: 'formEditor.elements.Form.finisher.EmailToSender.editor.recipientAddress.label'
                         propertyPath: 'options.recipientAddress'
                         enableFormelementSelectionButton: true
                         propertyValidatorsMode: 'OR'
                        propertyValidators:
                          10: 'NaiveEmail'
                          20: 'FormElementIdentifierWithinCurlyBracesExclusive'
                        fieldExplanationText: 'formEditor.elements.Form.finisher.EmailToSender.editor.recipientAddress.fieldExplanationText'
                        600:
                         identifier: 'recipientName'
                         templateName: 'Inspector-TextEditor'
                         label: 'formEditor.elements.Form.finisher.EmailToSender.editor.recipientName.label'
                         propertyPath: 'options.recipientName'
                         enableFormelementSelectionButton: true
                         propertyValidators:
                           10: 'FormElementIdentifierWithinCurlyBracesInclusive'
                         fieldExplanationText: 'formEditor.elements.Form.finisher.EmailToSender.editor.recipientName.fieldExplanationText'
                        700:
                         identifier: 'senderAddress'
                         templateName: 'Inspector-TextEditor'
                         label: 'formEditor.elements.Form.finisher.EmailToSender.editor.senderAddress.label'
                         propertyPath: 'options.senderAddress'
                         enableFormelementSelectionButton: true
                         propertyValidatorsMode: 'OR'
                         propertyValidators:
                           10: 'NaiveEmail'
                           20: 'FormElementIdentifierWithinCurlyBracesExclusive'
                         fieldExplanationText: 'formEditor.elements.Form.finisher.EmailToSender.editor.senderAddress.fieldExplanationText'
                        800:
                          identifier: 'senderName'
                          templateName: 'Inspector-TextEditor'
                          label: 'formEditor.elements.Form.finisher.EmailToSender.editor.senderName.label'
                          propertyPath: 'options.senderName'
                          enableFormelementSelectionButton: true
                          propertyValidators:
                            10: 'FormElementIdentifierWithinCurlyBracesInclusive'
                          fieldExplanationText: 'formEditor.elements.Form.finisher.EmailToSender.editor.senderName.fieldExplanationText'
                        900:
                         identifier: 'replyToAddress'
                         templateName: 'Inspector-TextEditor'
                         label: 'formEditor.elements.Form.finisher.EmailToSender.editor.replyToAddress.label'
                         propertyPath: 'options.replyToAddress'
                         enableFormelementSelectionButton: true
                         propertyValidatorsMode: 'OR'
                         propertyValidators:
                           10: 'NaiveEmailOrEmpty'
                           20: 'FormElementIdentifierWithinCurlyBracesExclusive'
                        1000:
                         identifier: 'carbonCopyAddress'
                         templateName: 'Inspector-TextEditor'
                         label: 'formEditor.elements.Form.finisher.EmailToSender.editor.carbonCopyAddress.label'
                         propertyPath: 'options.carbonCopyAddress'
                         enableFormelementSelectionButton: true
                         propertyValidatorsMode: 'OR'
                         propertyValidators:
                           10: 'NaiveEmailOrEmpty'
                           20: 'FormElementIdentifierWithinCurlyBracesExclusive'
                        1100:
                          identifier: 'blindCarbonCopyAddress'
                          templateName: 'Inspector-TextEditor'
                          label: 'formEditor.elements.Form.finisher.EmailToSender.editor.blindCarbonCopyAddress.label'
                          propertyPath: 'options.blindCarbonCopyAddress'
                          enableFormelementSelectionButton: true
                          propertyValidatorsMode: 'OR'
                          propertyValidators:
                            10: 'NaiveEmailOrEmpty'
                            20: 'FormElementIdentifierWithinCurlyBracesExclusive'
                        1200:
                          identifier: 'format'
                          templateName: 'Inspector-SingleSelectEditor'
                          label: 'formEditor.elements.Form.finisher.EmailToSender.editor.format.label'
                          propertyPath: 'options.format'
                          selectOptions:
                           10:
                             value: 'plaintext'
                             label: 'formEditor.elements.Form.finisher.EmailToSender.editor.format.1'
                           20:
                             value: 'html'
                             label: 'formEditor.elements.Form.finisher.EmailToSender.editor.format.2'
                        1300:
                          identifier: 'attachUploads'
                          templateName: 'Inspector-CheckboxEditor'
                          label: 'formEditor.elements.Form.finisher.EmailToSender.editor.attachUploads.label'
                          propertyPath: 'options.attachUploads'

          finishersDefinition:
                      EmailPdfFinisher:
                        formEditor:
                          iconIdentifier: 't3-form-icon-finisher'
                          label: 'A Label that seems to be never used...'
                          predefinedDefaults:
                            options:
                              subject: ''
                              pdfOrt: ''   
                              pdfAddress: ''
                              recipientAddress: ''
                              recipientName: ''
                              senderAddress: ''
                              senderName: ''
                              replyToAddress: ''
                              carbonCopyAddress: ''
                              blindCarbonCopyAddress: ''
                              format: 'html'
                              attachUploads: true




FormEnginSetup看起来像这样



TYPO3:
  CMS:
    Form:
      prototypes:
        standard:
          formEngine:
            translationFile:
              10: 'EXT:form/Resources/Private/Language/Database.xlf'
              20: 'EXT:formfinisher/Resources/Private/Language/Database.xlf'

          ### FINISHERS ###
          finishersDefinition:
            # Flexform
            EmailPdf:
              FormEngine:
               label: 'Pdf dings'
               elements:
                 subject:
                  label: 'tt_content.finishersDefinition.EmailToSender.subject.label'
                  config:
                     type: 'input'
                     eval: 'required'
                 recipientAddress:
                  label: 'tt_content.finishersDefinition.EmailToSender.recipientAddress.label'
                  config:
                    type: 'input'
                    eval: 'required'
                  recipientName:
                    label: 'tt_content.finishersDefinition.EmailToSender.recipientName.label'
                    config:
                      type: 'input'
                  senderAddress:
                    label: 'tt_content.finishersDefinition.EmailToSender.senderAddress.label'
                    config:
                      type: 'input'
                      eval: 'required'
                  senderName:
                    label: 'tt_content.finishersDefinition.EmailToSender.senderName.label'
                    config:
                      type: 'input'
                  pdfOrt:
                    label: 'Pdf Ort'
                    config:
                      type: 'input'
                      eval: 'required'
                  pdfAddress:
                    label: 'Pdf Address'
                    config:
                      type: 'input'
                      eval: 'required'
                  replyToAddress:
                    label: 'tt_content.finishersDefinition.EmailToSender.replyToAddress.label'
                    config:
                      type: 'input'
                  carbonCopyAddress:
                    label: 'tt_content.finishersDefinition.EmailToSender.carbonCopyAddress.label'
                    config:
                      type: 'input'
                  blindCarbonCopyAddress:
                    label: 'tt_content.finishersDefinition.EmailToSender.blindCarbonCopyAddress.label'
                    config:
                      type: 'input'
                  format:
                    label: 'tt_content.finishersDefinition.EmailToSender.format.label'
                    config:
                      type: select
                      renderType: 'selectSingle'
                      minitems: 1
                      maxitems: 1
                      size: 1
                      items:
                        10:
                         0: 'tt_content.finishersDefinition.EmailToSender.format.1'
                         1: 'html'
                        20:
                         0: 'tt_content.finishersDefinition.EmailToSender.format.2'
                         1: 'plaintext'




在前端我收到以下错误消息

由" EmailPdf"标识的装订器预设;找不到,或者没有指定implementationClassName。

1 个答案:

答案 0 :(得分:0)

我有一个类似的问题。 BE工作得很好,但是当我添加修整器时,de FE最终出错。

在我的情况下,FE打字稿未正确加载。您可以在模板->打字稿对象浏览器中进行检查。