# | Line 1 | Line 1 | |
---|---|---|
1 | <?php | |
2 | ||
3 | – | # Navigation for the i-scream reports. |
4 | – | # pjm2@ukc.ac.uk |
3 | # | |
4 | < | # CONFIGURABLE CONSTANTS |
4 | > | # i-scream central monitoring system |
5 | > | # http://www.i-scream.org |
6 | > | # Copyright (C) 2000-2002 i-scream |
7 | > | # |
8 | > | # This program is free software; you can redistribute it and/or |
9 | > | # modify it under the terms of the GNU General Public License |
10 | > | # as published by the Free Software Foundation; either version 2 |
11 | > | # of the License, or (at your option) any later version. |
12 | > | # |
13 | > | # This program is distributed in the hope that it will be useful, |
14 | > | # but WITHOUT ANY WARRANTY; without even the implied warranty of |
15 | > | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
16 | > | # GNU General Public License for more details. |
17 | > | # |
18 | > | # You should have received a copy of the GNU General Public License |
19 | > | # along with this program; if not, write to the Free Software |
20 | > | # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. |
21 | # | |
22 | ||
23 | < | # The report directory, and the number of days to display. |
10 | < | $reportDirectory = "/home/cut/pjm2/webpages/reports"; |
11 | < | $maxDaysShown = 7; |
23 | > | # CONFIGURABLE CONSTANTS: - |
24 | ||
25 | < | # Page appearance. |
14 | < | $scaleImage = "24hour.gif"; |
15 | < | $lineColor = "#9999ff"; |
25 | > | include("browser_config.inc.php"); |
26 | ||
17 | – | # Files to include |
18 | – | $titleHTML = "title.inc"; |
19 | – | $bottomHTML = "bottom.inc"; |
20 | – | $machineNameHTML = "machine_name.inc"; |
21 | – | $reportHTML = "report.inc"; |
22 | – | |
23 | – | # What are the names of the report files? |
24 | – | $reportLimitsFile = "i-maxmin.txt"; |
25 | – | $reportChartFile = "i-chart.gif"; |
26 | – | $reportChartDataFile = "i-data.txt"; |
27 | – | |
28 | – | # Submission details. |
29 | – | $formMethod = "GET"; |
30 | – | $thisPage = "browser.php"; |
31 | – | |
32 | – | # Leave this alone unless you know what you're doing ;) |
33 | – | $minFileSize = 33; |
34 | – | |
27 | # | |
28 | # END CONFIGURATION | |
29 | ||
# | Line 40 | Line 32 | $minFileSize = 33; | |
32 | ||
33 | ||
34 | # Used to return whether or not a report data file is empty. | |
35 | < | function isReportEmpty($filename) { |
36 | < | if (filesize($filename) < minFileSize) { |
35 | > | function isReportEmpty($filename, $minFileSize) { |
36 | > | if (filesize($filename) < $minFileSize) { |
37 | return TRUE; | |
38 | } | |
39 | return FALSE; | |
40 | } | |
41 | ||
42 | ||
43 | < | # return an array of subdirectories in the current directory. |
52 | < | function getdirArray($dir='./',$sort='asort') { |
53 | < | global $dir_file_count; |
54 | < | if ( is_dir($dir) ) { |
55 | < | $fd = @opendir($dir); |
56 | < | while ( ($part = @readdir($fd)) == TRUE ) { |
57 | < | clearstatcache(); |
58 | < | if ($part != "." && $part != "..") { |
59 | < | $dir_array[] = $part; |
60 | < | } |
61 | < | } |
62 | < | if($fd == TRUE) { |
63 | < | closedir($fd); |
64 | < | } |
65 | < | if (is_array($dir_array)) { |
66 | < | $sort($dir_array); |
67 | < | $dir_file_count = count($dir_array); |
68 | < | Return $dir_array; |
69 | < | } else { |
70 | < | Return FALSE; |
71 | < | } |
72 | < | } else { |
73 | < | Return FALSE; |
74 | < | } |
75 | < | } |
43 | > | include("iutils.inc.php"); |
44 | ||
45 | ?> | |
46 | ||
47 | < | <? include($titleHTML); ?> |
47 | > | <?php include($titleHTML); ?> |
48 | ||
49 | < | <hr weight="1" color="<? echo $lineColor ?>"> |
49 | > | <hr weight="1" color="<?php echo $lineColor ?>"> |
50 | ||
51 | <b>Most recent reports available</b> | |
52 | < | <form method="<? echo $formMethod ?>" action="<? echo $thisPage ?>"> |
53 | < | <? |
52 | > | <form method="<?php echo $formMethod ?>" action="<?php echo $thisPage ?>"> |
53 | > | <?php |
54 | ||
55 | $file_array = getdirArray($reportDirectory,'rsort'); | |
56 | print "<select size=\"1\" name=\"day\">"; | |
57 | + | if ($day) { ?> |
58 | + | <option selected value="<?php echo $day ?>"><?php echo $day ?></option> |
59 | + | <option value="">----------------</option> |
60 | + | <?php } |
61 | foreach($file_array as $file_name) { | |
62 | < | if (is_dir($file_name)) { |
62 | > | #if (is_dir($file_name)) { |
63 | > | if (preg_match("/^[0-9]{4}\-[0-9]{2}\-[0-9]{2}$/", $file_name)) { |
64 | $i++; | |
65 | print "<option value=\"$file_name\">$file_name</option>"; | |
66 | } | |
# | Line 101 | Line 74 | function getdirArray($dir='./',$sort='asort') { | |
74 | <input type="submit" name="submit" value="Go"> | |
75 | </form> | |
76 | ||
77 | < | <hr weight="1" color="<? echo $lineColor ?>"> |
77 | > | <hr weight="1" color="<?php echo $lineColor ?>"> |
78 | ||
79 | < | <? if ($day) { ?> |
79 | > | <?php if ($day) { ?> |
80 | ||
81 | < | <b>Available reports for <? echo $day ?></b> |
81 | > | <b>Available reports for <?php echo $day ?></b> |
82 | ||
83 | < | <form method="<? echo $formMethod ?>" action="<? echo $thisPage ?>"> |
83 | > | <form method="<?php echo $formMethod ?>" action="<?php echo $thisPage ?>"> |
84 | <select size="1" name="machine_name"> | |
85 | < | <? if ($machine_name) { ?> |
86 | < | <option selected value="<? echo $machine_name ?>"><? echo $machine_name ?></option> |
85 | > | <?php if ($machine_name) { ?> |
86 | > | <option selected value="<?php echo $machine_name ?>"><?php echo $machine_name ?></option> |
87 | <option value="">----------------</option> | |
88 | < | <? } else { ?> |
88 | > | <?php } else { ?> |
89 | <option selected value="">[select machine]</option> | |
90 | < | <? } ?> |
91 | < | <? include("$day/$machineNameHTML"); ?> |
90 | > | <?php } ?> |
91 | > | <?php include("$reportDirectory/$day/$machineNameHTML"); ?> |
92 | </select> | |
93 | ||
94 | <select size="1" name="report"> | |
95 | < | <? if ($report) { ?> |
96 | < | <option selected value="<? echo $report ?>"><? echo $report ?></option> |
95 | > | <?php if ($report) { ?> |
96 | > | <option selected value="<?php echo $report ?>"><?php echo $report ?></option> |
97 | <option value="">----------------</option> | |
98 | < | <? } else { ?> |
98 | > | <?php } else { ?> |
99 | <option selected value="">[select report]</option> | |
100 | < | <? } ?> |
101 | < | <? include("$day/$reportHTML"); ?> |
100 | > | <?php } ?> |
101 | > | <?php include("$reportDirectory/$day/$reportHTML"); ?> |
102 | </select> | |
103 | ||
104 | < | <input type="hidden" name="day" value="<? echo $day ?>"> |
104 | > | <input type="hidden" name="day" value="<?php echo $day ?>"> |
105 | <input type="submit" name="submit" value="Show"> | |
106 | </form> | |
107 | ||
108 | < | <hr weight="1" color="<? echo $lineColor ?>"> |
108 | > | <hr weight="1" color="<?php echo $lineColor ?>"> |
109 | ||
110 | < | <? } ?> |
110 | > | <?php } ?> |
111 | ||
112 | </p> | |
113 | ||
114 | ||
115 | < | <? |
115 | > | <?php |
116 | if ($submit == "Show" && $machine_name && $report) { | |
117 | ||
118 | < | include("$day/$machine_name/$report/$reportLimitsFile"); |
119 | < | |
147 | < | $url = escapeshellcmd("$day/$machine_name/$report/$reportChartFile"); |
148 | < | if (isReportEmpty("$day/$machine_name/$report/$reportChartDataFile")) { |
118 | > | $url = "$webRoot/$day/$machine_name/$report/$reportChartFile"; |
119 | > | if (isReportEmpty("$reportDirectory/$day/$machine_name/$report/$reportChartDataFile", $minFileSize)) { |
120 | echo "Host <b>$machine_name</b> did not send any information about <b>$report</b> on <b>$day</b>. Please select another report."; | |
121 | } | |
122 | < | else if (file_exists($url)) { ?> |
122 | > | else if (file_exists("$reportDirectory/$day/$machine_name/$report/$reportChartFile")) { |
123 | > | |
124 | > | include("$reportDirectory/$day/$machine_name/$report/$reportLimitsFile"); |
125 | > | |
126 | > | ?> |
127 | > | |
128 | > | <center><b>[<?php echo $machine_name; ?>] - <?php echo $report; ?></b></center> |
129 | ||
153 | – | <center><b>[<? echo $machine_name; ?>] - <? echo $report; ?></b></center> |
154 | – | |
130 | <table border="0" cellpadding="0" cellspacing="0"> | |
131 | <tr> | |
132 | <td align="right" valign="top"> | |
133 | < | <font size="2"><? printf("%.1f", $max_value); ?></font> |
133 | > | <font size="2"><?php printf("%.1f", $max_value); ?></font> |
134 | </td> | |
135 | <td rowspan="2"> | |
136 | < | <img src="<? echo $url; ?>" width="500" height="250"> |
136 | > | <img src="<?php echo $url; ?>" width="500" height="250"> |
137 | </td> | |
138 | </tr> | |
139 | <tr> | |
140 | <td align="right" valign="bottom"> | |
141 | < | <font size="2"><? echo $min_value; ?></font> |
141 | > | <font size="2"><?php echo $min_value; ?></font> |
142 | </td> | |
143 | </tr> | |
144 | <tr> | |
145 | <td> </td> | |
146 | < | <td><img src="<? echo $scaleImage ?>" width="500" height="39"></td> |
146 | > | <td><img src="<?php echo $scaleImage ?>" width="500" height="39"></td> |
147 | </tr> | |
148 | </table> | |
149 | ||
150 | < | <hr weigth="1" color="<? echo $lineColor ?>"> |
150 | > | <hr weight="1" color="<?php echo $lineColor ?>"> |
151 | ||
152 | + | <b>Latest data</b> |
153 | + | <p> |
154 | + | Latest set of data received from |
155 | + | <a href="<?php echo "latest.php?machine=$machine_name"; ?>"><?php echo $machine_name?></a> |
156 | + | <br> |
157 | + | Alerts for <a href="alerts.php?machine=<?php echo $machine_name?>"><?php echo $machine_name?></a> |
158 | + | |
159 | + | |
160 | + | <hr weight="1" color="<?php echo $lineColor ?>"> |
161 | + | |
162 | <b>Extra data</b> | |
163 | <p> | |
164 | < | <a href="<? echo "$day/$machine_name/$report/$reportChartDataFile" ?>">Raw plot data</a><br> |
165 | < | <a href="<? echo "$day/$machine_name/$report/$reportChartFile" ?>">GIF chart</a><br> |
166 | < | <a href="<? echo "$day/$machine_name/$report/$reportLimitsFile" ?>">PHP y-axis limits include</a> |
164 | > | <a href="<?php echo "$webRoot/$day/$machine_name/$report/$reportChartDataFile" ?>">Raw plot data</a><br> |
165 | > | <a href="<?php echo "$webRoot/$day/$machine_name/$report/$reportChartFile" ?>">GIF chart</a><br> |
166 | > | <a href="<?php echo "$webRoot/$day/$machine_name/$report/$reportLimitsFile" ?>">PHP y-axis limits include</a> |
167 | ||
168 | < | <? } |
168 | > | <?php } |
169 | else { | |
170 | echo "<p>The report could not be found. Somebody must have deleted it!</p>"; | |
171 | } | |
# | Line 189 | Line 174 | function getdirArray($dir='./',$sort='asort') { | |
174 | ||
175 | ?> | |
176 | ||
177 | < | <? include($bottomHTML); ?> |
177 | > | <?php include($bottomHTML); ?> |
– | Removed lines |
+ | Added lines |
< | Changed lines |
> | Changed lines |