function monitoring_munin_graph_settings in Monitoring 7
Munin graph settings form callback.
1 string reference to 'monitoring_munin_graph_settings'
- monitoring_munin_menu in modules/
monitoring_munin/ monitoring_munin.module - Implements hook_menu().
File
- modules/
monitoring_munin/ monitoring_munin.admin.inc, line 10 - Monitoring munin admin pages.
Code
function monitoring_munin_graph_settings($form, &$form_state) {
$form['multigraphs'] = array(
'#type' => 'fieldset',
'#title' => t('Munin multigraph definitions'),
'#collapsible' => TRUE,
'#collapsed' => TRUE,
);
$options = array();
foreach (monitoring_munin_multigraphs() as $multigraph) {
$options[$multigraph['title']] = array(
'title' => $multigraph['title'],
'vlabel' => $multigraph['vlabel'],
);
}
$form['multigraphs']['delete_multigraphs'] = array(
'#type' => 'tableselect',
'#header' => array(
'title' => t('Title'),
'vlabel' => t('Graph units'),
),
'#options' => $options,
);
$form['multigraphs']['title'] = array(
'#type' => 'textfield',
'#title' => t('Multigraph name'),
'#description' => t('Enter name of a new multigraph.'),
);
$form['multigraphs']['vlabel'] = array(
'#type' => 'textfield',
'#title' => t('Value label'),
'#description' => t('Enter common value label.'),
);
$form['multigraphs']['actions']['add_multigraph'] = array(
'#type' => 'submit',
'#value' => t('Add multigraph'),
'#submit' => array(
'monitoring_munin_multigraph_add_submit',
),
);
$form['multigraphs']['actions']['delete_multigraphs'] = array(
'#type' => 'submit',
'#value' => t('Delete selected'),
'#submit' => array(
'monitoring_munin_multigraph_delete_submit',
),
);
$options = array();
foreach (monitoring_munin_multigraphs() as $multigraph) {
$options[$multigraph['title']] = $multigraph['title'];
}
foreach (monitoring_sensor_manager()
->getEnabledSensorInfo() as $sensor_name => $sensor_info) {
$munin_settings = $sensor_info
->getSetting('munin', array(
'multigraphs' => array(),
'munin_enabled' => FALSE,
'graph_args' => '',
));
$form[$sensor_name] = array(
'#type' => 'fieldset',
'#title' => $sensor_info
->getLabel(),
'#description' => $sensor_info
->getDescription(),
'#tree' => TRUE,
);
$form[$sensor_name]['munin_enabled'] = array(
'#type' => 'checkbox',
'#title' => t('Enabled'),
'#default_value' => $munin_settings['munin_enabled'],
'#attributes' => array(
'id' => $sensor_name . '_enabled',
),
);
$form[$sensor_name]['multigraphs'] = array(
'#type' => 'select',
'#title' => t('Presence in multigraphs'),
'#multiple' => TRUE,
'#options' => $options,
'#default_value' => $munin_settings['multigraphs'],
'#states' => array(
'visible' => array(
':input[id="' . $sensor_name . '_enabled"]' => array(
'checked' => TRUE,
),
),
),
);
// @todo - we need to provide such setting either for single graph or multi
// definition.
// $form[$sensor_name]['graph_args'] = array(
// '#type' => 'textfield',
// '#title' => t('Graph arguments'),
// '#default_value' => $munin_settings['graph_args'],
// );
}
$form['submit'] = array(
'#type' => 'submit',
'#value' => t('Save configuration'),
);
return $form;
}