ViewVC Help
View File | Revision Log | Show Annotations | Revision Graph | Root Listing
root/i-scream/projects/cms/source/reports/php/historical/browser.php
Revision: 1.25
Committed: Fri Mar 2 09:51:34 2001 UTC (23 years, 8 months ago) by pjm2
Branch: MAIN
Changes since 1.24: +4 -4 lines
Log Message:
The chart data file name can also be specified within the configuration.
The method used to submit the form may als obe configured - at this
current moment in time, this should only really be set to either "POST"
or "GET".  GET sends the form with the parameters specified in the query
string (at the end of the URL).  POST sends them over HTTP without being
displayed in the URL.  We shall stay with the GET method for now -
although it produces rather ugly, long URLs in the browser, they are on
the other hand quite handy because you can then copy it and email the URL
to somebody to show them are particular chart and say something like,
"ooh, what happened to raptor there?"

File Contents

# Content
1 <?php
2
3 # Navigation for the i-scream reports.
4 # pjm2@ukc.ac.uk
5 #
6 # CONFIGURABLE CONSTANTS
7 #
8
9 # The report directory, and the number of days to display.
10 $reportDirectory = "/home/cut/pjm2/webpages/reports";
11 $maxDaysShown = 7;
12
13 # Page appearance.
14 $scaleImage = "24hour.gif";
15 $lineColor = "#9999ff";
16
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
35 #
36 # END CONFIGURATION
37
38
39 function isReportEmpty($filename) {
40 if (filesize($filename) < minFileSize) {
41 return TRUE;
42 }
43 return FALSE;
44 }
45
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 }
70
71 ?>
72
73 <? include($titleHTML); ?>
74
75 <hr weight="1" color="<? echo $lineColor ?>">
76
77 <b>Most recent reports available</b>
78 <form method="<? echo $formMethod ?>" action="browser.php">
79 <?
80
81 $file_array = getdirArray($reportDirectory,'rsort');
82 print "<select size=\"1\" name=\"day\">";
83 foreach($file_array as $file_name) {
84 if (is_dir($file_name)) {
85 $i++;
86 print "<option value=\"$file_name\">$file_name</option>";
87 }
88 if ($i >= $maxDaysShown) {
89 break;
90 }
91 }
92 print "</select>";
93
94 ?>
95 <input type="submit" name="submit" value="Go">
96 </form>
97
98 <hr weight="1" color="<? echo $lineColor ?>">
99
100 <? if ($day) { ?>
101
102 <b>Available reports for <? echo $day ?></b>
103
104 <form method="<? echo $formMethod ?>" action="browser.php">
105 <select size="1" name="machine_name">
106 <? if ($machine_name) { ?>
107 <option selected value="<? echo $machine_name ?>"><? echo $machine_name ?></option>
108 <option value="">----------------</option>
109 <? } else { ?>
110 <option selected value="">[select machine]</option>
111 <? } ?>
112 <? include("$day/$machineNameHTML"); ?>
113 </select>
114
115 <select size="1" name="report">
116 <? if ($report) { ?>
117 <option selected value="<? echo $report ?>"><? echo $report ?></option>
118 <option value="">----------------</option>
119 <? } else { ?>
120 <option selected value="">[select report]</option>
121 <? } ?>
122 <? include("$day/$reportHTML"); ?>
123 </select>
124
125 <input type="hidden" name="day" value="<? echo $day ?>">
126 <input type="submit" name="submit" value="Show">
127 </form>
128
129 <hr weight="1" color="<? echo $lineColor ?>">
130
131 <? } ?>
132
133 </p>
134
135
136 <?
137 if ($submit == "Show" && $machine_name && $report) {
138
139 include("$day/$machine_name/$report/$reportLimitsFile");
140
141 $url = escapeshellcmd("$day/$machine_name/$report/$reportChartFile");
142 if (isReportEmpty("$day/$machine_name/$report/$reportChartDataFile")) {
143 echo "Host <b>$machine_name</b> did not send any information about <b>$report</b> on <b>$day</b>. Please select another report.";
144 }
145 else if (file_exists($url)) { ?>
146
147 <center><b>[<? echo $machine_name; ?>] - <? echo $report; ?></b></center>
148
149 <table border="0" cellpadding="0" cellspacing="0">
150 <tr>
151 <td align="right" valign="top">
152 <font size="2"><? printf("%.1f", $max_value); ?></font>
153 </td>
154 <td rowspan="2">
155 <img src="<? echo $url; ?>" width="500" height="250">
156 </td>
157 </tr>
158 <tr>
159 <td align="right" valign="bottom">
160 <font size="2"><? echo $min_value; ?></font>
161 </td>
162 </tr>
163 <tr>
164 <td>&nbsp;</td>
165 <td><img src="<? echo $scaleImage ?>" width="500" height="39"></td>
166 </tr>
167 </table>
168
169 <hr weigth="1" color="<? echo $lineColor ?>">
170
171 <b>Extra data</b>
172 <p>
173 <a href="<? echo "$day/$machine_name/$report/$reportChartDataFile" ?>">Raw plot data</a><br>
174 <a href="<? echo "$day/$machine_name/$report/$reportChartFile" ?>">GIF chart</a><br>
175 <a href="<? echo "$day/$machine_name/$report/$reportLimitsFile" ?>">PHP y-axis limits include</a>
176
177 <? }
178 else {
179 echo "<p>The report could not be found. Somebody must have deleted it!</p>";
180 }
181 echo "<hr weight=\"1\" color=\"$lineColor\">";
182 }
183
184 ?>
185
186 <? include($bottomHTML); ?>