summaryrefslogtreecommitdiff
path: root/includes
diff options
context:
space:
mode:
Diffstat (limited to 'includes')
-rw-r--r--includes/theme.inc12
1 files changed, 8 insertions, 4 deletions
diff --git a/includes/theme.inc b/includes/theme.inc
index 04621ca72..9e15f21e6 100644
--- a/includes/theme.inc
+++ b/includes/theme.inc
@@ -1282,20 +1282,23 @@ function theme_table($header, $rows, $attributes = array(), $caption = NULL) {
drupal_add_js('misc/tableheader.js');
$ts = tablesort_init($header);
- $output .= ' <thead><tr>';
+ // HTML requires that the thead tag has tr tags in it follwed by tbody
+ // tags. Using ternary operator to check and see if we have any rows.
+ $output .= (count($rows) ? ' <thead><tr>' : ' <tr>');
foreach ($header as $cell) {
$cell = tablesort_header($cell, $header, $ts);
$output .= _theme_table_cell($cell, TRUE);
}
- $output .= " </tr></thead>\n";
+ // Using ternary operator to close the tags based on whether or not there are rows
+ $output .= (count($rows) ? " </tr></thead>\n" : "</tr>\n");
}
else {
$ts = array();
}
// Format the table rows:
- $output .= "<tbody>\n";
if (count($rows)) {
+ $output .= "<tbody>\n";
$flip = array('even' => 'odd', 'odd' => 'even');
$class = 'even';
foreach ($rows as $number => $row) {
@@ -1335,9 +1338,10 @@ function theme_table($header, $rows, $attributes = array(), $caption = NULL) {
$output .= " </tr>\n";
}
}
+ $output .= "</tbody>\n";
}
- $output .= "</tbody></table>\n";
+ $output .= "</table>\n";
return $output;
}