Bugfix for TSconfig overriding TCA field configuration
authorOliver Hader <oliver.hader@typo3.org>
Mon, 5 Feb 2007 16:19:00 +0000 (16:19 +0000)
committerOliver Hader <oliver.hader@typo3.org>
Mon, 5 Feb 2007 16:19:00 +0000 (16:19 +0000)
git-svn-id: https://svn.typo3.org/TYPO3v4/Core/trunk@1996 709f56b5-9817-0410-a4d7-c38de5d9e867

ChangeLog
t3lib/class.t3lib_tceforms.php

index b3af31c..63a6dbe 100755 (executable)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2007-02-05  Oliver Hader  <oh@inpublica.de>
+
+       * Bugfix for TSconfig overriding TCA field configuration
+
 2007-02-04  Martin Kutschker  <martin.t.kutschker@blackbox.net>
 
        * Added icon to edit record of page overlay for a translated page
index ae6fe0f..3363f75 100755 (executable)
@@ -334,9 +334,12 @@ class t3lib_TCEforms       {
 
                        // Define whitelist that allows TCA field configuration to be overridden by TSconfig, @see overrideFieldConf():
                $this->allowOverrideMatrix = array(
-                       'select' => array('minitems', 'maxitems', 'size'),
-                       'group' => array('minitems', 'maxitems', 'size'),
-                       'inline' => array('minitems', 'maxitems', 'size', 'foreign_selector', 'foreign_unique', 'appearance'),
+                       'input' => array('size', 'max'),
+                       'text' => array('cols', 'rows', 'wrap'),
+                       'check' => array('cols', 'showIfRTE'),
+                       'select' => array('size', 'autoSizeMax', 'maxitems', 'minitems'),
+                       'group' => array('size', 'autoSizeMax', 'max_size', 'show_thumbs', 'maxitems', 'minitems'),
+                       'inline' => array('appearance', 'foreign_label', 'foreign_selector', 'foreign_unique', 'maxitems', 'minitems', 'size', 'autoSizeMax', 'symmetric_label'),
                );
 
                $this->inline = t3lib_div::makeInstance('t3lib_TCEforms_inline');
@@ -2809,7 +2812,7 @@ class t3lib_TCEforms      {
                if (is_array($TSconfig)) {
                        $TSconfig = t3lib_div::removeDotsFromTS($TSconfig);
                        $type = $fieldConfig['type'];
-                       if (is_array($this->allowOverrideMatrix[$type])) {
+                       if (is_array($TSconfig['config']) && is_array($this->allowOverrideMatrix[$type])) {
                                        // Check if the keys in TSconfig['config'] are allowed to override TCA field config:                    
                                foreach (array_keys($TSconfig['config']) as $key) {
                                        if (!in_array($key, $this->allowOverrideMatrix[$type], true)) {