ViewVC Help
View File | Revision Log | Show Annotations | Revision Graph | Root Listing
root/i-scream/projects/cms/source/reports/php/alerts/alerts.php
Revision: 1.11
Committed: Fri Mar 16 20:09:16 2001 UTC (23 years, 8 months ago) by pjm2
Branch: MAIN
Changes since 1.10: +2 -0 lines
Log Message:
Put a spacer between each report (when all are viewed) and added a line
beneath the output when there are no reports available for a particular
machine.

File Contents

# User Rev Content
1 pjm2 1.1 <?php
2    
3     # Navigation for the i-scream alerts.
4     # pjm2@ukc.ac.uk
5     #
6     # CONFIGURABLE CONSTANTS: -
7    
8     include("alerts_config.inc.php");
9    
10     #
11     # END CONFIGURATION
12    
13     include("iutils.inc.php");
14    
15     function printLine($title) {
16     echo "<hr style=\"color:#9999ff;\">";
17     echo "<b>$title</b>";
18     }
19    
20 pjm2 1.2 function getValue($value, $alert) {
21     preg_match("/$value=([^\,\}]*)[\,\}]/", $alert, $matches);
22     return $matches[1];
23     }
24    
25 pjm2 1.1 function printAlert($machine, $alert) {
26 pjm2 1.5
27     include("alerts_config.inc.php");
28    
29 pjm2 1.2 $alertLevel = getValue("alertLevel", $alert);
30     $lastAlert = getValue("lastAlert", $alert);
31     $thresholdLevel = getValue("thresholdLevel", $alert);
32     $source = getValue("source", $alert);
33     $thresholdValue = getValue("thresholdValue", $alert);
34     $value = getValue("value", $alert);
35     $attributeName = getValue("attributeName", $alert);
36     $timeTillNextAlert = getValue("timeTillNextAlert", $alert);
37     $initialAlertTime = getValue("initialAlertTime", $alert);
38 pjm2 1.4
39 pjm2 1.5 $alertColour = $alertLevelColours[$alertLevel];
40     $alertLevel = $alertLevelNames[$alertLevel];
41 pjm2 1.6 $initialAlertTime = strftime("%x %X", intval($initialAlertTime / 1000));
42 pjm2 1.5
43 pjm2 1.4 echo <<<EOT
44    
45 pjm2 1.6 <table border="0" cellspacing="5">
46 pjm2 1.4 <tr>
47     <td><b>$attributeName</b></td>
48 pjm2 1.5 <td>&nbsp;</td>
49 pjm2 1.6 <td><font color="$alertColour" size="2"><b>$alertLevel</b></font></td>
50     <td>&nbsp;</td>
51 pjm2 1.4 </tr>
52     <tr>
53 pjm2 1.6 <td><font size="2">Threshold:</font></td>
54 pjm2 1.5 <td>$thresholdValue</td>
55 pjm2 1.6 <td><font size="2">Initially raised:</font></td>
56 pjm2 1.4 <td>$initialAlertTime</td>
57     </tr>
58     <tr>
59 pjm2 1.6 <td><font size="2">Alert value:</font></td>
60 pjm2 1.5 <td><b>$value</b></td>
61     <td><!--Next alert time:--> </td>
62     <td><!--$timeTillNextAlert--> </td>
63 pjm2 1.4 </tr>
64     </table>
65    
66     EOT;
67    
68     printLine("");
69    
70 pjm2 1.1 }
71    
72 pjm2 1.4 function printReports($machine) {
73 pjm2 1.7 # Get a list of all files in the machine's directory.
74     include("alerts_config.inc.php");
75     $alertArray = getdirArray("$alertDirectory/$machine", 'rsort');
76    
77     echo <<<EOT
78 pjm2 1.11 <p>&nbsp;</p>
79 pjm2 1.10 <table border="0" cellpadding="3" cellspacing="2" bgcolor="#000066" width="100%">
80     <tr>
81     <td>
82     <font color="white">
83     <b>
84 pjm2 1.7 Current alerts for $machine
85 pjm2 1.10 </b>
86     <font size="2">
87     <br>Sorted by time, latest first.
88     </font>
89     </font>
90     </td>
91     </tr>
92     <tr>
93     <td bgcolor="white">
94 pjm2 1.7
95     EOT;
96    
97     printLine("");
98    
99 pjm2 1.8 if ($alertArray != FALSE) {
100    
101     foreach($alertArray as $file_name) {
102     $input = file("$alertDirectory/$machine/$file_name");
103     $input = $input[0];
104     $alerts[] = $input;
105     }
106    
107     foreach ($alerts as $alert) {
108     printAlert($machine, $alert);
109     }
110 pjm2 1.7 }
111 pjm2 1.8 else {
112     echo "There are currently no alerts held about <b>$machine</b>";
113 pjm2 1.11 printLine("");
114 pjm2 1.7 }
115 pjm2 1.10
116     echo <<<EOT
117     </td>
118     </tr>
119     </table>
120     EOT;
121 pjm2 1.4 }
122    
123    
124 pjm2 1.1 ?>
125    
126     <? include($titleHTML); ?>
127    
128 pjm2 1.3 <? printLine("Display the latest alerts for a host"); ?>
129 pjm2 1.1
130     <form method="<? echo $formMethod ?>" action="<? echo $thisPage ?>">
131     <?
132    
133     $file_array = getdirArray($alertDirectory,'asort');
134     print "<select size=\"1\" name=\"machine\">";
135     if ($machine) { ?>
136     <option selected value="<? echo $machine ?>"><? echo $machine ?></option>
137     <option value="">----------------</option>
138     <? }
139 pjm2 1.9 foreach ($file_array as $file_name) {
140 pjm2 1.1 #if (is_dir($file_name)) {
141     print "<option value=\"$file_name\">$file_name</option>";
142     #}
143     }
144     print "</select>";
145    
146     ?>
147     <input type="submit" name="submit" value="Display">
148     </form>
149    
150     <? if ($machine) {
151 pjm2 1.3
152     printLine("");
153 pjm2 1.1
154 pjm2 1.9 if ($machine == "ALL") {
155     $machine_array = getdirArray($alertDirectory, 'asort');
156     foreach ($machine_array as $machine) {
157     printReports($machine);
158     }
159     }
160     else {
161     printReports($machine);
162     }
163 pjm2 1.1
164 pjm2 1.5 }
165     else {
166     printLine("");
167 pjm2 1.1 }
168    
169     ?>
170    
171     <? include($bottomHTML); ?>