Fixed bug #17042: Double class attribute for select tag of tceforms "type=select...
authorChristian Kuhn <lolli@schwarzbu.ch>
Fri, 14 Jan 2011 22:50:46 +0000 (22:50 +0000)
committerChristian Kuhn <lolli@schwarzbu.ch>
Fri, 14 Jan 2011 22:50:46 +0000 (22:50 +0000)
git-svn-id: https://svn.typo3.org/TYPO3v4/Core/trunk@10082 709f56b5-9817-0410-a4d7-c38de5d9e867

ChangeLog
t3lib/class.t3lib_tceforms.php

index a267f29..b71d3c2 100755 (executable)
--- a/ChangeLog
+++ b/ChangeLog
@@ -15,6 +15,7 @@
 
 2011-01-14  Christian Kuhn  <lolli@schwarzbu.ch>
 
+       * Fixed bug #17042: Double class attribute for select tag of tceforms "type=select" if using icons
        * Fixed bug #17036: Misleading deprecation comment getReferenceHTML()
        * Fixed bug #17034: Live search also returns records which not available to the user (Thanks to Peter Beernink)
        * Follow-up to #17032: Remove early return
index e2b3601..3856be9 100644 (file)
@@ -1635,6 +1635,7 @@ class t3lib_TCEforms {
                        // Traverse the Array of selector box items:
                $optGroupStart = array();
                $optGroupOpen = FALSE;
+               $classesForSelectTag = array();
                foreach ($selItems as $p) {
                        $sM = (!strcmp($PA['itemFormElValue'], $p[1]) ? ' selected="selected"' : '');
                        if ($sM) {
@@ -1648,7 +1649,8 @@ class t3lib_TCEforms {
                                if ($sM) {
                                        list($selectIconFile, $selectIconInfo) = $this->getIcon($p[2]);
                                        if (!empty($selectIconInfo)) {
-                                               $selectedStyle = ' class="typo3-TCEforms-select-selectedItemWithBackgroundImage" style="background-image:url(' . $selectIconFile . ');"';
+                                               $selectedStyle = ' style="background-image:url(' . $selectIconFile . ');"';
+                                               $classesForSelectTag[] = 'typo3-TCEforms-select-selectedItemWithBackgroundImage';
                                        }
                                }
                        }
@@ -1720,8 +1722,11 @@ class t3lib_TCEforms {
                if (!$disabled) {
                        $item .= '<input type="hidden" name="' . $PA['itemFormElName'] . '_selIconVal" value="' . htmlspecialchars($sI) . '" />'; // MUST be inserted before the selector - else is the value of the hiddenfield here mysteriously submitted...
                }
+               if ($config['iconsInOptionTags']) {
+                       $classesForSelectTag[] = 'icon-select';
+               }
                $item .= '<select' . $selectedStyle . ' id="' . uniqid('tceforms-select-') . '" name="' . $PA['itemFormElName'] . '"' .
-                                ($config['iconsInOptionTags'] ? $this->insertDefStyle('select', 'icon-select') : $this->insertDefStyle('select')) .
+                                $this->insertDefStyle('select', implode(' ', $classesForSelectTag)) .
                                 ($size ? ' size="' . $size . '"' : '') .
                                 ' onchange="' . htmlspecialchars($onChangeIcon . $sOnChange) . '"' .
                                 $PA['onFocus'] . $disabled . '>';