coar        97/11/14 14:18:37

  Modified:    .        bugdb.cgi
  Log:
        Add a 30-minute Expires: response header field, and include some
        instructions about how to get replies into the bugdb in mail
        sent on updates.
  
  Submitted by: Dirk-Willem van Gulik
  
  Revision  Changes    Path
  1.21      +38 -2     apache-site/bugdb.cgi
  
  Index: bugdb.cgi
  ===================================================================
  RCS file: /export/home/cvs/apache-site/bugdb.cgi,v
  retrieving revision 1.20
  retrieving revision 1.21
  diff -u -r1.20 -r1.21
  --- bugdb.cgi 1997/11/13 21:56:39     1.20
  +++ bugdb.cgi 1997/11/14 22:18:36     1.21
  @@ -3,6 +3,7 @@
   # Thanks to Larry Wall, CERN, and NCSA for Perl, WWW, and Mosaic!
   
   require "/usr/local/lib/gnats/libgnats.pl";
  +use POSIX;
   
   #### Configuration begins here
   
  @@ -11,6 +12,15 @@
   $databasetitle = "$software Problem Report Database";
   $EDITOR_FILE = "$GNATS_LIB/gnats-db/gnats-adm/responsible";
   
  +# Lifetime (in seconds) of displayed info before it expires.
  +$life_time = 30 * 60;
  +$CCNOTE = <<EOT;
  +[In order for any reply to be added to the PR database, ]
  +[you need to include <[EMAIL PROTECTED]> in the Cc line ]
  +[and leave the subject line UNCHANGED.  This is not done]
  +[automatically because of the potential for mail loops. ]
  +EOT
  +
   # Outside commands
   $MAILER      = "/usr/sbin/sendmail -oi -t";
   $DATEPROG    = "/bin/date";
  @@ -62,6 +72,9 @@
   #    new database value and the old subject line.
   #  11/13/1997 Ken Coar - Add another button for "closing due to no response,"
   #    and fix a mis-set Class value from one of the other buttons.
  +#  11/14/1997 Ken Coar - Add a note to mail messages about how to get
  +#    replies to go into the database.  Also add an Expires: header field
  +#    (Dirk-Willem van Gulik).
   #
   ### End Modification log
   
  @@ -222,6 +235,24 @@
   exit(0);
   
   #################### Miscellaneous functions
  +# Format a date according to RFC 822 rules.
  +sub RFC822_date
  +{
  +    local ($s) = @_;
  +    local (@fdate) = gmtime ($s);
  +    local (@MNAME) = ("Jan", "Feb", "Mar", "Apr", "May", "Jun",
  +                   "Jul", "Aug", "Sep", "Oct", "Nov", "Dec");
  +    local (@WDAY) = ("Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat");
  +
  +    $fdate[5] += ($fdate[5] > 90) ? 1900 : 2000;
  +    return sprintf ("%s, %02d %s %04d %02d:%02d:%02d GMT",
  +                 $WDAY[$fdate[6]],
  +                 $fdate[3],
  +                 $MNAME[$fdate[4]],
  +                 $fdate[5], $fdate[2], $fdate[1],
  +                 $fdate[0]);
  +}
  +
   # Dumps the environment
   sub dumpenv
   {
  @@ -234,7 +265,7 @@
   }
   
   #
  -# Emits either a rredirect or the preamble to some HTML.
  +# Emits either a redirect or the preamble to some HTML.
   #
   sub emit_preamble {
       local ($redirect, $target, $oldsel) = @_;
  @@ -244,7 +275,8 @@
       if ($redirect) {
        print "Location: $target\n\n";
       } else {
  -     print "Content-type: text/html\n\n";
  +     print "Content-type: text/html\n";
  +     print "Expires: " . &RFC822_date (time + $life_time) . "\n\n";
        print "<HTML>\n";
       }
       $| = 0;
  @@ -377,6 +409,8 @@
   Reply-To: $fieldvalues{"emailaddr"}
   X-send-pr-version: $GNATS_VER
   
  +$CCNOTE
  +
   $prtext
   EOM
       close(MAIL);
  @@ -822,6 +856,8 @@
   "To: $mail_to
   From: $input{'Editor'}
   Subject: Re: $input{'Category'}/$pr: $oldsyn
  +
  +$CCNOTE
   
   Synopsis: $oldsyn
   
  
  
  

Reply via email to