".__('Pandora Agents')." > "; echo __('Full list of Monitors').""; $ag_freestring = get_parameter ("ag_freestring", ""); $ag_modulename = get_parameter ("ag_modulename", ""); $ag_group = get_parameter ("ag_group", -1); $offset = get_parameter ("offset", 0); $status = get_parameter ("status", 0); $URL = "index.php?sec=estado&sec2=operation/agentes/status_monitor&refr=60"; echo "
"; echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; echo "
".__('Group').""; echo ""; echo ""; echo __('Monitor status'); echo ""; echo ""; echo "
".__('Module name')." "; echo ""; echo __('Free text'); echo ""; echo ""; echo ""; echo ""; echo "
"; // Begin Build SQL sentences $SQL_pre = "SELECT tagente_modulo.id_agente_modulo, tagente.nombre, tagente_modulo.nombre, tagente_modulo.descripcion, tagente.id_grupo, tagente.id_agente, tagente_modulo.id_tipo_modulo, tagente_modulo.module_interval, tagente_estado.datos, tagente_estado.utimestamp, tagente_estado.timestamp "; $SQL_pre_count = "SELECT count(tagente_modulo.id_agente_modulo) "; $SQL = " FROM tagente, tagente_modulo, tagente_estado WHERE tagente.id_agente = tagente_modulo.id_agente AND tagente_modulo.disabled = 0 AND tagente.disabled = 0 AND tagente_modulo.id_tipo_modulo in (2, 9, 12, 18, 6, 100) AND tagente_estado.id_agente_modulo = tagente_modulo.id_agente_modulo "; // Agent group selector if ($ag_group > 1) $SQL .=" AND tagente.id_grupo = ".$ag_group; else { // User has explicit permission on group 1 ? $sql = sprintf ("SELECT COUNT(id_grupo) FROM tusuario_perfil WHERE id_usuario='%s' AND id_grupo = 1", $config['id_user']); $all_group = get_db_sql ($sql); if ($all_group == 0) $SQL .= sprintf (" AND tagente.id_grupo IN (SELECT id_grupo FROM tusuario_perfil WHERE id_usuario='%s') ", $config['id_user']); } // Module name selector // This code thanks for an idea from Nikum, nikun_h@hotmail.com if ($ag_modulename != "") $SQL .= " AND tagente_modulo.nombre = '$ag_modulename'"; // Freestring selector if ($ag_freestring != "") $SQL .= " AND ( tagente.nombre LIKE '%".$ag_freestring."%' OR tagente_modulo.nombre LIKE '%".$ag_freestring."%' OR tagente_modulo.descripcion LIKE '%".$ag_freestring."%') "; // Status selector if ($status == 1) $SQL .= " AND tagente_estado.estado = 0 "; elseif ($status == 0) $SQL .= " AND tagente_estado.estado = 1 "; elseif ($status == 2) $SQL .= " AND (UNIX_TIMESTAMP()-tagente_estado.utimestamp ) > (tagente_estado.current_interval * 2)"; // Final order $SQL .= " ORDER BY tagente.id_grupo, tagente.nombre"; // Build final SQL sentences $SQL_FINAL = $SQL_pre . $SQL; $SQL_COUNT = $SQL_pre_count . $SQL; $counter = get_db_sql ($SQL_COUNT); if ( $counter > $config["block_size"]) { pagination ($counter, $URL, $offset); $SQL_FINAL .= " LIMIT $offset , ".$config["block_size"]; } if ($counter > 0) { echo ""; $color =1; $result=mysql_query($SQL_FINAL); while ($data=mysql_fetch_array($result)){ //while there are agents if ($color == 1){ $tdcolor="datos"; $color =0; } else { $tdcolor="datos2"; $color =1; } if ($data[7] == 0){ $my_interval = give_agentinterval($data[5]); } else { $my_interval = $data[7]; } if ($status == 2) { $seconds = time() - $data[9]; if ($seconds < ($my_interval*2)) continue; } echo ""; echo ""; echo ""; echo ""; } echo "
".__('Agent')." ".__('Type')." ".__('Name')." ".__('Description')." ".__('Interval')." ".__('Status')." ".__('Timestamp')."
"; echo ""; echo ""; echo ""; echo "".strtoupper(substr($data[1],0,21)).""; echo ""; echo "". substr($data[2],0,21). "".substr($data[3],0,30).""; echo $my_interval; echo ""; if ($data[8] > 0){ echo ""; } else { echo ""; } echo ""; $seconds = time() - $data[9]; if ($seconds >= ($my_interval*2)) echo ""; else echo ""; echo human_time_comparation ($data[10]); echo "
"; } else { echo "
".__('This group doesn\'t have any monitor')."
"; } echo ""; echo ""; echo ""; echo ""; echo "
"; echo "  ".__('Monitor up')."  ".__('Monitor down')."
"; ?>