ViewVC Help
View File | Revision Log | Show Annotations | Revision Graph | Root Listing
root/i-scream/web/cgi-bin/docs.cgi
Revision: 1.2
Committed: Thu Nov 2 20:59:43 2000 UTC (23 years, 6 months ago) by tdb
Branch: MAIN
Changes since 1.1: +23 -18 lines
Log Message:
Paul made the printing function better, so we can use tags in our documents.

File Contents

# User Rev Content
1 tdb 1.1 #!/usr/bin/perl -w
2    
3     #------------------------------------------------------------
4     # docs.cgi
5     #
6     # Web-based text file viewer.
7     # Copyright Paul Mutton, 2000.
8     #------------------------------------------------------------
9    
10     use strict;
11     use CGI;
12    
13     $| = 1;
14    
15     # Settings
16     my ($left) = "../left.inc" ;
17     my ($title) = "../title.inc";
18     my ($bottom) = "../bottom.inc";
19    
20    
21     my ($query) = new CGI;
22 tdb 1.2 my ($doc) = ($query->param('doc') =~ /^\s*(.*?\.txt)\s*$/);
23     $doc = "../documentation/".$doc;
24 tdb 1.1
25 tdb 1.2 print "Content-type: text/html\n\n";
26 tdb 1.1
27     print <<"END";
28     <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
29    
30     <!--
31     docs.cgi
32     Web-based text file viewer and formatter.
33     Created by pjm2 19/10/2000
34 tdb 1.2 Last modified 02/11/2000
35 tdb 1.1 -->
36    
37     <html>
38    
39     <head>
40     <title>The i-scream Project Documentation Viewer</title>
41     <meta name="description" content="The i-scream Project is a central monitoring system for Unix, Linux and NT servers.">
42     <meta name="keywords" content="i-scream, project, central monitoring system, unix, linux, nt, server, alert">
43     <meta name="generator" content="notepad on acid, aye.">
44     </head>
45    
46     <body bgcolor="#ffffff" link="#0000ff" alink="#3333cc" vlink="#3333cc" text="#000066">
47    
48     <table border="0" cellpadding="2" cellspacing="2">
49     <tr>
50     <td valign="top">
51     END
52    
53 tdb 1.2 &print_html($left);
54 tdb 1.1
55     print <<"END";
56    
57     </td>
58     <td valign="top">
59     END
60    
61 tdb 1.2 &print_html($title);
62 tdb 1.1 &print_file($doc);
63 tdb 1.2 &print_html($bottom);
64 tdb 1.1
65     print <<"END";
66    
67     </td>
68     </tr>
69     </table>
70    
71     </body>
72    
73     </html>
74     END
75    
76     exit 0;
77    
78 tdb 1.2 # Print a file, whilst escaping HTML: -
79 tdb 1.1 sub print_file ($) {
80     my ($filename) = @_;
81     open(FILE, $filename) or die "Cannot open $filename: $!\n";
82 tdb 1.2 print "<pre>\n";
83     # Use $_ implicitly throughout.
84     while (<FILE>) {
85     # Must do the next line first!
86     s/&/&amp;/g;
87     s/</&lt;/g;
88     s/>/&gt;/g;
89     s/"/&quot;/g;
90     print;
91 tdb 1.1 }
92 tdb 1.2 print "</pre>";
93 tdb 1.1 }
94    
95 tdb 1.2 # Print a file without escaping HTML: -
96     sub print_html ($) {
97     my ($filename) = @_;
98     print `cat $filename`;
99     }