diff --git a/pandora_console/ChangeLog b/pandora_console/ChangeLog index ebdd461d59..ef9e56cd44 100644 --- a/pandora_console/ChangeLog +++ b/pandora_console/ChangeLog @@ -1,3 +1,13 @@ +2010-07-21 Miguel de Dios + + * operation/agentes/estado_ultimopaquete.php: added code for sort by + data. + + * operation/agentes/estado_monitores.php, + godmode/agentes/module_manager.php: added the icons and source code for + order rows of list alerts by columns Module Name, Type, Interval and + Timestamp. + 2010-07-21 Miguel de Dios * include/functions_html.php: lost in previus commit the change to diff --git a/pandora_console/godmode/agentes/module_manager.php b/pandora_console/godmode/agentes/module_manager.php index 79dca89b23..34f45e978b 100644 --- a/pandora_console/godmode/agentes/module_manager.php +++ b/pandora_console/godmode/agentes/module_manager.php @@ -125,10 +125,87 @@ if ($multiple_delete) { echo "

".__('Assigned modules')."

"; +$url = 'index.php?sec=gagente&sec2=godmode/agentes/configurar_agente&tab=module&id_agente=' . $id_agente; +$selectNameUp = ''; +$selectNameDown = ''; +$selectServerUp = ''; +$selectServerDown = ''; +$selectTypeUp = ''; +$selectTypeDown = ''; +$selectIntervalUp = ''; +$selectIntervalDown = ''; +$sortField = get_parameter('sort_field'); +$sort = get_parameter('sort', 'none'); +$selected = 'border: 1px solid black;'; + +$order[] = array('field' => 'id_module_group', 'order' => 'ASC'); + +switch ($sortField) { + case 'name': + switch ($sort) { + case 'up': + $selectNameUp = $selected; + $order[] = array('field' => 'tagente_modulo.nombre', 'order' => 'ASC'); + break; + case 'down': + $selectNameDown = $selected; + $order[] = array('field' => 'tagente_modulo.nombre', 'order' => 'DESC'); + break; + } + break; + case 'server': + switch ($sort) { + case 'up': + $selectServerUp = $selected; + $order[] = array('field' => 'id_modulo', 'order' => 'ASC'); + break; + case 'down': + $selectServerDown = $selected; + $order[] = array('field' => 'id_modulo', 'order' => 'DESC'); + break; + } + break; + case 'type': + switch ($sort) { + case 'up': + $selectTypeUp = $selected; + $order[] = array('field' => 'id_tipo_modulo', 'order' => 'ASC'); + break; + case 'down': + $selectTypeDown = $selected; + $order[] = array('field' => 'id_tipo_modulo', 'order' => 'DESC'); + break; + } + break; + case 'interval': + switch ($sort) { + case 'up': + $selectIntervalUp = $selected; + $order[] = array('field' => 'module_interval', 'order' => 'ASC'); + break; + case 'down': + $selectIntervalDown = $selected; + $order[] = array('field' => 'module_interval', 'order' => 'DESC'); + break; + } + break; + default: + $selectNameUp = $selected; + $selectNameDown = ''; + $selectServerUp = ''; + $selectServerDown = ''; + $selectTypeUp = ''; + $selectTypeDown = ''; + $selectIntervalUp = ''; + $selectIntervalDown = ''; + $order[] = array('field' => 'nombre', 'order' => 'ASC'); + break; +} + $modules = get_db_all_rows_filter ('tagente_modulo', array ('delete_pending' => 0, 'id_agente' => $id_agente, - 'order' => 'id_module_group, nombre'), + 'order' => $order), array ('id_agente_modulo', 'id_tipo_modulo', 'descripcion', 'nombre', 'max', 'min', 'module_interval', 'id_modulo', 'id_module_group', 'disabled',)); @@ -140,12 +217,20 @@ if ($modules === false) { $table->width = '95%'; $table->head = array (); -$table->head[0] = __('Name'); +$table->head[0] = __('Name') . ' ' . + '' . + ''; if ($isFunctionPolicies !== ENTERPRISE_NOT_HOOK) $table->head[1] = "" . __('P.') . ""; -$table->head[2] = "" . __('S.') . ""; -$table->head[3] = __('Type'); -$table->head[4] = __('Interval'); +$table->head[2] = "" . __('S.') . "" . ' ' . + '' . + ''; +$table->head[3] = __('Type') . ' ' . + '' . + ''; +$table->head[4] = __('Interval') . ' ' . + '' . + ''; $table->head[5] = __('Description'); $table->head[6] = __('Max/Min'); $table->head[7] = __('Action'); @@ -153,10 +238,10 @@ $table->head[7] = __('Action'); $table->style = array (); $table->style[0] = 'font-weight: bold'; $table->size = array (); -$table->size[2] = '35px'; +$table->size[2] = '55px'; $table->size[7] = '65px'; $table->align = array (); -$table->align[2] = 'left'; +$table->align[2] = 'center'; $table->align[7] = 'left'; $table->data = array (); diff --git a/pandora_console/operation/agentes/estado_monitores.php b/pandora_console/operation/agentes/estado_monitores.php index bfb834d9aa..4e892b9a9c 100644 --- a/pandora_console/operation/agentes/estado_monitores.php +++ b/pandora_console/operation/agentes/estado_monitores.php @@ -24,6 +24,99 @@ if (!isset ($id_agente)) { exit; } +$id_agent = get_parameter('id_agente'); +$url = 'index.php?sec=estado&sec2=operation/agentes/ver_agente&id_agente=' . $id_agent; +$selectTypeUp = ''; +$selectTypeDown = ''; +$selectNameUp = ''; +$selectNameDown = ''; +$selectStatusUp = ''; +$selectStatusDown = ''; +$selectDataUp = ''; +$selectDataDown = ''; +$selectLastContactUp = ''; +$selectLastContactDown = ''; +$sortField = get_parameter('sort_field'); +$sort = get_parameter('sort', 'none'); +$selected = 'border: 1px solid black;'; + +switch ($sortField) { + case 'type': + switch ($sort) { + case 'up': + $selectTypeUp = $selected; + $order = array('field' => 'tagente_modulo.id_tipo_modulo', 'order' => 'ASC'); + break; + case 'down': + $selectTypeDown = $selected; + $order = array('field' => 'tagente_modulo.id_tipo_modulo', 'order' => 'DESC'); + break; + } + break; + case 'name': + switch ($sort) { + case 'up': + $selectNameUp = $selected; + $order = array('field' => 'tagente_modulo.nombre', 'order' => 'ASC'); + break; + case 'down': + $selectNameDown = $selected; + $order = array('field' => 'tagente_modulo.nombre', 'order' => 'DESC'); + break; + } + break; + case 'status': + switch ($sort) { + case 'up': + $selectStatusUp = $selected; + $order = array('field' => 'tagente_estado.estado', 'order' => 'ASC'); + break; + case 'down': + $selectStatusDown = $selected; + $order = array('field' => 'tagente_estado.estado', 'order' => 'DESC'); + break; + } + break; + case 'data': + switch ($sort) { + case 'up': + $selectDataUp = $selected; + $order = array('field' => 'tagente_estado.datos', 'order' => 'ASC'); + break; + case 'down': + $selectDataDown = $selected; + $order = array('field' => 'tagente_estado.datos', 'order' => 'DESC'); + break; + } + break; + case 'last_contact': + switch ($sort) { + case 'up': + $selectLastContactUp = $selected; + $order = array('field' => 'tagente_estado.utimestamp', 'order' => 'ASC'); + break; + case 'down': + $selectLastContactDown = $selected; + $order = array('field' => 'tagente_estado.utimestamp', 'order' => 'DESC'); + break; + } + break; + default: + $selectTypeUp = ''; + $selectTypeDown = ''; + $selectNameUp = $selected; + $selectNameDown = ''; + $selectStatusUp = ''; + $selectStatusDown = ''; + $selectDataUp = ''; + $selectDataDown = ''; + $selectLastContactUp = ''; + $selectLastContactDown = ''; + + $order = array('field' => 'tagente_modulo.nombre', 'order' => 'ASC'); + break; +} + // Get all module from agent $sql = sprintf (" SELECT * @@ -35,8 +128,8 @@ $sql = sprintf (" AND tagente_modulo.disabled = 0 AND tagente_modulo.delete_pending = 0 AND tagente_estado.utimestamp != 0 - ORDER BY tagente_modulo.id_module_group , tagente_modulo.nombre - ", $id_agente); + ORDER BY tagente_modulo.id_module_group , %s %s + ", $id_agente, $order['field'], $order['order']); $modules = get_db_all_rows_sql ($sql); if (empty ($modules)) { @@ -50,13 +143,23 @@ $table->head = array (); $table->data = array (); $table->head[0] = ''; -$table->head[1] = __('Type'); -$table->head[2] = __('Module name'); +$table->head[1] = __('Type') . ' ' . + '' . + ''; +$table->head[2] = __('Module name') . ' ' . + '' . + ''; $table->head[3] = __('Description'); -$table->head[4] = __('Status'); -$table->head[5] = __('Data'); +$table->head[4] = __('Status') . ' ' . + '' . + ''; +$table->head[5] = __('Data') . ' ' . + '' . + ''; $table->head[6] = __('Graph'); -$table->head[7] = __('Last contact'); +$table->head[7] = __('Last contact') . ' ' . + '' . + ''; $table->align = array("left","left","left","left","center"); diff --git a/pandora_console/operation/agentes/estado_ultimopaquete.php b/pandora_console/operation/agentes/estado_ultimopaquete.php index 9b112733d0..c672f3b9c4 100644 --- a/pandora_console/operation/agentes/estado_ultimopaquete.php +++ b/pandora_console/operation/agentes/estado_ultimopaquete.php @@ -59,6 +59,8 @@ $selectIntervalUp = ''; $selectIntervalDown = ''; $selectTimestampUp = ''; $selectTimestampDown = ''; +$selectDataUp = ''; +$selectDataDown = ''; $order[] = array('field' => 'id_module_group', 'order' => 'ASC'); @@ -111,6 +113,19 @@ switch ($sortField) { break; } break; + case 'data': + switch ($sort) { + case 'up': + $selectDataUp = $selected; + $order[] = array('field' => 'tagente_estado.datos', 'order' => 'ASC'); + break; + case 'down': + $selectDataDown = $selected; + $order[] = array('field' => 'tagente_estado.datos', 'order' => 'DESC'); + break; + } + break; + break; default: $selectNameUp = $selected; $selectNameDown = ''; @@ -136,7 +151,7 @@ if ($modules === false) { return; } -echo ""; +echo "
"; echo ""; echo ""; echo ""; -echo ""; +echo ""; echo ""; echo ""; echo "
".__('Module name') . ' ' . '' . @@ -151,7 +166,10 @@ echo "".__('int') . ' ' . ''; echo "".__('Description') . "".__('Data') . "".__('Data') . ' ' . + '' . + ''; +echo "".__('Graph')."".__('Raw Data')."".__('Timestamp') . ' ' .