diff --git a/include/management/actions/class_Action.inc b/include/management/actions/class_Action.inc index bf25ba4cc878f6bde4bcf6821168b778133718f4..ef8be4db94912deea62d8f716fb0c7c350dd9a7b 100644 --- a/include/management/actions/class_Action.inc +++ b/include/management/actions/class_Action.inc @@ -143,9 +143,8 @@ class Action ); } - function getRowClasses(ListingEntry $entry) + function fillRowClasses(&$classes, ListingEntry $entry) { - return array(); } function renderColumnIcons(ListingEntry $entry) diff --git a/include/management/class_management.inc b/include/management/class_management.inc index f8177b8f02fdaa6ffe74e687f7d0dee3e749f210..2208298ad1bd2a2a26fe3e890ab7e402afe25a94 100644 --- a/include/management/class_management.inc +++ b/include/management/class_management.inc @@ -464,15 +464,11 @@ class management return $result; } - function getActionRowClasses(ListingEntry $entry) + function fillActionRowClasses(&$classes, ListingEntry $entry) { - $classes = array(); foreach ($this->actions as $action) { - // TODO optimize - $classes = array_merge($classes, $action->getRowClasses($entry)); + $action->fillRowClasses($classes, $entry); } - - return $classes; } /*! diff --git a/include/management/class_managementListing.inc b/include/management/class_managementListing.inc index d0860f3d1db5915b4ed23702e5c621fceabb82e3..29b2188c624852b1a3423c148dcf973c66a07a3c 100644 --- a/include/management/class_managementListing.inc +++ b/include/management/class_managementListing.inc @@ -168,7 +168,7 @@ class managementListing 'props' => $column->getHtmlCellProps(), 'render' => $column->renderCell($entry) ); - $row['classes'] = array_merge($row['classes'], $column->getRowClasses($entry)); + $column->fillRowClasses($row['classes'], $entry); } $row['index'] = $entry->row; diff --git a/include/management/columns/class_ActionsColumn.inc b/include/management/columns/class_ActionsColumn.inc index 4ea91a97914ae6a43e125b762b8bcfe51a49e211..62245dcf063683ba0a294de042a7cd01797c5e34 100644 --- a/include/management/columns/class_ActionsColumn.inc +++ b/include/management/columns/class_ActionsColumn.inc @@ -28,9 +28,9 @@ class ActionsColumn extends Column return FALSE; } - function getRowClasses(ListingEntry $entry) + function fillRowClasses(&$classes, ListingEntry $entry) { - return $this->parent->parent->getActionRowClasses($entry); + $this->parent->parent->fillActionRowClasses($classes, $entry); } function renderCell(ListingEntry $entry) diff --git a/include/management/columns/class_Column.inc b/include/management/columns/class_Column.inc index 0111b3bacc0ea6fa1d7538920746401d7bb9233a..66b0e9de33d73bddff0622fa98fddad2f9a38bf1 100644 --- a/include/management/columns/class_Column.inc +++ b/include/management/columns/class_Column.inc @@ -100,9 +100,8 @@ class Column } } - function getRowClasses(ListingEntry $entry) + function fillRowClasses(&$classes, ListingEntry $entry) { - return array(); } function renderCell(ListingEntry $entry) diff --git a/plugins/admin/users/class_userManagement.inc b/plugins/admin/users/class_userManagement.inc index 85d2ba6eb35bead0137aeb1c69c9f4664d70b40a..a8e2b6872f88ae21612199ebb81ec4dcc9bd3bea 100644 --- a/plugins/admin/users/class_userManagement.inc +++ b/plugins/admin/users/class_userManagement.inc @@ -68,13 +68,10 @@ class LockAction extends Action ); } - function getRowClasses(ListingEntry $entry) + function fillRowClasses(&$classes, ListingEntry $entry) { - $lockStatus = $this->isLocked($entry); - if ($lockStatus === TRUE) { - return array('entry-locked'); - } else { - return array(); + if ($this->isLocked($entry) === TRUE) { + $classes[] = 'entry-locked'; } }