Files
pmgr/views/elements/table.ctp

60 lines
1.7 KiB
PHP

<?php /* -*- mode:PHP -*- */
/* table.ctp */
/*
*
* @filesource
* @copyright Copyright 2009, Abijah Perkins
* @package pmgr
*/
if (isset($rows) && is_array($rows) && count($rows)) {
echo('<TABLE' . (isset($class) ? ' CLASS="'.$class.'"' : '') . '>' . "\n");
if (isset($caption))
echo(' <CAPTION>' . $caption . '</CAPTION>' . "\n");
if (isset($row_class) && is_array($row_class)) {
foreach ($row_class AS &$rc)
$rc = preg_replace("/ /", "-", strtolower($rc));
}
if (isset($column_class) && is_array($column_class)) {
foreach ($column_class AS &$cc)
$cc = preg_replace("/ /", "-", strtolower($cc));
}
/* if (isset($headers) && is_array($headers)) { */
/* foreach ($headers AS $i => $col) { */
/* if (!isset($column_class[$i])) */
/* continue; */
/* $headers[$i] = array($col, array('class' => $column_class[$i])); */
/* } */
/* } */
// Very kludgy.
// I want the row_class to affix to the <tr> tag.
// tableCells, however, does not have such ability :-/
foreach ($rows AS $r => &$row) {
foreach ($row AS $c => $col) {
$colclass = (isset($column_class) && is_array($column_class)) ? $column_class[$c] : '';;
$rowclass = (isset($row_class) && is_array($row_class)) ? $row_class[$r] : '';
$class = $rowclass . ($colclass ? " " . $colclass : '');
if (!$class)
continue;
$row[$c] = array($col, array('class' => $class));
}
}
echo("\n");
if (isset($headers) && is_array($headers))
echo $html->tableHeaders($headers);
echo("\n");
echo $html->tableCells($rows,
array('class' => "oddrow"),
array('class' => "evnrow"),
false, false);
echo("\n");
echo('</TABLE>' . "\n");
}