Index: includes/common.inc =================================================================== RCS file: /cvs/drupal/drupal/includes/common.inc,v retrieving revision 1.922 diff -u -F^f -p -r1.922 common.inc --- includes/common.inc 13 Jun 2009 19:28:57 -0000 1.922 +++ includes/common.inc 17 Jun 2009 02:57:07 -0000 @@ -2095,17 +2095,22 @@ function url($path = NULL, array $option * Format an attribute string to insert in a tag. * * @param $attributes - * An associative array of HTML attributes. + * An associative array of HTML attributes. If an attribute value is itself + * an array, then its values are imploded using a space as delimiter (e.g. + * a multiple value class attribute). * @return * An HTML string ready for insertion in a tag. */ function drupal_attributes($attributes = array()) { - if (is_array($attributes)) { - $t = ''; - foreach ($attributes as $key => $value) { - $t .= " $key=" . '"' . check_plain($value) . '"'; + if (!empty($attributes)) { + $items = array(); + foreach ($attributes as $attribute => $data) { + if (is_array($data)) { + $data = implode(' ', $data); + } + $items[] = $attribute . '="' . $data . '"'; } - return $t; + return ' ' . implode(' ', $items); } }