--- loncom/interface/londocs.pm 2002/12/04 14:02:49 1.38 +++ loncom/interface/londocs.pm 2003/02/25 19:30:51 1.50 @@ -1,7 +1,7 @@ # The LearningOnline Network # Documents # -# $Id: londocs.pm,v 1.38 2002/12/04 14:02:49 www Exp $ +# $Id: londocs.pm,v 1.50 2003/02/25 19:30:51 www Exp $ # # Copyright Michigan State University Board of Trustees # @@ -45,6 +45,12 @@ my %hash; my $hashtied; my %alreadyseen=(); +my $hadchanges; + +# Available help topics + +my %help=(); + # Mapread read maps into lonratedt::global arrays # @order and @resources, determines status # sets @order - pointer to resources in right order @@ -60,6 +66,7 @@ sub mapread { sub storemap { my ($coursenum,$coursedom,$map)=@_; + $hadchanges=1; return &Apache::lonratedt::storemap('/uploaded/'.$coursedom.'/'.$coursenum.'/'. $map,1); @@ -163,6 +170,7 @@ sub editor { my $ext='false'; if ($url=~/^http\:\/\//) { $ext='true'; } $url=~s/\:/\:/g; + $name=~s/\:/\:/g; $Apache::lonratedt::resources[$idx]= $name.':'.$url.':'.$ext.':normal:res'; } @@ -180,7 +188,7 @@ sub editor { my ($name,$url)=split(/\:/,$Apache::lonratedt::resources[$_]); unless ($name) { $name=(split(/\//,$url))[-1]; } unless ($name) { $name='NO RESOURCE'; $url='/adm/notfound.html'; } - $r->print(&entryline($idx,$name,$url,$folder,$allowed)); + $r->print(&entryline($idx,$name,$url,$folder,$allowed,$_)); $idx++; } $r->print(''); @@ -190,7 +198,7 @@ sub editor { # --------------------------------------------------------------- An entry line sub entryline { - my ($index,$title,$url,$folder,$allowed)=@_; + my ($index,$title,$url,$folder,$allowed,$residx)=@_; $title=~s/\&colon\;/\:/g; $title=&HTML::Entities::encode(&HTML::Entities::decode( &Apache::lonnet::unescape($title)),'\"\<\>\&\''); @@ -241,7 +249,18 @@ END } } $url=~s/^http\&colon\;\/\//\/adm\/wrapper\/ext\//; - if ($isfolder) { $url.='&foldername='.$foldertitle; } + if ($residx) { + $url.=(($url=~/\?/)?'&':'?').'symb='. + &Apache::lonnet::escape(&Apache::lonnet::symbclean( + &Apache::lonnet::declutter('uploaded/'. + $ENV{'course.'.$ENV{'request.course.id'}.'.domain'}.'/'. + $ENV{'course.'.$ENV{'request.course.id'}.'.num'}.'/'.$folder. + '.sequence'). + '___'.$residx.'___'. + &Apache::lonnet::declutter($url))); + } + if ($isfolder) { $url.='&foldername='. + &Apache::lonnet::escape($foldertitle); } $line.='