chg: [UI] Nicer warninglist view

pull/8357/head
Jakub Onderka 2022-05-10 16:23:34 +02:00
parent 2dfee9f445
commit f9544fe370
3 changed files with 46 additions and 32 deletions

View File

@ -18,13 +18,29 @@
... ...
); );
*/ */
$rows = array(); echo '<table class="meta_table table table-striped table-condensed">';
foreach ($table_data as $row) { foreach ($table_data as $row) {
$element = false; $html = "";
if (!empty($row['element'])) { if (isset($row['boolean'])) {
$element = $this->element($row['element'], empty($row['element_params']) ? array() : $row['element_params']); $html = sprintf(
'<span class="%s">%s</span>',
(empty($row['class']) && empty($row['value_class'])) ?
(empty($row['boolean']) ? 'label label-important label-padding' : 'label label-success label-padding') : '',
empty($row['boolean']) ? __('No') : __('Yes'));
} }
$rows[] = sprintf( if (!empty($row['value'])) {
$html .= nl2br(h(trim($row['value'])), false);
}
if (!empty($row['html'])) {
$html .= $row['html'];
}
if (!empty($row['url'])) {
$html .= sprintf('<a href="%s">%s</a>', h($row['url']), h($row['url']));
}
if (!empty($row['element'])) {
$html .= $this->element($row['element'], empty($row['element_params']) ? array() : $row['element_params']);
}
echo sprintf(
'<tr><td class="%s" title="%s">%s</td><td class="%s">%s</td></tr>', '<tr><td class="%s" title="%s">%s</td><td class="%s">%s</td></tr>',
sprintf( sprintf(
'meta_table_key %s %s', 'meta_table_key %s %s',
@ -38,24 +54,7 @@
empty($row['class']) ? '' : h($row['class']), empty($row['class']) ? '' : h($row['class']),
empty($row['value_class']) ? '' : h($row['value_class']) empty($row['value_class']) ? '' : h($row['value_class'])
), ),
sprintf( $html
'%s%s%s%s%s', ) . PHP_EOL;
!isset($row['boolean']) ? '' : sprintf(
'<span class="%s">%s</span>',
(empty($row['class']) && empty($row['value_class'])) ?
(empty($row['boolean']) ? 'bold red' : 'bold green') : '',
empty($row['boolean']) ? 'No' : 'Yes'
),
empty($row['value']) ? '' : nl2br(h(trim($row['value']))),
empty($row['html']) ? '' : $row['html'],
empty($row['url']) ? '' : sprintf('<a href="%s">%s</a>', h($row['url']), h($row['url'])),
empty($element) ? '' : $element
)
);
} }
$rows = implode(PHP_EOL, $rows); echo '</table>';
echo sprintf(
'<table class="%s">%s</table>',
'meta_table table table-striped table-condensed',
$rows
);

View File

@ -13,35 +13,37 @@
'key' => __('Enabled'), 'key' => __('Enabled'),
'boolean' => $data['enabled'], 'boolean' => $data['enabled'],
'html' => sprintf( 'html' => sprintf(
' (<a href="%s/warninglists/enableWarninglist/%s%s" title="%s">%s</a>)', ' <a href="%s/warninglists/enableWarninglist/%s%s" title="%s">%s</a>',
$baseurl, $baseurl,
h($warninglist['Warninglist']['id']), h($warninglist['Warninglist']['id']),
$data['enabled'] ? '' : '/1', $data['enabled'] ? '' : '/1',
$data['enabled'] ? __('Disable') : __('Enable'), $data['enabled'] ? __('Disable') : __('Enable'),
$data['enabled'] ? __('disable') : __('enable') $data['enabled'] ? __('Disable') : __('Enable')
) )
), ),
); );
$values = []; $values = [];
foreach ($warninglist['WarninglistEntry'] as $entry) { foreach ($warninglist['WarninglistEntry'] as $entry) {
$value = h($entry['value']); $value = '<span class="warninglist-value">'. h($entry['value']) . '</span>';
if ($entry['comment']) { if ($entry['comment']) {
$value .= ' <span style="color: gray"># ' . h($entry['comment']) . '</span>'; $value .= ' <span class="warninglist-comment"># ' . h($entry['comment']) . '</span>';
} }
$values[] = $value; $values[] = $value;
} }
echo '<div class="warninglist view">';
echo sprintf( echo sprintf(
'<div class="warninglist view"><div class="row-fluid"><div class="span8" style="margin:0;">%s</div></div><h4>%s</h4>%s</div>', '<div class="row-fluid"><div class="span8" style="margin:0;">%s</div></div><h4>%s</h4>',
sprintf( sprintf(
'<h2>%s</h2>%s', '<h2>%s</h2>%s',
h(mb_strtoupper($warninglist['Warninglist']['name'])), h(mb_strtoupper($warninglist['Warninglist']['name'])),
$this->element('genericElements/viewMetaTable', array('table_data' => $table_data)) $this->element('genericElements/viewMetaTable', array('table_data' => $table_data))
), ),
__('Values'), __('Values')
implode('<br>', $values)
); );
echo implode('<br>', $values);
echo '</div>';
echo $this->element('/genericElements/SideMenu/side_menu', [ echo $this->element('/genericElements/SideMenu/side_menu', [
'menuList' => 'warninglist', 'menuList' => 'warninglist',
'menuItem' => 'view', 'menuItem' => 'view',

View File

@ -2839,3 +2839,16 @@ Query builder
#event-correlations .event-correlation time { #event-correlations .event-correlation time {
font-style: italic; font-style: italic;
} }
.label-padding {
padding: 2px 10px;
margin-right: 5px
}
.warninglist-value {
font-family: Monaco, Menlo, Consolas, "Courier New", monospace;
}
.warninglist-comment {
color: gray;
}