add new checkbox for alias

This commit is contained in:
daniel 2017-03-06 15:22:01 +01:00
parent 74c8bf5539
commit c25595f64b
4 changed files with 48 additions and 23 deletions

View File

@ -1208,6 +1208,7 @@ ALTER TABLE tagente ADD `transactional_agent` tinyint(1) NOT NULL default 0;
ALTER TABLE tagente ADD `remote` tinyint(1) NOT NULL default 0;
ALTER TABLE tagente ADD `cascade_protection_module` int(10) unsigned default '0';
ALTER TABLE tagente ADD COLUMN (alias varchar(600) not null default '');
ALTER TABLE tagente ADD `alias_as_name` int(2) unsigned default '0';
UPDATE tagente SET tagente.alias = tagente.nombre;
-- ---------------------------------------------------------------------

View File

@ -204,8 +204,9 @@ if (!$new_agent) {
}
$table->data[1][0] = __('Alias');
$table->data[1][1] = html_print_input_text ('alias', $alias, '', 50, 100, true);
if($new_agent){
$table->data[1][1] .= html_print_checkbox ("alias_as_name", 1, $alias_as_name, true).__('Use alias as name');
}
$table->data[2][0] = __('IP Address');
$table->data[2][1] = html_print_input_text ('direccion', $direccion_agente, '', 16, 100, true);

View File

@ -74,6 +74,7 @@ $maximo = 0;
$minimo = 0;
$nombre_agente = "";
$alias = get_parameter('alias', '');
$alias_as_name = 0;
$direccion_agente = get_parameter('direccion', '');
$direccion_agente = trim(io_safe_output($direccion_agente));
$direccion_agente = io_safe_input($direccion_agente);
@ -149,6 +150,7 @@ $module_macros = array ();
// Create agent
if ($create_agent) {
$alias = (string) get_parameter_post("alias",'');
$alias_as_name = (int) get_parameter_post("alias_as_name", 0);
$direccion_agente = (string) get_parameter_post("direccion",'');
$direccion_agente = trim(io_safe_output($direccion_agente));
$direccion_agente = io_safe_input($direccion_agente);
@ -175,7 +177,7 @@ if ($create_agent) {
if ($fields === false) $fields = array();
$field_values = array();
foreach ($fields as $field) {
$field_values[$field['id_field']] = (string) get_parameter_post ('customvalue_'.$field['id_field'], '');
}
@ -191,26 +193,40 @@ if ($create_agent) {
$agent_created_ok = 0;
}*/
else {
$id_agente = db_process_sql_insert ('tagente',
array ('nombre' => $nombre_agente,
'alias' => $alias,
'direccion' => $direccion_agente,
'id_grupo' => $grupo,
'intervalo' => $intervalo,
'comentarios' => $comentarios,
'modo' => $modo,
'id_os' => $id_os,
'disabled' => $disabled,
'cascade_protection' => $cascade_protection,
'cascade_protection_module' => $cascade_protection_module,
'server_name' => $server_name,
'id_parent' => $id_parent,
'custom_id' => $custom_id,
'icon_path' => $icon_path,
'update_gis_data' => $update_gis_data,
'url_address' => $url_description,
'quiet' => $quiet));
enterprise_hook ('update_agent', array ($id_agente));
if($alias_as_name){
$sql = 'SELECT nombre FROM tagente WHERE nombre = "' . $alias . '"';
$exists_alias = db_get_row_sql($sql);
html_debug_print($exists_alias, true);
$nombre_agente = $alias;
}
if(!$exists_alias){
$id_agente = db_process_sql_insert ('tagente',
array ('nombre' => $nombre_agente,
'alias' => $alias,
'alias_as_name' => $alias_as_name,
'direccion' => $direccion_agente,
'id_grupo' => $grupo,
'intervalo' => $intervalo,
'comentarios' => $comentarios,
'modo' => $modo,
'id_os' => $id_os,
'disabled' => $disabled,
'cascade_protection' => $cascade_protection,
'cascade_protection_module' => $cascade_protection_module,
'server_name' => $server_name,
'id_parent' => $id_parent,
'custom_id' => $custom_id,
'icon_path' => $icon_path,
'update_gis_data' => $update_gis_data,
'url_address' => $url_description,
'quiet' => $quiet));
enterprise_hook ('update_agent', array ($id_agente));
}
else{
$id_agente = false;
}
if ($id_agente !== false) {
// Create custom fields for this agent
foreach ($field_values as $key => $value) {
@ -249,6 +265,9 @@ if ($create_agent) {
else {
$id_agente = 0;
$agent_creation_error = __('Could not be created');
if($exists_alias){
$agent_creation_error = __('Could not be created, because name already exists');
}
}
}
}
@ -646,6 +665,7 @@ if ($update_agent) { // if modified some agent paramenter
$id_agente = (int) get_parameter_post ("id_agente");
$nombre_agente = str_replace('`','‘',(string) get_parameter_post ("agente", ""));
$alias = str_replace('`','‘',(string) get_parameter_post ("alias", ""));
$alias_as_name = (int) get_parameter_post ('alias_as_name', 0);
$direccion_agente = (string) get_parameter_post ("direccion", '');
$direccion_agente = trim(io_safe_output($direccion_agente));
$direccion_agente = io_safe_input($direccion_agente);
@ -738,6 +758,7 @@ if ($update_agent) { // if modified some agent paramenter
'id_os' => $id_os,
'modo' => $modo,
'alias' => $alias,
'alias_as_name' => $alias_as_name,
'direccion' => $direccion_agente,
'id_grupo' => $grupo,
'intervalo' => $intervalo,
@ -815,6 +836,7 @@ if ($id_agente) {
$alias = $nombre_agente;
}
}
$alias_as_name = $agent["alias_as_name"];
$direccion_agente = $agent["direccion"];
$grupo = $agent["id_grupo"];
$ultima_act = $agent["ultimo_contacto"];

View File

@ -84,6 +84,7 @@ CREATE TABLE IF NOT EXISTS `tagente` (
`update_alert_count` tinyint(1) NOT NULL default '0',
`alias` varchar(600) BINARY NOT NULL default '',
`transactional_agent` tinyint(1) NOT NULL default '0',
`alias_as_name` tinyint(2) NOT NULL default '0',
PRIMARY KEY (`id_agente`),
KEY `nombre` (`nombre`(255)),
KEY `direccion` (`direccion`),