'New Checker Details',
'header-border' => TRUE,
'padding' => TRUE,
];
echo generate_box_open($box_args);
?>
Entity Type
' . nicecase($vars['entity_type']) . ' '; ?>
Alert Name
'alert_name',
'name' => 'Alert name',
'placeholder' => TRUE,
'width' => '220px',
'value' => $vars['alert_name']];
echo(generate_form_element($item, 'text'));
?>
Message
'alert_message',
'name' => 'Alert message',
'placeholder' => TRUE,
//'width' => '220px',
'class' => 'col-md-11',
'rows' => 3,
'value' => $vars['alert_message']];
echo(generate_form_element($item, 'textarea'));
?>
Alert Delay
'alert_delay',
'name' => '№ of checks to delay alert',
'placeholder' => TRUE,
'width' => '220px',
'value' => $vars['alert_delay']];
echo(generate_form_element($item, 'text'));
?>
Send recovery
'alert_send_recovery',
'size' => 'big',
'view' => 'toggle',
'palette' => 'blue',
'value' => (isset($vars['alert_send_recovery']) ? $vars['alert_send_recovery'] : 1)]; // Set to on by default
echo(generate_form_element($item, 'toggle'));
?>
Severity
'alert_severity',
//'name' => 'Severity',
'live-search' => FALSE,
'width' => '220px',
'value' => $vars['alert_severity'],
'values' => $config['alerts']['severity'],
];
echo(generate_form_element($item, 'select'));
?>
'Test Conditions',
'header-border' => TRUE,
'padding' => TRUE,
];
$box_args['header-controls'] = ['controls' => ['tooltip' => ['icon' => $config['icon']['info'],
'anchor' => TRUE,
'class' => 'tooltip-from-element',
//'url' => '#',
'data' => 'data-tooltip-id="tooltip-help-conditions"']]];
echo generate_box_open($box_args);
?>
'alert_and',
//'name' => 'Severity',
'live-search' => FALSE,
'width' => '220px',
'value' => (isset($vars['alert_and']) ? $vars['alert_and'] : 1), // Set to and by default
'values' => ['0' => ['name' => 'Require any condition',
'icon' => $config['icon']['or-gate']],
'1' => ['name' => 'Require all conditions',
'icon' => $config['icon']['and-gate']],
]
];
echo(generate_form_element($item, 'select'));
echo(PHP_EOL . '
' . PHP_EOL);
/// FIXME. Better styling on page...
$metrics_list = [];
foreach ($config['entities'][$vars['entity_type']]['metrics'] as $metric => $entry) {
$metric_list = [
'metric' => $metric,
'description' => $entry['label'],
];
$metric_list['values'] = '';
if (is_array($entry['values'])) {
if (is_array_list($entry['values'])) {
$values = $entry['values'];
} else {
$values = [];
foreach ($entry['values'] as $value => $descr) {
$values[] = "$value ($descr)";
}
}
$metric_list['values'] = '
' . implode(' ', $values) . ' ';
} elseif ($entry['type'] === 'integer') {
$metric_list['values'] = escape_html('
');
if (str_contains($metric, 'value')) {
$metric_list['values'] .= ' ';
// some table fields
foreach (['limit_high', 'limit_high_warn', 'limit_low', 'limit_low_warn'] as $field) {
if (isset($config['entities'][$vars['entity_type']]['table_fields'][$field])) {
$metric_list['values'] .= '@' . $config['entities'][$vars['entity_type']]['table_fields'][$field] . ' ';
}
}
}
} else {
$metric_list['values'] = escape_html('<' . $entry['type'] . '>');
}
$metrics_list[] = $metric_list;
//$metrics_list[] = ''.$metric.' - '.$entry['label'];
}
//$form_params['metrics'] = implode(', ', $metrics_list);
$metrics_opts = [
'columns' => [
['Metrics', 'style="width: 5%;"'],
'Description',
'Values'
],
'metric' => ['class' => 'label'],
'description' => ['class' => 'text-nowrap'],
'values' => ['escape' => FALSE]
];
$item = ['id' => 'alert_conditions',
'name' => 'Metric Conditions',
'placeholder' => TRUE,
//'width' => '220px',
'class' => 'col-md-10',
'style' => 'margin-right: 10px',
'rows' => count($metrics_list) > 3 ? count($metrics_list) : 3,
'value' => $vars['alert_conditions']];
echo generate_form_element($item, 'textarea');
echo('List of known metrics: ' . build_table($metrics_list, $metrics_opts) . '
');
echo generate_box_close();
$box_args = ['title' => 'Association Ruleset',
'header-border' => TRUE,
'padding' => TRUE,
];
$box_args['header-controls'] = ['controls' => ['tooltip' => ['icon' => $config['icon']['info'],
'anchor' => TRUE,
'class' => 'tooltip-from-element',
//'url' => '#',
'data' => 'data-tooltip-id="tooltip-help-associations"']]];
echo generate_box_open($box_args);
$form_id = 'rules-' . random_string(8);
echo '
';
generate_querybuilder_form($vars['entity_type'], 'attribs', $form_id, $alert_dupe['alert_assoc']);
// generate_querybuilder_form($vars['entity_type'], 'metrics');
$footer_content = '
Clear Rules
Add Checker
' . $script;
echo generate_box_close(['footer_content' => $footer_content]);
// echo generate_box_close();
?>