ViewVC Help
View File | Revision Log | Show Annotations | Revision Graph | Root Listing
root/i-scream/projects/cms/source/reports/php/historical/browser.php
(Generate patch)

Comparing projects/cms/source/reports/php/historical/browser.php (file contents):
Revision 1.8 by pjm2, Sun Feb 4 14:49:36 2001 UTC vs.
Revision 1.29 by pjm2, Fri Mar 2 10:13:56 2001 UTC

# Line 1 | Line 1
1   <?php
2  
3 < // A test navigation thingy.
4 < // pjm2@ukc.ac.uk
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 +
40 +
41 +
42 + # Used to return whether or not a report data file is empty.
43 + function isReportEmpty($filename, $minFileSize) {
44 +    if (filesize($filename) < $minFileSize) {
45 +        return TRUE;
46 +    }
47 +    return FALSE;
48 + }
49 +
50 +
51 + # 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) ) {
# Line 11 | Line 56 | function getdirArray($dir='./',$sort='asort') {
56          while ( ($part = @readdir($fd)) == TRUE ) {
57              clearstatcache();
58              if ($part != "." && $part != "..") {
59 <                $dir_array[] = $part;
59 >                if (preg_match("/^[0-9]{4}\-[0-9]{2}\-[0-9]{2}$/", $part)) {
60 >                    $dir_array[] = $part;
61 >                }
62              }
63          }
64          if($fd == TRUE) {
# Line 29 | Line 76 | function getdirArray($dir='./',$sort='asort') {
76      }
77   }
78  
32    include("day.inc");
33
79   ?>
80  
81 < <html>
37 < <body bgcolor="#ffffff">
81 > <? include($titleHTML); ?>
82  
83 < <table border="0" align="center" cellpadding="2" cellspacing="5">
40 < <tr>
41 <   <td valign="top">
42 <    <? include("left.inc"); ?>
43 <   </td>
44 <   <td>
45 <    <? include("title.inc"); ?>
83 > <hr weight="1" color="<? echo $lineColor ?>">
84  
85 + <b>Most recent reports available</b>
86 + <form method="<? echo $formMethod ?>" action="<? echo $thisPage ?>">
87 + <?
88  
89 <    <font face="arial, sans-serif" size="2">
90 <    <b>View reports for <? echo "$day" ?></b>
91 <    </font>
89 >    $file_array = getdirArray($reportDirectory,'rsort');
90 >    print "<select size=\"1\" name=\"day\">";
91 >    foreach($file_array as $file_name) {
92 >        if (is_dir($file_name)) {
93 >            $i++;
94 >            print "<option value=\"$file_name\">$file_name</option>";
95 >        }
96 >        if ($i >= $maxDaysShown) {
97 >            break;
98 >        }
99 >    }
100 >    print "</select>";
101  
102 <    <p>
102 > ?>
103 > <input type="submit" name="submit" value="Go">
104 > </form>
105  
106 <    <form method="GET" action="">
106 > <hr weight="1" color="<? echo $lineColor ?>">
107 >
108 > <? if ($day) { ?>
109 >
110 >    <b>Available reports for <? echo $day ?></b>
111 >
112 >    <form method="<? echo $formMethod ?>" action="<? echo $thisPage ?>">
113       <select size="1" name="machine_name">
114 <      <option selected value="">[select machine]</option>
115 <      <? include("machine_name.inc"); ?>
114 >      <? if ($machine_name) { ?>
115 >        <option selected value="<? echo $machine_name ?>"><? echo $machine_name ?></option>
116 >        <option value="">----------------</option>
117 >      <? } else { ?>
118 >        <option selected value="">[select machine]</option>
119 >      <? } ?>
120 >      <? include("$day/$machineNameHTML"); ?>
121       </select>
122  
123       <select size="1" name="report">
124 <      <option selected value="">[select report]</option>
125 <      <? include("report.inc"); ?>
124 >      <? if ($report) { ?>
125 >        <option selected value="<? echo $report ?>"><? echo $report ?></option>
126 >        <option value="">----------------</option>
127 >      <? } else { ?>
128 >        <option selected value="">[select report]</option>
129 >      <? } ?>
130 >      <? include("$day/$reportHTML"); ?>
131       </select>
132  
133 +     <input type="hidden" name="day" value="<? echo $day ?>">
134       <input type="submit" name="submit" value="Show">
135      </form>
136 +    
137 +    <hr weight="1" color="<? echo $lineColor ?>">
138 +    
139 + <? } ?>
140  
141      </p>
142  
143  
144   <?
145      if ($submit == "Show" && $machine_name && $report) {
146 <        $url = escapeshellcmd("$day/$machine_name/$report/chart.gif");
147 <        if (file_exists($url)) {
148 <            echo "<p><b>[$machine_name] - $report</b><br><img src=\"$url\" width=\"500\" height=\"250\"><br><img src=\"24hour.gif\" width=\"500\" height=\"39\"></p>";
146 >        
147 >        include("$day/$machine_name/$report/$reportLimitsFile");
148 >        
149 >        $url = escapeshellcmd("$day/$machine_name/$report/$reportChartFile");
150 >        if (isReportEmpty("$day/$machine_name/$report/$reportChartDataFile", $minFileSize)) {
151 >            echo "Host <b>$machine_name</b> did not send any information about <b>$report</b> on <b>$day</b>.  Please select another report.";
152          }
153 +        else if (file_exists($url)) {  ?>
154 +          
155 +            <center><b>[<? echo $machine_name; ?>] - <? echo $report; ?></b></center>
156 +          
157 +            <table border="0" cellpadding="0" cellspacing="0">
158 +             <tr>
159 +              <td align="right" valign="top">
160 +               <font size="2"><? printf("%.1f", $max_value);  ?></font>
161 +              </td>
162 +              <td rowspan="2">
163 +               <img src="<? echo $url; ?>" width="500" height="250">
164 +              </td>
165 +             </tr>
166 +             <tr>
167 +              <td align="right" valign="bottom">
168 +               <font size="2"><? echo $min_value; ?></font>
169 +              </td>
170 +             </tr>
171 +             <tr>
172 +              <td>&nbsp;</td>
173 +              <td><img src="<? echo $scaleImage ?>" width="500" height="39"></td>
174 +             </tr>
175 +            </table>
176 +            
177 +            <hr weigth="1" color="<? echo $lineColor ?>">
178 +            
179 +            <b>Extra data</b>
180 +            <p>
181 +            <a href="<? echo "$day/$machine_name/$report/$reportChartDataFile" ?>">Raw plot data</a><br>
182 +            <a href="<? echo "$day/$machine_name/$report/$reportChartFile" ?>">GIF chart</a><br>
183 +            <a href="<? echo "$day/$machine_name/$report/$reportLimitsFile" ?>">PHP y-axis limits include</a>
184 +            
185 +        <? }
186          else {
187 <            echo "<p>The report could not be found.</p>";
187 >            echo "<p>The report could not be found.  Somebody must have deleted it!</p>";
188          }
189 +        echo "<hr weight=\"1\" color=\"$lineColor\">";
190      }
191      
192   ?>
193  
194 < <hr>
85 <
86 < <p>
87 < <font face="arial, sans-serif" size="2">
88 < <b>Or browse all dates</b>
89 < </font>
90 < </p>
91 <
92 < <?
93 <
94 <    $file_array = getdirArray('/home/cut/pjm2/webpages/reports','asort');
95 <    print "<ul>";
96 <    foreach($file_array as $file_name) {
97 <        if (is_dir($file_name)) {
98 <            print "<li><a href=\"$file_name\">$file_name</a>";
99 <        }
100 <    }
101 <    print "</ul>";
102 <
103 < ?>
104 <
105 < <? include("bottom.inc"); ?>
106 <
107 < </body>
108 < </html>
194 > <? include($bottomHTML); ?>

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines