--- loncom/interface/londocs.pm 2002/10/17 15:18:03 1.31 +++ loncom/interface/londocs.pm 2002/10/25 13:39:36 1.36 @@ -1,7 +1,7 @@ # The LearningOnline Network # Documents # -# $Id: londocs.pm,v 1.31 2002/10/17 15:18:03 www Exp $ +# $Id: londocs.pm,v 1.36 2002/10/25 13:39:36 www Exp $ # # Copyright Michigan State University Board of Trustees # @@ -127,6 +127,18 @@ sub editor { $Apache::lonratedt::order[$idx+1]= $Apache::lonratedt::order[$idx]; $Apache::lonratedt::order[$idx]=$i; + } elsif ($cmd eq 'rename') { + my ($rtitle,@rrest)=split(/\:/, + $Apache::lonratedt::resources[ + $Apache::lonratedt::order[$idx]]); + my $comment=$ENV{'form.title'}; + $comment=~s/\/\>\;/g; + $comment=~s/\:/\:/g; + $Apache::lonratedt::resources[ + $Apache::lonratedt::order[$idx]]= + $comment.':'.join(':',@rrest); + } # Store the changed version &storemap($coursenum,$coursedom,$folder.'.sequence'); @@ -183,7 +195,10 @@ sub entryline { DOWN -Remove + +Remove + +Rename END } # Figure out what kind of a resource this is @@ -260,6 +275,33 @@ sub checkonthis { if ($result==OK) { $r->print('ok'); $r->rflush(); + &Apache::lonnet::countacc($url); + $url=~/\.(\w+)$/; + if (&Apache::loncommon::fileembstyle($1) eq 'ssi') { + $r->print('
'); + $r->rflush(); + for (my $i=0;$i<=$level*5;$i++) { + $r->print(' '); + } + $r->print('- Rendering: '); + &Apache::lonxml::xmlparse($r,'web', + &Apache::lonnet::getfile( + &Apache::lonnet::filelocation('',$url))); + if (($Apache::lonxml::errorcount) || + ($Apache::lonxml::warningcount)) { + if ($Apache::lonxml::errorcount) { + $r->print(''. + $Apache::lonxml::errorcount.' error(s) '); + } + if ($Apache::lonxml::warningcount) { + $r->print(''. + $Apache::lonxml::warningcount.' warning(s)'); + } + } else { + $r->print('ok'); + } + $r->rflush(); + } my $dependencies= &Apache::lonnet::metadata($url,'dependencies'); foreach (split(/\,/,$dependencies)) { @@ -324,16 +366,20 @@ sub handler { if ($ENV{'form.timerange'}==-1) { $seltext='since start of course'; $startsel='selected'; - } elsif ($ENV{'form.timerange'}==2592000) { - $seltext='during the last month'; + $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'; + $seltext='during the last week ('.localtime($starttime).')'; $weeksel='selected'; } elsif ($ENV{'form.timerange'}==86400) { - $seltext='since yesterday'; + $seltext='since yesterday ('.localtime($starttime).')'; $daysel='selected'; } + $r->print(< -

Content changed $seltext

+

Content changed $seltext

ENDHEADERS foreach (keys %changes) { - my $currentversion=&Apache::lonnet::getversion($_); - $r->print( - ''); - $r->print(''); + if ($changes{$_}>$starttime) { + my ($root,$extension)=($_=~/^(.*)\.(\w+)$/); + my $currentversion=&Apache::lonnet::getversion($_); + my $linkurl=&Apache::lonnet::clutter($_); + $r->print( + ''. + ''); + } } $r->print('
FileModification Date VersionDifferences
'.$_.''. - localtime($changes{$_}).''.$currentversion.'
'.$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')). + ')'); + if (&Apache::loncommon::fileembstyle($extension) eq 'ssi') { + $r->print(' Diffs'); + } + $r->print('
'); + } + $r->print('
'); } else { @@ -458,7 +532,22 @@ function finishpick() { ('this.document.forms.'+form+'.importdetail.value="'+title+'='+url+ '";this.document.forms.'+form+'.submit();'); } + +function changename(folder,index,oldtitle) { + var title=prompt('New Title',oldtitle); + if (title) { + this.document.forms.renameform.title.value=title; + this.document.forms.renameform.cmd.value='rename_'+index; + this.document.forms.renameform.folder.value=folder; + this.document.forms.renameform.submit(); + } +} +
+ + + +
ENDNEWSCRIPT } # -------------------------------------------------------------------- Body tag