mirror of
https://github.com/Part-DB/Part-DB-server.git
synced 2025-06-21 09:35:49 +02:00
Coloring on log level in log tables now work again.
This commit is contained in:
parent
f0395d51b0
commit
618a6e49dd
3 changed files with 28 additions and 25 deletions
|
@ -138,7 +138,12 @@ export default class extends Controller {
|
||||||
}
|
}
|
||||||
|
|
||||||
_rowCallback(row, data, index) {
|
_rowCallback(row, data, index) {
|
||||||
//Empty by default but can be overridden by child classes
|
//Set the row class based on the optional $$rowClass column data, can be used to color the rows
|
||||||
|
|
||||||
|
//Check if we have a level, then change color of this row
|
||||||
|
if (data.$$rowClass) {
|
||||||
|
$(row).addClass(data.$$rowClass);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
_onSelectionChange(e, dt, items ) {
|
_onSelectionChange(e, dt, items ) {
|
||||||
|
|
|
@ -23,29 +23,5 @@ import DatatablesController from "./datatables_controller.js";
|
||||||
* This is the datatables controller for log pages, it includes an mechanism to color lines based on their level.
|
* This is the datatables controller for log pages, it includes an mechanism to color lines based on their level.
|
||||||
*/
|
*/
|
||||||
export default class extends DatatablesController {
|
export default class extends DatatablesController {
|
||||||
_rowCallback(row, data, index) {
|
|
||||||
//Check if we have a level, then change color of this row
|
|
||||||
if (data.level) {
|
|
||||||
let style = "";
|
|
||||||
switch (data.level) {
|
|
||||||
case "emergency":
|
|
||||||
case "alert":
|
|
||||||
case "critical":
|
|
||||||
case "error":
|
|
||||||
style = "table-danger";
|
|
||||||
break;
|
|
||||||
case "warning":
|
|
||||||
style = "table-warning";
|
|
||||||
break;
|
|
||||||
case "notice":
|
|
||||||
style = "table-info";
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (style) {
|
|
||||||
$(row).addClass(style);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -105,6 +105,28 @@ class LogDataTable implements DataTableTypeInterface
|
||||||
$this->configureOptions($resolver);
|
$this->configureOptions($resolver);
|
||||||
$options = $resolver->resolve($options);
|
$options = $resolver->resolve($options);
|
||||||
|
|
||||||
|
//This special $$rowClass column is used to set the row class depending on the log level. The class gets set by the frontend controller
|
||||||
|
$dataTable->add('$$rowClass', TextColumn::class, [
|
||||||
|
'label' => '',
|
||||||
|
'className' => 'no-colvis',
|
||||||
|
'visible' => false,
|
||||||
|
'render' => static function ($value, AbstractLogEntry $context) {
|
||||||
|
switch ($context->getLevel()) {
|
||||||
|
case AbstractLogEntry::LEVEL_EMERGENCY:
|
||||||
|
case AbstractLogEntry::LEVEL_ALERT:
|
||||||
|
case AbstractLogEntry::LEVEL_CRITICAL:
|
||||||
|
case AbstractLogEntry::LEVEL_ERROR:
|
||||||
|
return 'table-danger';
|
||||||
|
case AbstractLogEntry::LEVEL_WARNING:
|
||||||
|
return 'table-warning';
|
||||||
|
case AbstractLogEntry::LEVEL_NOTICE:
|
||||||
|
return 'table-info';
|
||||||
|
default:
|
||||||
|
return '';
|
||||||
|
}
|
||||||
|
},
|
||||||
|
]);
|
||||||
|
|
||||||
$dataTable->add('symbol', TextColumn::class, [
|
$dataTable->add('symbol', TextColumn::class, [
|
||||||
'label' => '',
|
'label' => '',
|
||||||
'className' => 'no-colvis',
|
'className' => 'no-colvis',
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue