--- loncom/interface/londocs.pm 2002/10/16 19:15:55 1.29
+++ loncom/interface/londocs.pm 2002/10/18 13:47:57 1.32
@@ -1,7 +1,7 @@
# The LearningOnline Network
# Documents
#
-# $Id: londocs.pm,v 1.29 2002/10/16 19:15:55 www Exp $
+# $Id: londocs.pm,v 1.32 2002/10/18 13:47:57 www Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -294,6 +294,8 @@ sub handler {
$r->print('
Verify Content'.
&Apache::loncommon::bodytag('Verify Course Documents'));
$hashtied=0;
+ undef %alreadyseen;
+ %alreadyseen=();
&tiehash();
foreach (keys %hash) {
if (($_=~/^src\_(.+)$/) && (!$alreadyseen{$hash{$_}})) {
@@ -306,7 +308,84 @@ sub handler {
&Apache::loncommon::bodytag('Check Course Document Versions'));
$hashtied=0;
&tiehash();
-
+ my %changes=&Apache::lonnet::dump
+ ('versionupdate',$ENV{'course.'.$ENV{'request.course.id'}.'.domain'},
+ $ENV{'course.'.$ENV{'request.course.id'}.'.num'});
+ my $firstkey=(keys %changes)[0];
+ unless ($firstkey=~/^error\:/) {
+ unless ($ENV{'form.timerange'}) {
+ $ENV{'form.timerange'}=604800;
+ }
+ my $seltext='during the last '.$ENV{'form.timerange'}.' seconds';
+ my $startsel='';
+ my $monthsel='';
+ my $weeksel='';
+ my $daysel='';
+ if ($ENV{'form.timerange'}==-1) {
+ $seltext='since start of course';
+ $startsel='selected';
+ $ENV{'form.timerange'}=time;
+ }
+ my $starttime=time-$ENV{'form.timerange'};
+ if ($ENV{'form.timerange'}==2592000) {
+ $seltext='during the last month ('.localtime($starttime).')';
+ $monthsel='selected';
+ } elsif ($ENV{'form.timerange'}==604800) {
+ $seltext='during the last week ('.localtime($starttime).')';
+ $weeksel='selected';
+ } elsif ($ENV{'form.timerange'}==86400) {
+ $seltext='since yesterday ('.localtime($starttime).')';
+ $daysel='selected';
+ }
+
+ $r->print(<
+
+
+
+Content changed $seltext
+
+
+File | Modification Date |
+Version | Differences |
+ENDHEADERS
+ foreach (keys %changes) {
+ if ($changes{$_}>$starttime) {
+ my ($root,$extension)=($_=~/^(.*)\.(\w+)$/);
+ my $currentversion=&Apache::lonnet::getversion($_);
+ my $linkurl=&Apache::lonnet::clutter($_);
+ $r->print(
+ ''.$linkurl.
+ ' | '.
+ localtime($changes{$_}).' | '.$currentversion.' | '.
+ '');
+ my $lastold=1;
+ for (my $prevvers=1;$prevvers<$currentversion;$prevvers++) {
+ my $url=$root.'.'.$prevvers.'.'.$extension;
+ if (&Apache::lonnet::metadata($url,'lastrevisiondate')<
+ $starttime) {
+ $lastold=$prevvers;
+ }
+ }
+ for (my $prevvers=$lastold;$prevvers<$currentversion;$prevvers++) {
+ my $url=$root.'.'.$prevvers.'.'.$extension;
+ $r->print('Version '.$prevvers.' ('.
+ localtime(&Apache::lonnet::metadata($url,'lastrevisiondate')).
+ ') ');
+ }
+ $r->print(' |
');
+ }
+ }
+ $r->print('
');
+ } else {
+ $r->print('No content modifications yet.
');
+ }
&untiehash();
} else {
# is this a standard course?