2012-01-23 Juan Manuel Ramon <juanmanuel.ramon@artica.es>

* pandoradb.sql
	 pandoradb.postgreSQL.sql
 	 pandoradb.oracle.sql
 	 extras/pandoradb_migrate_4.0.x_to_4.1.mysql.sql
	 extras/pandoradb_migrate_4.0.x_to_4.1.oracle.sql
	 extras/pandoradb_migrate_4.0.x_to_4.1.postgreSQL.sql: Modified
	 tagente table.
 	
	* operation/agentes/estado_generalagente.php
	 operation/agentes/url_address.php
	 operation/agentes/ver_agente.php
	 godmode/agentes/agent_incidents.php
	 godmode/agentes/configurar_agente.php
	 godmode/agentes/agent_manager.php: Added url_address functionality.

	Pending task: #3472445



git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@5409 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
This commit is contained in:
juanmanuelr 2012-01-23 18:36:22 +00:00
parent 1950f614e7
commit 141e5dd424
13 changed files with 122 additions and 10 deletions

View File

@ -1,3 +1,22 @@
2012-01-23 Juan Manuel Ramon <juanmanuel.ramon@artica.es>
* pandoradb.sql
pandoradb.postgreSQL.sql
pandoradb.oracle.sql
extras/pandoradb_migrate_4.0.x_to_4.1.mysql.sql
extras/pandoradb_migrate_4.0.x_to_4.1.oracle.sql
extras/pandoradb_migrate_4.0.x_to_4.1.postgreSQL.sql: Modified
tagente table.
* operation/agentes/estado_generalagente.php
operation/agentes/url_address.php
operation/agentes/ver_agente.php
godmode/agentes/agent_incidents.php
godmode/agentes/configurar_agente.php
godmode/agentes/agent_manager.php: Added url_address functionality.
Pending task: #3472445
2012-01-23 Ramon Novoa <rnovoa@artica.es>
* include/functions_netflow.php: Aesthetic fixes to netflow report

View File

@ -58,3 +58,9 @@ ALTER TABLE `tusuario` ADD COLUMN `disabled` int(4) NOT NULL DEFAULT 0;
-- -----------------------------------------------------
ALTER TABLE `tincidencia` ADD COLUMN `id_agent` int(10) unsigned NULL default 0;
-- -----------------------------------------------------
-- Table `tagente`
-- -----------------------------------------------------
ALTER TABLE `tagente` ADD COLUMN `url_address` mediumtext NULL default '';

View File

@ -60,3 +60,8 @@ CREATE OR REPLACE TRIGGER tnetflow_report_content_inc BEFORE INSERT ON tnetflow_
-- -----------------------------------------------------
alter table tincidencia add (id_agent NUMBER(10,0) default 0 NULL);
-- -----------------------------------------------------
-- Table `tagente`
-- -----------------------------------------------------
alter table tagente add (url_address CLOB default '' NULL);

View File

