|
@@ -578,6 +578,17 @@ class SortableTable extends HTML_Table
|
|
$count = 1;
|
|
$count = 1;
|
|
foreach ($table_data as & $row) {
|
|
foreach ($table_data as & $row) {
|
|
$row = $this->filter_data($row);
|
|
$row = $this->filter_data($row);
|
|
|
|
+ $newRow = array();
|
|
|
|
+ if (!empty($this->columnsToHide)) {
|
|
|
|
+ $counter = 0;
|
|
|
|
+ foreach ($row as $index => $rowInfo) {
|
|
|
|
+ if (!isset($this->columnsToHide[$index])) {
|
|
|
|
+ $newRow[$counter] = $rowInfo ;
|
|
|
|
+ $counter++;
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ $row = $newRow;
|
|
|
|
+ }
|
|
$this->addRow($row);
|
|
$this->addRow($row);
|
|
if (isset($row['child_of'])) {
|
|
if (isset($row['child_of'])) {
|
|
$this->setRowAttributes($count, array('class' => 'hidden hidden_'.$row['child_of']), true);
|
|
$this->setRowAttributes($count, array('class' => 'hidden hidden_'.$row['child_of']), true);
|
|
@@ -685,12 +696,21 @@ class SortableTable extends HTML_Table
|
|
*/
|
|
*/
|
|
public function processHeaders()
|
|
public function processHeaders()
|
|
{
|
|
{
|
|
|
|
+ $counter = 0;
|
|
foreach ($this->headers as $column => $columnInfo) {
|
|
foreach ($this->headers as $column => $columnInfo) {
|
|
$label = $columnInfo['label'];
|
|
$label = $columnInfo['label'];
|
|
$sortable = $columnInfo['sortable'];
|
|
$sortable = $columnInfo['sortable'];
|
|
$th_attributes = $columnInfo['th_attributes'];
|
|
$th_attributes = $columnInfo['th_attributes'];
|
|
$td_attributes = $columnInfo['td_attributes'];
|
|
$td_attributes = $columnInfo['td_attributes'];
|
|
|
|
|
|
|
|
+ if (!empty($this->columnsToHide)) {
|
|
|
|
+ if (isset($this->columnsToHide[$column])) {
|
|
|
|
+ continue;
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ $column = $counter;
|
|
|
|
+
|
|
$param['direction'] = 'ASC';
|
|
$param['direction'] = 'ASC';
|
|
if ($this->column == $column && $this->direction == 'ASC') {
|
|
if ($this->column == $column && $this->direction == 'ASC') {
|
|
$param['direction'] = 'DESC';
|
|
$param['direction'] = 'DESC';
|
|
@@ -712,24 +732,18 @@ class SortableTable extends HTML_Table
|
|
$link = $label;
|
|
$link = $label;
|
|
}
|
|
}
|
|
|
|
|
|
- $addHeader = true;
|
|
|
|
- if (!empty($this->columnsToHide)) {
|
|
|
|
- if (isset($this->columnsToHide[$column])) {
|
|
|
|
- $addHeader = false;
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
|
|
+ $this->setHeaderContents(0, $column, $link);
|
|
|
|
|
|
- if ($addHeader) {
|
|
|
|
- $this->setHeaderContents(0, $column, $link);
|
|
|
|
-
|
|
|
|
- if (!is_null($td_attributes)) {
|
|
|
|
- $this->td_attributes[$column] = $td_attributes;
|
|
|
|
- }
|
|
|
|
- if (!is_null($th_attributes)) {
|
|
|
|
- $this->th_attributes[$column] = $th_attributes;
|
|
|
|
- }
|
|
|
|
|
|
+ if (!is_null($td_attributes)) {
|
|
|
|
+ $this->td_attributes[$column] = $td_attributes;
|
|
}
|
|
}
|
|
|
|
+ if (!is_null($th_attributes)) {
|
|
|
|
+ $this->th_attributes[$column] = $th_attributes;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ $counter++;
|
|
}
|
|
}
|
|
|
|
+
|
|
}
|
|
}
|
|
|
|
|
|
/**
|
|
/**
|
|
@@ -885,15 +899,6 @@ class SortableTable extends HTML_Table
|
|
foreach ($this->column_filters as $column => & $function) {
|
|
foreach ($this->column_filters as $column => & $function) {
|
|
$row[$column] = call_user_func($function, $row[$column], $url_params, $row);
|
|
$row[$column] = call_user_func($function, $row[$column], $url_params, $row);
|
|
}
|
|
}
|
|
-
|
|
|
|
- if (!empty($this->columnsToHide)) {
|
|
|
|
- foreach ($this->columnsToHide as $index) {
|
|
|
|
- if (isset($row[$index])) {
|
|
|
|
- unset($row[$index]);
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
if (count($this->form_actions) > 0) {
|
|
if (count($this->form_actions) > 0) {
|
|
if (strlen($row[0]) > 0) {
|
|
if (strlen($row[0]) > 0) {
|
|
$row[0] = '<input type="checkbox" name="'.$this->checkbox_name.'[]" value="'.$row[0].'"';
|
|
$row[0] = '<input type="checkbox" name="'.$this->checkbox_name.'[]" value="'.$row[0].'"';
|