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.27
Committed: Fri Mar 2 09:58:16 2001 UTC (23 years, 8 months ago) by pjm2
Branch: MAIN
Changes since 1.26: +6 -0 lines
Log Message:
*** empty log message ***

File Contents

# User Rev Content
1 pjm2 1.1 <?php
2    
3 pjm2 1.16 # 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 pjm2 1.1
32 pjm2 1.16 # Leave this alone unless you know what you're doing ;)
33     $minFileSize = 33;
34 pjm2 1.15
35 pjm2 1.16 #
36     # END CONFIGURATION
37 pjm2 1.15
38 pjm2 1.1
39 pjm2 1.27
40    
41    
42     # Used to return whether or not a report data file is empty.
43 pjm2 1.14 function isReportEmpty($filename) {
44 pjm2 1.15 if (filesize($filename) < minFileSize) {
45 pjm2 1.14 return TRUE;
46     }
47     return FALSE;
48     }
49    
50 pjm2 1.27
51     # return an array of subdirectories in the current directory.
52 pjm2 1.1 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     }
76    
77     ?>
78    
79 pjm2 1.20 <? include($titleHTML); ?>
80 pjm2 1.6
81 pjm2 1.19 <hr weight="1" color="<? echo $lineColor ?>">
82 pjm2 1.11
83     <b>Most recent reports available</b>
84 pjm2 1.26 <form method="<? echo $formMethod ?>" action="<? echo $thisPage ?>">
85 pjm2 1.11 <?
86    
87 pjm2 1.17 $file_array = getdirArray($reportDirectory,'rsort');
88 pjm2 1.11 print "<select size=\"1\" name=\"day\">";
89     foreach($file_array as $file_name) {
90     if (is_dir($file_name)) {
91     $i++;
92     print "<option value=\"$file_name\">$file_name</option>";
93     }
94 pjm2 1.16 if ($i >= $maxDaysShown) {
95 pjm2 1.11 break;
96     }
97     }
98     print "</select>";
99    
100     ?>
101     <input type="submit" name="submit" value="Go">
102     </form>
103    
104 pjm2 1.19 <hr weight="1" color="<? echo $lineColor ?>">
105 pjm2 1.11
106     <? if ($day) { ?>
107    
108     <b>Available reports for <? echo $day ?></b>
109    
110 pjm2 1.26 <form method="<? echo $formMethod ?>" action="<? echo $thisPage ?>">
111 pjm2 1.6 <select size="1" name="machine_name">
112 pjm2 1.13 <? if ($machine_name) { ?>
113     <option selected value="<? echo $machine_name ?>"><? echo $machine_name ?></option>
114     <option value="">----------------</option>
115     <? } else { ?>
116     <option selected value="">[select machine]</option>
117     <? } ?>
118 pjm2 1.22 <? include("$day/$machineNameHTML"); ?>
119 pjm2 1.6 </select>
120    
121     <select size="1" name="report">
122 pjm2 1.13 <? if ($report) { ?>
123     <option selected value="<? echo $report ?>"><? echo $report ?></option>
124     <option value="">----------------</option>
125     <? } else { ?>
126     <option selected value="">[select report]</option>
127     <? } ?>
128 pjm2 1.22 <? include("$day/$reportHTML"); ?>
129 pjm2 1.6 </select>
130 pjm2 1.1
131 pjm2 1.11 <input type="hidden" name="day" value="<? echo $day ?>">
132 pjm2 1.8 <input type="submit" name="submit" value="Show">
133 pjm2 1.6 </form>
134 pjm2 1.11
135 pjm2 1.19 <hr weight="1" color="<? echo $lineColor ?>">
136 pjm2 1.11
137     <? } ?>
138 pjm2 1.1
139 pjm2 1.6 </p>
140 pjm2 1.1
141 pjm2 1.2
142     <?
143 pjm2 1.8 if ($submit == "Show" && $machine_name && $report) {
144 pjm2 1.11
145 pjm2 1.23 include("$day/$machine_name/$report/$reportLimitsFile");
146 pjm2 1.11
147 pjm2 1.24 $url = escapeshellcmd("$day/$machine_name/$report/$reportChartFile");
148 pjm2 1.25 if (isReportEmpty("$day/$machine_name/$report/$reportChartDataFile")) {
149 pjm2 1.14 echo "Host <b>$machine_name</b> did not send any information about <b>$report</b> on <b>$day</b>. Please select another report.";
150     }
151     else if (file_exists($url)) { ?>
152 pjm2 1.11
153     <center><b>[<? echo $machine_name; ?>] - <? echo $report; ?></b></center>
154    
155     <table border="0" cellpadding="0" cellspacing="0">
156     <tr>
157     <td align="right" valign="top">
158     <font size="2"><? printf("%.1f", $max_value); ?></font>
159     </td>
160     <td rowspan="2">
161     <img src="<? echo $url; ?>" width="500" height="250">
162     </td>
163     </tr>
164     <tr>
165     <td align="right" valign="bottom">
166     <font size="2"><? echo $min_value; ?></font>
167     </td>
168     </tr>
169     <tr>
170     <td>&nbsp;</td>
171 pjm2 1.18 <td><img src="<? echo $scaleImage ?>" width="500" height="39"></td>
172 pjm2 1.11 </tr>
173     </table>
174    
175 pjm2 1.19 <hr weigth="1" color="<? echo $lineColor ?>">
176 pjm2 1.11
177     <b>Extra data</b>
178     <p>
179 pjm2 1.25 <a href="<? echo "$day/$machine_name/$report/$reportChartDataFile" ?>">Raw plot data</a><br>
180 pjm2 1.24 <a href="<? echo "$day/$machine_name/$report/$reportChartFile" ?>">GIF chart</a><br>
181 pjm2 1.23 <a href="<? echo "$day/$machine_name/$report/$reportLimitsFile" ?>">PHP y-axis limits include</a>
182 pjm2 1.11
183     <? }
184 pjm2 1.2 else {
185 pjm2 1.15 echo "<p>The report could not be found. Somebody must have deleted it!</p>";
186 pjm2 1.2 }
187 pjm2 1.19 echo "<hr weight=\"1\" color=\"$lineColor\">";
188 pjm2 1.2 }
189    
190 pjm2 1.1 ?>
191 pjm2 1.6
192 pjm2 1.21 <? include($bottomHTML); ?>