]> i-scream Git - www.i-scream.org.git/commitdiff
Now been "updated" to support some more funky features :)
authorTim Bishop <tim@bishnet.net>
Tue, 5 Jun 2001 16:19:00 +0000 (16:19 +0000)
committerTim Bishop <tim@bishnet.net>
Tue, 5 Jun 2001 16:19:00 +0000 (16:19 +0000)
Firstly the output is grouped by module, making it clearer to see what commits
belong where.
Secondly, query strings allow you to specify the period, rather than just the
current day that the old one did. This are:

Current Day: period=today
Current Week: period=thisweek
Last n Days: period=days&days=n

There are also subtle location changes to suit the location on the new webserver
rather than raptor.

cgi-bin/cvslog.cgi

index bb2dc3f7388ee882d955e28221baac44d388046e..43a98c90ec2a4fcb23ce34c0aa8e9213e6805397 100755 (executable)
@@ -1,15 +1,38 @@
-#!/usr/bin/perl
+#!/usr/bin/perl -w
+
+use CGI;
+$query=new CGI;
+my($period)=$query->param('period');
+$period = "today" unless defined $period;
+
+my($firstdate);
+if($period eq "days") {
+    my($days)=$query->param('days');
+    $days = 1 unless defined $days;
+    if ($days < 1) {$days = 1};
+    $heading = "i-scream CVS commits in the past $days day(s)";
+    $days--;
+    $firstdate = `date --date \"$days days ago\" \"+%Y/%m/%d\"`;
+}
+elsif($period eq "thisweek") {
+   $firstdate = "last Sunday";
+   $heading = "i-scream CVS commits this week";
+}
+else {
+   # default to "today only"
+   $firstdate = `/bin/date \"+%Y/%m/%d\"`;
+   $heading = "Today's i-scream CVS commits";
+}
 
 print "Content-type: text/html\n\n";
 
-my($today) = `date \"+%Y/%m/%d\"`;
-my($cvs) = "/home/cut/tdb1/bin/cvs";
-my($cvs2clpath) = "/home/cut/tdb1/bin/cvs2cl";
-my($cvsroot) = "/usr/local/proj/co600_10/cvs";
-my($cvs2clargs) = "--stdout -r -b -t -w -U $cvsroot/CVSROOT/users -l \"-d'\>$today'\" -g \"-d$cvsroot\" -g \"-Q\"";
-my($cmd) = "cd /home/cut/tdb1/cvsscripttemp && $cvs -d $cvsroot -Q update -d && $cvs2clpath $cvs2clargs *";
-
-my(@lines) = `$cmd 2>&1`;
+my($cvs) = "/usr/bin/cvs";
+my($cvs2clpath) = "/home/sites/www.i-scream.org.uk/bin/cvs2cl.pl";
+my($cvsroot) = "/cvs/i-scream";
+#my($cvs2clargs) = "--stdout -r -b -t -w -U $cvsroot/CVSROOT/users -l \"-d'\>$today'\" -g \"-d$cvsroot\" -g \"-Q\"";
+my($cvs2clargs) = "--stdout -r -b -t -w -U $cvsroot/CVSROOT/users -l \"-d'\>$firstdate'\" -g \"-d$cvsroot\" -g \"-Q\"";
+my($updatecmd) = "cd /home/sites/www.i-scream.org.uk/cvsscripttemp && $cvs -d $cvsroot -Q update -d";
+my($logcmd) = "cd /home/sites/www.i-scream.org.uk/cvsscripttemp && $cvs2clpath $cvs2clargs";
 
 print <<"END";
 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
@@ -18,31 +41,42 @@ print <<"END";
 
 <head>
  <title>The i-scream Project Daily Commit Log</title>
- <meta name="description" content="The i-scream Project is a central 
-monitoring system for Unix, Linux and NT servers.">
- <meta name="keywords" content="i-scream, project, central monitoring 
-system, unix, linux, nt, server, alert">
- <meta name="generator" content="notepad on acid, aye.">
 </head>
 
-<body bgcolor="#ffffff" link="#0000ff" alink="#3333cc" vlink="#3333cc" 
-text="#000066">
+<body bgcolor="#ffffff" link="#0000ff" alink="#3333cc" vlink="#3333cc" text="#000066">
 
 <a href="http://www.i-scream.org.uk"><img border="0" src="../i-scream.gif"></a>
 
-<h3>Today's i-scream CVS commits</h3>
-
-<a href="viewcvs.cgi">Browse i-scream CVS repository</a>
+<h2>$heading</h2>
 
-<pre>
 END
 
-foreach my $line (@lines) {
-    print HTML_encode($line);
+print `$updatecmd`;
+
+my $modulelist = `ls $cvsroot`;
+my(@modules) = split (/\s+/, $modulelist);
+
+foreach my $module (@modules) {
+
+    print "<p><h3>$module module</h3>\n";
+    print "<a href=\"/cgi-bin/cvs/viewcvs.cgi/$module\">";
+    print "Browse i-scream &quot;$module&quot; cvs module</a>\n";
+    print "<pre>\n";
+
+    my(@lines) = `$logcmd $module 2>&1`;
+    if(@lines == 0) {
+        print "There have been no commits in this module during this period.";
+    }
+    else {
+        foreach my $line (@lines) {
+            print HTML_encode($line);
+        }
+    }
+
+    print "</pre></p>\n\n";
 }
 
 print <<"END";
-</pre>
 </body>
 
 </html>
@@ -64,4 +98,3 @@ sub HTML_encode ($){
     $encoded =~ s/>/&gt;/g;
     return $encoded;
 }
-