@ -48,3 +48,9 @@ CREATE TABLE "tnetflow_report_content" (
-- -----------------------------------------------------
ALTER TABLE "tincidencia" ADD COLUMN "id_agent" INTEGER(10) NULL DEFAULT 0;
-- -----------------------------------------------------
-- Table `tagente`
-- -----------------------------------------------------
ALTER TABLE "tagente" ADD COLUMN "url_address" text NULL default '';

View File

@ -17,9 +17,6 @@
global $config;
require_once ('include/functions_incidents.php');
/*enterprise_include ('include/functions_policies.php');
enterprise_include ('include/functions_modules.php');
include_once($config['homedir'] . "/include/functions_agents.php");*/
check_login ();

View File

@ -312,6 +312,9 @@ if ($config['activate_gis']) {
$table->data[5][1] .= __('Enabled').' '.html_print_radio_button_extended ("update_gis_data", 0, '', $update_gis_data, false, '', 'style="margin-right: 40px;"', true);
}
$table->data[6][0] = __('Url address:');
$table->data[6][1] = html_print_input_text ('url_description', $url_description, '', 45, 255, true);
ui_toggle(html_print_table ($table, true), __('Advanced options'));
unset($table);

View File

@ -120,6 +120,7 @@ $update_gis_data = 0;
$unit = "";
$id_tag = array();
$tab_description = '';
$url_description = '';
$create_agent = (bool) get_parameter ('create_agent');
@ -140,6 +141,7 @@ if ($create_agent) {
$cascade_protection = (int) get_parameter_post ("cascade_protection", 0);
$icon_path = (string) get_parameter_post ("icon_path",'');
$update_gis_data = (int) get_parameter_post("update_gis_data", 0);
$url_description = (string) get_parameter("url_description");
$fields = db_get_all_fields_in_table('tagent_custom_fields');
@ -172,7 +174,8 @@ if ($create_agent) {
'server_name' => $server_name,
'id_parent' => $id_parent, 'custom_id' => $custom_id,
'icon_path' => $icon_path,
'update_gis_data' => $update_gis_data));
'update_gis_data' => $update_gis_data,
'url_address' => $url_description));
enterprise_hook ('update_agent', array ($id_agente));
if ($id_agente !== false) {
// Create custom fields for this agent
@ -191,7 +194,8 @@ if ($create_agent) {
' ID_parent: ' . $id_parent . ' Server: ' . $server_name .
' ID os: ' . $id_os . ' Disabled: ' . $disabled .
' Custom ID: ' . $custom_id . ' Cascade protection: ' . $cascade_protection .
' Icon path: ' . $icon_path . ' Update GIS data: ' . $update_gis_data;
' Icon path: ' . $icon_path . ' Update GIS data: ' . $update_gis_data .
' Url description: ' . $url_description;
db_pandora_audit("Agent management",
"Created agent $nombre_agente", false, false, $info);
@ -472,6 +476,7 @@ if ($update_agent) { // if modified some agent paramenter
$cascade_protection = (int) get_parameter_post ("cascade_protection", 0);
$icon_path = (string) get_parameter_post ("icon_path",'');
$update_gis_data = (int) get_parameter_post("update_gis_data", 0);
$url_description = (string) get_parameter("url_description");
$fields = db_get_all_fields_in_table('tagent_custom_fields');
@ -532,7 +537,8 @@ if ($update_agent) { // if modified some agent paramenter
'server_name' => $server_name,
'custom_id' => $custom_id,
'icon_path' => $icon_path,
'update_gis_data' => $update_gis_data),
'update_gis_data' => $update_gis_data,
'url_address' => $url_description),
array ('id_agente' => $id_agente));
if ($result === false) {
@ -544,7 +550,8 @@ if ($update_agent) { // if modified some agent paramenter
' ID OS: ' . $id_os . ' Disabled: ' . $disabled .
' Server Name: ' . $server_name . ' ID parent: ' . $id_parent .
' Custom ID: ' . $custom_id . ' Cascade Protection: ' . $cascade_protection .
' Icon Path: ' . $icon_path . 'Update GIS data: ' .$update_gis_data;
' Icon Path: ' . $icon_path . 'Update GIS data: ' .$update_gis_data .
' Url description: ' . $url_description;
enterprise_hook ('update_agent', array ($id_agente));
ui_print_success_message (__('Successfully updated'));
@ -593,6 +600,7 @@ if ($id_agente) {
$cascade_protection = $agent["cascade_protection"];
$icon_path = $agent["icon_path"];
$update_gis_data = $agent["update_gis_data"];
$url_description = $agent["url_address"];
}
$update_module = (bool) get_parameter ('update_module');

View File

@ -165,6 +165,13 @@ if ($config['activate_gis']) {
echo '</td></tr>';
}
// If the url description is setted
if ($agent['url_address'] != ''){
echo '<tr><td class="datos"><b>'.__('Url address').'</b></td>';
echo '<td class="datos2" colspan="2"><a href='.$agent["url_address"].'>' . $agent["url_address"] . '</a></td></tr>';
}
// Last contact
echo '<tr><td class="datos2"><b>'.__('Last contact')." / ".__('Remote').'</b></td><td class="datos2 f9" colspan="2">';
ui_print_timestamp ($agent["ultimo_contacto"]);

View File

@ -0,0 +1,31 @@
<?php
// Pandora FMS - http://pandorafms.com
// ==================================================
// Copyright (c) 2005-2010 Artica Soluciones Tecnologicas
// Please see http://pandorafms.org for full contribution list
// This program is free software; you can redistribute it and/or
// modify it under the terms of the GNU General Public License
// as published by the Free Software Foundation for version 2.
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
// Load global vars
global $config;
check_login ();
if (! check_acl ($config["id_user"], $id_grupo, "AW", $id_agente)) {
db_pandora_audit("ACL Violation",
"Trying to access agent manager");
require ("general/noaccess.php");
return;
}
echo "<iframe src=\"" . $agent['url_address'] . "\" width='100%' height=550>";
echo "</iframe>";
?>

View File

@ -582,7 +582,7 @@ if ($config['activate_gis']) {
$total_incidents = agents_get_count_incidents($id_agente);
/* Incident tab */
/* Incident tab */
if ($config['integria_enabled'] == 0 and $total_incidents > 0){
$incidenttab['text'] = '<a href="index.php?sec=gagente&amp;sec2=operation/agentes/ver_agente&tab=incident&id_agente='.$id_agente.'">'
. html_print_image ("images/book_edit.png", true, array ("title" =>__('Incidents')))
@ -598,6 +598,23 @@ $custom_fields['text']= '<a href="index.php?sec=estado&sec2=operation/agentes/ve
. html_print_image("images/note.png", true, array("title" => __('Custom fields')))
. '</a>';
/* Url address tab */
if ($agent['url_address'] != ''){
$urladdresstab['text'] = '<a href="index.php?sec=gagente&amp;sec2=operation/agentes/ver_agente&tab=url_address&id_agente='.$id_agente.'">'
. html_print_image ("images/link2.png", true, array ("title" =>__('Url address')))
. '</a>';
}
if($tab == 'url_address')
$urladdresstab['active'] = true;
else
$urladdresstab['active'] = false;
$custom_fields['text']= '<a href="index.php?sec=estado&sec2=operation/agentes/ver_agente&tab=custom_fields&id_agente='.$id_agente.'">'
. html_print_image("images/note.png", true, array("title" => __('Custom fields')))
. '</a>';
if ($tab == 'custom_fields') {
$custom_fields['active'] = true;
}
@ -626,6 +643,10 @@ if ($total_incidents){
$onheader['incident'] = $incidenttab;
}
if ($agent['url_address'] != ''){
$onheader['url_address'] = $urladdresstab;
}
foreach($config['extensions'] as $extension) {
if (isset($extension['extension_ope_tab'])) {
@ -700,6 +721,9 @@ switch($tab) {
case "incident":
$header_description = ' - ' . __('Incident');
break;
case "url_address":
$header_description = ' - ' . __('Url address');
break;
}
ui_print_page_header (__('Agent').'&nbsp;-&nbsp;'.mb_substr(agents_get_name($id_agente),0,25) . $header_description, $icon, false, "", false, $onheader);
@ -748,6 +772,9 @@ switch ($tab) {
case "incident":
require("godmode/agentes/agent_incidents.php");
break;
case "url_address":
require("operation/agentes/url_address.php");
break;
case "extension":
$found = false;
foreach($config['extensions'] as $extension) {

View File

@ -72,7 +72,8 @@ CREATE TABLE tagente (
--path in the server to the image of the icon representing the agent
icon_path VARCHAR2(127) DEFAULT NULL NULL ,
--set it to one to update the position data (altitude, longitude, latitude) when getting information from the agent or to 0 to keep the last value and don\'t update it
update_gis_data NUMBER(5, 0) DEFAULT 1 NOT NULL
update_gis_data NUMBER(5, 0) DEFAULT 1 NOT NULL,
url_address CLOB DEFAULT '' NULL
);
CREATE INDEX tagente_nombre_idx ON tagente(nombre);
CREATE INDEX tagente_direccion_idx ON tagente(direccion);

View File

@ -58,7 +58,8 @@ CREATE TABLE "tagente" (
--path in the server to the image of the icon representing the agent
"icon_path" VARCHAR(127) NULL DEFAULT NULL,
--set it to one to update the position data (altitude, longitude, latitude) when getting information from the agent or to 0 to keep the last value and don\'t update it
"update_gis_data" SMALLINT NOT NULL DEFAULT 1
"update_gis_data" SMALLINT NOT NULL DEFAULT 1,
"url_address" TEXT NULL default ''
);
CREATE INDEX "tagente_nombre_idx" ON "tagente"("nombre");
CREATE INDEX "tagente_direccion_idx" ON "tagente"("direccion");

View File

@ -59,6 +59,7 @@ CREATE TABLE IF NOT EXISTS `tagente` (
`timezone_offset` TINYINT(2) NULL DEFAULT '0' COMMENT 'nuber of hours of diference with the server timezone' ,
`icon_path` VARCHAR(127) NULL DEFAULT NULL COMMENT 'path in the server to the image of the icon representing the agent' ,
`update_gis_data` TINYINT(1) NOT NULL DEFAULT '1' COMMENT 'set it to one to update the position data (altitude, longitude, latitude) when getting information from the agent or to 0 to keep the last value and don\'t update it' ,
`url_address` mediumtext NULL default '',
PRIMARY KEY (`id_agente`),
KEY `nombre` (`nombre`),
KEY `direccion` (`direccion`),