# | Line 1 | Line 1 | |
---|---|---|
1 | <?php | |
2 | ||
3 | + | # |
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 | # Navigation for the i-scream reports. | |
24 | # pjm2@ukc.ac.uk | |
25 | # | |
26 | < | # CONFIGURABLE CONSTANTS |
7 | < | # |
26 | > | # CONFIGURABLE CONSTANTS: - |
27 | ||
28 | < | # The report directory, and the number of days to display. |
10 | < | $reportDirectory = "/home/cut/pjm2/webpages/reports"; |
11 | < | $maxDaysShown = 7; |
28 | > | include("browser_config.inc.php"); |
29 | ||
30 | < | # Page appearance. |
31 | < | $scaleImage = "24hour.gif"; |
15 | < | $lineColor = "#9999ff"; |
30 | > | # |
31 | > | # END CONFIGURATION |
32 | ||
17 | – | # Files to include |
18 | – | $titleHTML = "title.inc"; |
19 | – | $bottomHTML = "bottom.inc"; |
20 | – | $machineNameHTML = "machine_name.inc"; |
21 | – | $reportHTML = "report.inc"; |
33 | ||
23 | – | # What are the names of the report files? |
24 | – | $reportLimitsFile = "i-maxmin.txt"; |
25 | – | $reportChartFile = "i-chart.gif"; |
26 | – | $reportChartDataFile = "i-data.txt"; |
34 | ||
28 | – | # Submission details. |
29 | – | $formMethod = "GET"; |
30 | – | $thisPage = "browser.php"; |
35 | ||
32 | – | # Leave this alone unless you know what you're doing ;) |
33 | – | $minFileSize = 33; |
36 | ||
37 | < | # |
38 | < | # END CONFIGURATION |
39 | < | |
38 | < | |
39 | < | function isReportEmpty($filename) { |
40 | < | if (filesize($filename) < minFileSize) { |
37 | > | # Used to return whether or not a report data file is empty. |
38 | > | function isReportEmpty($filename, $minFileSize) { |
39 | > | if (filesize($filename) < $minFileSize) { |
40 | return TRUE; | |
41 | } | |
42 | return FALSE; | |
43 | } | |
44 | ||
46 | – | function getdirArray($dir='./',$sort='asort') { |
47 | – | global $dir_file_count; |
48 | – | if ( is_dir($dir) ) { |
49 | – | $fd = @opendir($dir); |
50 | – | while ( ($part = @readdir($fd)) == TRUE ) { |
51 | – | clearstatcache(); |
52 | – | if ($part != "." && $part != "..") { |
53 | – | $dir_array[] = $part; |
54 | – | } |
55 | – | } |
56 | – | if($fd == TRUE) { |
57 | – | closedir($fd); |
58 | – | } |
59 | – | if (is_array($dir_array)) { |
60 | – | $sort($dir_array); |
61 | – | $dir_file_count = count($dir_array); |
62 | – | Return $dir_array; |
63 | – | } else { |
64 | – | Return FALSE; |
65 | – | } |
66 | – | } else { |
67 | – | Return FALSE; |
68 | – | } |
69 | – | } |
45 | ||
46 | + | include("iutils.inc.php"); |
47 | + | |
48 | ?> | |
49 | ||
50 | < | <? include("title.inc"); ?> |
50 | > | <? include($titleHTML); ?> |
51 | ||
52 | <hr weight="1" color="<? echo $lineColor ?>"> | |
53 | ||
54 | <b>Most recent reports available</b> | |
55 | < | <form method="GET" action="browser.php"> |
55 | > | <form method="<? echo $formMethod ?>" action="<? echo $thisPage ?>"> |
56 | <? | |
57 | ||
58 | $file_array = getdirArray($reportDirectory,'rsort'); | |
59 | print "<select size=\"1\" name=\"day\">"; | |
60 | + | if ($day) { ?> |
61 | + | <option selected value="<? echo $day ?>"><? echo $day ?></option> |
62 | + | <option value="">----------------</option> |
63 | + | <? } |
64 | foreach($file_array as $file_name) { | |
65 | < | if (is_dir($file_name)) { |
65 | > | #if (is_dir($file_name)) { |
66 | > | if (preg_match("/^[0-9]{4}\-[0-9]{2}\-[0-9]{2}$/", $file_name)) { |
67 | $i++; | |
68 | print "<option value=\"$file_name\">$file_name</option>"; | |
69 | } | |
# | Line 101 | Line 83 | function getdirArray($dir='./',$sort='asort') { | |
83 | ||
84 | <b>Available reports for <? echo $day ?></b> | |
85 | ||
86 | < | <form method="GET" action="browser.php"> |
86 | > | <form method="<? echo $formMethod ?>" action="<? echo $thisPage ?>"> |
87 | <select size="1" name="machine_name"> | |
88 | <? if ($machine_name) { ?> | |
89 | <option selected value="<? echo $machine_name ?>"><? echo $machine_name ?></option> | |
# | Line 109 | Line 91 | function getdirArray($dir='./',$sort='asort') { | |
91 | <? } else { ?> | |
92 | <option selected value="">[select machine]</option> | |
93 | <? } ?> | |
94 | < | <? include("$day/machine_name.inc"); ?> |
94 | > | <? include("$reportDirectory/$day/$machineNameHTML"); ?> |
95 | </select> | |
96 | ||
97 | <select size="1" name="report"> | |
# | Line 119 | Line 101 | function getdirArray($dir='./',$sort='asort') { | |
101 | <? } else { ?> | |
102 | <option selected value="">[select report]</option> | |
103 | <? } ?> | |
104 | < | <? include("$day/report.inc"); ?> |
104 | > | <? include("$reportDirectory/$day/$reportHTML"); ?> |
105 | </select> | |
106 | ||
107 | <input type="hidden" name="day" value="<? echo $day ?>"> | |
# | Line 136 | Line 118 | function getdirArray($dir='./',$sort='asort') { | |
118 | <? | |
119 | if ($submit == "Show" && $machine_name && $report) { | |
120 | ||
121 | < | include("$day/$machine_name/$report/i-maxmin.txt"); |
122 | < | |
141 | < | $url = escapeshellcmd("$day/$machine_name/$report/i-chart.gif"); |
142 | < | if (isReportEmpty("$day/$machine_name/$report/i-data.txt")) { |
121 | > | $url = "$webRoot/$day/$machine_name/$report/$reportChartFile"; |
122 | > | if (isReportEmpty("$reportDirectory/$day/$machine_name/$report/$reportChartDataFile", $minFileSize)) { |
123 | echo "Host <b>$machine_name</b> did not send any information about <b>$report</b> on <b>$day</b>. Please select another report."; | |
124 | } | |
125 | < | else if (file_exists($url)) { ?> |
126 | < | |
125 | > | else if (file_exists("$reportDirectory/$day/$machine_name/$report/$reportChartFile")) { |
126 | > | |
127 | > | include("$reportDirectory/$day/$machine_name/$report/$reportLimitsFile"); |
128 | > | |
129 | > | ?> |
130 | > | |
131 | <center><b>[<? echo $machine_name; ?>] - <? echo $report; ?></b></center> | |
132 | ||
133 | <table border="0" cellpadding="0" cellspacing="0"> | |
# | Line 166 | Line 150 | function getdirArray($dir='./',$sort='asort') { | |
150 | </tr> | |
151 | </table> | |
152 | ||
153 | < | <hr weigth="1" color="<? echo $lineColor ?>"> |
153 | > | <hr weight="1" color="<? echo $lineColor ?>"> |
154 | ||
155 | + | <b>Latest data</b> |
156 | + | <p> |
157 | + | Latest set of data received from |
158 | + | <a href="<? echo "latest.php?machine=$machine_name"; ?>"><?=$machine_name?></a> |
159 | + | <br> |
160 | + | Alerts for <a href="alerts.php?machine=<?=$machine_name?>"><?=$machine_name?></a> |
161 | + | |
162 | + | |
163 | + | <hr weight="1" color="<? echo $lineColor ?>"> |
164 | + | |
165 | <b>Extra data</b> | |
166 | <p> | |
167 | < | <a href="<? echo "$day/$machine_name/$report/i-data.txt" ?>">Raw plot data</a><br> |
168 | < | <a href="<? echo "$day/$machine_name/$report/i-chart.gif" ?>">GIF chart</a><br> |
169 | < | <a href="<? echo "$day/$machine_name/$report/i-maxmin.txt" ?>">PHP y-axis limits include</a> |
167 | > | <a href="<? echo "$webRoot/$day/$machine_name/$report/$reportChartDataFile" ?>">Raw plot data</a><br> |
168 | > | <a href="<? echo "$webRoot/$day/$machine_name/$report/$reportChartFile" ?>">GIF chart</a><br> |
169 | > | <a href="<? echo "$webRoot/$day/$machine_name/$report/$reportLimitsFile" ?>">PHP y-axis limits include</a> |
170 | ||
171 | <? } | |
172 | else { | |
# | Line 183 | Line 177 | function getdirArray($dir='./',$sort='asort') { | |
177 | ||
178 | ?> | |
179 | ||
180 | < | <? include("bottom.inc"); ?> |
180 | > | <? include($bottomHTML); ?> |
– | Removed lines |
+ | Added lines |
< | Changed lines |
> | Changed lines |