function xbbcode_table_render in Extensible BBCode 6
Same name and namespace in other branches
- 5 xbbcode_table/xbbcode_table.module \xbbcode_table_render()
1 call to xbbcode_table_render()
- xbbcode_table_xbbcode in xbbcode_table/
xbbcode_table.module
File
- xbbcode_table/
xbbcode_table.module, line 3
Code
function xbbcode_table_render($option, $content) {
$content = trim($content);
$rows = explode("\n", $content);
if ($option) {
$headers = explode(",", $option);
foreach ($headers as $i => $header) {
if (preg_match('/^([#!])(.+)$/', $header, $match)) {
$headers[$i] = $match[2];
$align[$i] = $match[1] == '#' ? 'right' : 'center';
}
else {
$align[$i] = 'left';
}
}
}
else {
$headers = array();
}
foreach ($rows as $row) {
$row = explode(",", $row);
if ($headers) {
foreach ($row as $i => $cell) {
$row[$i] = array(
'data' => $cell,
'style' => 'text-align:' . $align[$i],
);
}
}
$cells[] = $row;
}
$html = theme('table', $headers, $cells);
$html = str_replace("\n", "", $html);
// strip linebreaks
return $html;
}