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 (24 years 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

# Content
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 my ($doc) = ($query->param('doc') =~ /^\s*(.*?\.txt)\s*$/);
23 $doc = "../documentation/".$doc;
24
25 print "Content-type: text/html\n\n";
26
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 Last modified 02/11/2000
35 -->
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 &print_html($left);
54
55 print <<"END";
56
57 </td>
58 <td valign="top">
59 END
60
61 &print_html($title);
62 &print_file($doc);
63 &print_html($bottom);
64
65 print <<"END";
66
67 </td>
68 </tr>
69 </table>
70
71 </body>
72
73 </html>
74 END
75
76 exit 0;
77
78 # Print a file, whilst escaping HTML: -
79 sub print_file ($) {
80 my ($filename) = @_;
81 open(FILE, $filename) or die "Cannot open $filename: $!\n";
82 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 }
92 print "</pre>";
93 }
94
95 # Print a file without escaping HTML: -
96 sub print_html ($) {
97 my ($filename) = @_;
98 print `cat $filename`;
99 }