diff --git a/pandora_console/ChangeLog b/pandora_console/ChangeLog index c6fe4554ed..a52a424c08 100644 --- a/pandora_console/ChangeLog +++ b/pandora_console/ChangeLog @@ -1,3 +1,7 @@ +2008-10-17 Evi Vanoost + + * godmode/db/db_purge.php: Bug fix where db_purge wouldn't work + correctly if all was selected. Also added inc data to the count 2008-10-17 Sancho Lerena diff --git a/pandora_console/godmode/db/db_purge.php b/pandora_console/godmode/db/db_purge.php index 18b5880e52..9a45b4c2e4 100644 --- a/pandora_console/godmode/db/db_purge.php +++ b/pandora_console/godmode/db/db_purge.php @@ -79,12 +79,15 @@ $data["total"] = 0; # Purge data using dates if (isset($_POST["purgedb"])) { $from_date = get_parameter_post ("date_purge",0); //0: No time selected - if ($id_agent != -1) { + if ($id_agent > 0) { echo __('Purge task launched for agent')." ".dame_nombre_agente ($id_agent)." :: ".__('Data older than')." ".human_time_description ($from_date); echo "

".__('Please be patient. This operation can take a long time depending on the amount of modules.')."

"; $sql = sprintf ("SELECT id_agente_modulo FROM tagente_modulo WHERE id_agente = %d",$id_agent); $result=get_db_all_rows_sql($sql); + if (empty ($result)) { + $result = array (); + } //Made it in a transaction so it gets done all at once. process_sql ("SET AUTOCOMMIT=0;"); @@ -116,7 +119,7 @@ if (isset($_POST["purgedb"])) { } else { //All agents echo __('Deleting records for all agents'); - flush(); + flush (); //ob_flush(); $query = sprintf("DELETE FROM `tagente_datos` WHERE `utimestamp` < '%d'",$from_date); process_sql ($query); @@ -158,7 +161,7 @@ if ($id_agent > 0) { } echo "

".$title."

"; - +flush (); $query = ""; if ($id_agent > 0) { //If the agent is not All or Not selected $query = sprintf (" AND id_agente_modulo = ANY(SELECT id_agente_modulo FROM tagente_modulo WHERE id_agente = '%d' ",$id_agent); @@ -172,8 +175,13 @@ $data["1month"] = get_db_sql (sprintf ("SELECT COUNT(id_agente_datos) FROM tagen $data["3month"] = get_db_sql (sprintf ("SELECT COUNT(id_agente_datos) FROM tagente_datos WHERE utimestamp > %d %s", $time["3month"], $query)); $data["total"] = get_db_sql (sprintf ("SELECT COUNT(id_agente_datos) FROM tagente_datos WHERE 1=1 %s", $query)); - - +$data["1day"] += get_db_sql (sprintf ("SELECT COUNT(id_adi) FROM tagente_datos_inc WHERE utimestamp > %d %s", $time["1day"], $query)); +$data["3day"] += get_db_sql (sprintf ("SELECT COUNT(id_adi) FROM tagente_datos_inc WHERE utimestamp > %d %s", $time["3day"], $query)); +$data["1week"] += get_db_sql (sprintf ("SELECT COUNT(id_adi) FROM tagente_datos_inc WHERE utimestamp > %d %s", $time["1week"], $query)); +$data["2week"] += get_db_sql (sprintf ("SELECT COUNT(id_adi) FROM tagente_datos_inc WHERE utimestamp > %d %s", $time["2week"], $query)); +$data["1month"] += get_db_sql (sprintf ("SELECT COUNT(id_adi) FROM tagente_datos_inc WHERE utimestamp > %d %s", $time["1month"], $query)); +$data["3month"] += get_db_sql (sprintf ("SELECT COUNT(id_adi) FROM tagente_datos_inc WHERE utimestamp > %d %s", $time["3month"], $query)); +$data["total"] += get_db_sql (sprintf ("SELECT COUNT(id_adi) FROM tagente_datos_inc WHERE 1=1 %s", $query)); $data["1day"] += get_db_sql (sprintf ("SELECT COUNT(id_tagente_datos_string) FROM tagente_datos_string WHERE utimestamp > %d %s", $time["1day"], $query)); $data["3day"] += get_db_sql (sprintf ("SELECT COUNT(id_tagente_datos_string) FROM tagente_datos_string WHERE utimestamp > %d %s", $time["3day"], $query));