Parcourir la source

add additional field to ce extra-infosbox and make something optional

ksieren il y a 2 ans
Parent
commit
a89ff77794

+ 19 - 6
Classes/Hooks/TCE/TCEMainHook.php

@@ -1608,17 +1608,30 @@ class TCEMainHook
           }
         }
 
+        $data = [];
         foreach($cleaned as $k => $val) {
-          foreach($val as $field) {
-            if(empty($field)) unset($cleaned[$k]);
+          foreach($val as $field => $value) {
+            if(isset($value) && !empty($value)) {
+              $data[$k][$field] = $value;
+            }
+            else {
+              continue;
+            }
           }
+
         }
 
-        foreach($cleaned as $key => $value) {
+        foreach($data as $key => $value) {
           $box = $this->createContentElement("boxwrapper");
-          $box["subElements"] = array_merge($box["subElements"], $this->checkText($value['headline'], $dbReference, $processedData, "h3"));
-          $box["subElements"] = array_merge($box["subElements"], $this->checkText($value['text'], $dbReference, $processedData, "typo3_paragraph"));
-          $box["subElements"] = array_merge($box["subElements"], $this->checkText($value['url'], $dbReference, $processedData, "link"));
+          if(isset($value['headline']) && !empty($value['headline'])) {
+            $box["subElements"] = array_merge($box["subElements"], $this->checkText($value['headline'], $dbReference, $processedData, "h3"));
+          }
+          if(isset($value['text']) && !empty($value['text'])) {
+            $box["subElements"] = array_merge($box["subElements"], $this->checkText($value['text'], $dbReference, $processedData, "typo3_paragraph"));
+          }
+          if(isset($value['url']) && !empty($value['url'])) {
+            $box["subElements"] = array_merge($box["subElements"], $this->checkText($value['url'], $dbReference, $processedData, "link"));
+          }
           $elements[] = $box;
         }
 

+ 35 - 0
Configuration/FlexForms/extra-infosbox-prefilled.xml

@@ -324,6 +324,41 @@
               </config>
             </TCEforms>
           </jobsucheurl>
+          <spare1headline>
+            <TCEforms>
+              <label>LLL:EXT:mrm_be/Resources/Private/Language/locallang_ttc.xlf:mrm_be_cm_extra_infosbox_prefilled.spare1headline</label>
+                <config>
+                  <type>input</type>
+                  <eval>trim</eval>
+                  <size>250</size>
+                  <default>abi.de</default>
+                </config>
+            </TCEforms>
+          </spare1headline>
+          <spare1text>
+            <TCEforms>
+              <label>LLL:EXT:mrm_be/Resources/Private/Language/locallang_ttc.xlf:mrm_be_cm_extra_infosbox_prefilled.spare1text</label>
+              <config>
+                <type>text</type>
+                <eval>trim</eval>
+                <rows>3</rows>
+                <cols>200</cols>
+                <default></default>
+              </config>
+            </TCEforms>
+          </spare1text>
+          <spare1url>
+            <TCEforms>
+              <label>LLL:EXT:mrm_be/Resources/Private/Language/locallang_ttc.xlf:mrm_be_cm_extra_infosbox_prefilled.spare1url</label>
+              <config>
+                <type>input</type>
+                <size>20</size>
+                <max>30</max>
+                <eval>trim</eval>
+                <default>https://abi.de</default>
+              </config>
+            </TCEforms>
+          </spare1url>
         </el>
       </ROOT>
     </sDEFAULTLINKS>