/**************************************************************************
*
* SUMMARY.C - Nagios Alert Summary CGI
*
* Copyright (c) 2002-2006 Ethan Galstad (nagios@nagios.org)
* Last Modified: 03-21-2006
*
* License:
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 as
* published by the Free Software Foundation.
*
* 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.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*************************************************************************/
#include "../include/config.h"
#include "../include/common.h"
#include "../include/objects.h"
#include "../include/comments.h"
#include "../include/statusdata.h"
#include "../include/cgiutils.h"
#include "../include/getcgi.h"
#include "../include/cgiauth.h"
extern char main_config_file[MAX_FILENAME_LENGTH];
extern char url_images_path[MAX_FILENAME_LENGTH];
extern char url_stylesheets_path[MAX_FILENAME_LENGTH];
extern host *host_list;
extern hostgroup *hostgroup_list;
extern service *service_list;
extern servicegroup *servicegroup_list;
extern int log_rotation_method;
/* output types */
#define HTML_OUTPUT 0
#define CSV_OUTPUT 1
/* custom report types */
#define REPORT_NONE 0
#define REPORT_RECENT_ALERTS 1
#define REPORT_ALERT_TOTALS 2
#define REPORT_TOP_ALERTS 3
#define REPORT_HOSTGROUP_ALERT_TOTALS 4
#define REPORT_HOST_ALERT_TOTALS 5
#define REPORT_SERVICE_ALERT_TOTALS 6
#define REPORT_SERVICEGROUP_ALERT_TOTALS 7
/* standard report types */
#define SREPORT_NONE 0
#define SREPORT_RECENT_ALERTS 1
#define SREPORT_RECENT_HOST_ALERTS 2
#define SREPORT_RECENT_SERVICE_ALERTS 3
#define SREPORT_TOP_HOST_ALERTS 4
#define SREPORT_TOP_SERVICE_ALERTS 5
/* standard report times */
#define TIMEPERIOD_CUSTOM 0
#define TIMEPERIOD_TODAY 1
#define TIMEPERIOD_YESTERDAY 2
#define TIMEPERIOD_THISWEEK 3
#define TIMEPERIOD_LASTWEEK 4
#define TIMEPERIOD_THISMONTH 5
#define TIMEPERIOD_LASTMONTH 6
#define TIMEPERIOD_THISQUARTER 7
#define TIMEPERIOD_LASTQUARTER 8
#define TIMEPERIOD_THISYEAR 9
#define TIMEPERIOD_LASTYEAR 10
#define TIMEPERIOD_LAST24HOURS 11
#define TIMEPERIOD_LAST7DAYS 12
#define TIMEPERIOD_LAST31DAYS 13
#define AE_SOFT_STATE 1
#define AE_HARD_STATE 2
#define AE_HOST_ALERT 1
#define AE_SERVICE_ALERT 2
#define AE_HOST_PRODUCER 1
#define AE_SERVICE_PRODUCER 2
#define AE_HOST_DOWN 1
#define AE_HOST_UNREACHABLE 2
#define AE_HOST_UP 4
#define AE_SERVICE_WARNING 8
#define AE_SERVICE_UNKNOWN 16
#define AE_SERVICE_CRITICAL 32
#define AE_SERVICE_OK 64
=1= |