Fixed bug #11059: Validation issue: duplicate specification of attribute "class"...
authorPatrick Broens <patrick@netcreators.com>
Tue, 12 May 2009 08:09:54 +0000 (08:09 +0000)
committerPatrick Broens <patrick@netcreators.com>
Tue, 12 May 2009 08:09:54 +0000 (08:09 +0000)
git-svn-id: https://svn.typo3.org/TYPO3v4/Core/trunk@5405 709f56b5-9817-0410-a4d7-c38de5d9e867

ChangeLog
t3lib/class.t3lib_tceforms.php

index abb8229..feab5fa 100755 (executable)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,6 +1,7 @@
 2009-05-12  Patrick Broens  <patrick@patrickbroens.nl>
 
        * Fixed bug #11058: Validation issue: <input type="image"> can't have height and width attribute in typo3/alt_doc.php
+       * Fixed bug #11059: Validation issue: duplicate specification of attribute "class" in t3lib/class.t3lib_tceforms.php
 
 2009-05-08  Patrick Broens  <patrick@patrickbroens.nl>
 
index 06291a3..f54579f 100644 (file)
@@ -1593,7 +1593,7 @@ class t3lib_TCEforms      {
                                // If there is an icon for the selector box (rendered in table under)...:
                        if ($p[2] && !$suppressIcons && (!$onlySelectedIconShown || $sM))       {
                                list($selIconFile,$selIconInfo)=$this->getIcon($p[2]);
-                               $iOnClick = $this->elName($PA['itemFormElName']) . '.selectedIndex=' . $c . '; ' . 
+                               $iOnClick = $this->elName($PA['itemFormElName']) . '.selectedIndex=' . $c . '; ' .
                                        $this->elName($PA['itemFormElName']) . '.style.backgroundImage=' . $this->elName($PA['itemFormElName']) . '.options[' . $c .'].style.backgroundImage; ' .
                                        implode('',$PA['fieldChangeFunc']).$this->blur().'return false;';
                                $selicons[]=array(
@@ -1623,8 +1623,7 @@ class t3lib_TCEforms      {
                        $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...
                }
                $item .= '<select' . $selectedStyle . ' name="' . $PA['itemFormElName'] . '"' .
-                                       ($config['iconsInOptionTags'] ? ' class="icon-select"' : '') .
-                                       $this->insertDefStyle('select') .
+                                       ($config['iconsInOptionTags'] ? $this->insertDefStyle('select', 'icon-select') : $this->insertDefStyle('select')) .
                                        ($size ? ' size="' . $size . '"' : '') .
                                        ' onchange="' . htmlspecialchars($onChangeIcon . $sOnChange) . '"' .
                                        $PA['onFocus'] . $disabled . '>';
@@ -4148,16 +4147,18 @@ class t3lib_TCEforms    {
         * Return default "style" / "class" attribute line.
         *
         * @param       string          Field type (eg. "check", "radio", "select")
+        * @param       string          Additional class(es) to be added
         * @return      string          CSS attributes
         */
-       function insertDefStyle($type)  {
+       function insertDefStyle($type, $additionalClass = '')   {
                $out = '';
 
                $style = trim($this->defStyle.$this->formElStyle($type));
                $out.= $style?' style="'.htmlspecialchars($style).'"':'';
 
                $class = $this->formElClass($type);
-               $out.= $class?' class="'.htmlspecialchars($class).'"':'';
+               $classAttributeValue = join(' ', array_filter(array($class, $additionalClass)));
+               $out .= $classAttributeValue ? ' class="' . htmlspecialchars($classAttributeValue) . '"' : '';
 
                return $out;
        }