(bug 39875) Fixed conversion of array attributes in Html.
authorTyler Anthony Romeo <tylerromeo@gmail.com>
Sat, 1 Sep 2012 01:25:27 +0000 (21:25 -0400)
committerTyler Anthony Romeo <tylerromeo@gmail.com>
Sat, 1 Sep 2012 01:25:27 +0000 (21:25 -0400)
Changed Html::dropDefaults() so that when an array is
passed as an attribute value, it does not call strval(),
thus triggering a PHP notice. Instead arrays are
imploded with a space as the separator.

Change-Id: I2521b78c7de94c183b7de7e7d4b2b510ab0c7770

includes/Html.php

index 23fead7..d4d0203 100644 (file)
@@ -325,7 +325,11 @@ class Html {
 
                foreach ( $attribs as $attrib => $value ) {
                        $lcattrib = strtolower( $attrib );
-                       $value = strval( $value );
+                       if( is_array( $value ) ) {
+                               $value = implode( ' ', $value );
+                       } else {
+                               $value = strval( $value );
+                       }
 
                        # Simple checks using $attribDefaults
                        if ( isset( $attribDefaults[$element][$lcattrib] ) &&