--- loncom/interface/londocs.pm 2011/10/23 23:46:02 1.461 +++ loncom/interface/londocs.pm 2011/11/27 20:55:58 1.464 @@ -1,7 +1,7 @@ # The LearningOnline Network # Documents # -# $Id: londocs.pm,v 1.461 2011/10/23 23:46:02 www Exp $ +# $Id: londocs.pm,v 1.464 2011/11/27 20:55:58 www Exp $ # # Copyright Michigan State University Board of Trustees # @@ -176,7 +176,7 @@ sub dumpcourse { $newfilename=&clean($newfilename); $newfilename.='.'.$ext; my @dirs=split(/\//,$newfilename); - my $path='/home/httpd/html/priv/'.$cd.'/'.$ca; + my $path=$r->dir_config('lonDocRoot')."/priv/$cd/$ca"; my $makepath=$path; my $fail=0; for (my $i=0;$i<$#dirs;$i++) { @@ -1577,7 +1577,7 @@ sub handle_edit_cmd { if ($cmd eq 'del') { if (($url=~m|/+uploaded/\Q$coursedom\E/\Q$coursenum\E/|) && - ($url!~/\.(page|sequence|problem|exam|quiz|assess|survey|form|library|task)$/)) { + ($url!~/$LONCAPA::assess_page_seq_re/)) { &Apache::lonnet::removeuploadedurl($url); } else { &LONCAPA::map::makezombie($LONCAPA::map::order[$idx]); @@ -2631,7 +2631,7 @@ ENDHEADERS $r->print(' '.&mt('Diffs').''); + '" target="diffs">'.&mt('Diffs').''); } $r->print('
'); if (++$entries_count % $entries_per_col == 0) { @@ -2872,12 +2872,24 @@ sub handler { my $containertag; my $uploadtag; +# Do we directly jump somewhere? + if ($env{'form.command'} eq 'direct') { + (my $mapurl) = &Apache::lonnet::decode_symb($env{'form.symb'}); + my $maptitle = &Apache::lonnet::gettitle($mapurl); + $mapurl=~s{^.*/([^/]+)\.\w+$}{$1}; + $env{'form.folderpath'}= + 'default&'.&Apache::lonhtmlcommon::entity_encode('Main Course Documents'). + '&default&...::::&'. + &Apache::lonhtmlcommon::entity_encode($mapurl).'&'. + &Apache::lonhtmlcommon::entity_encode($maptitle).'::::'; + } + # Where do we store these for when we come back? my $stored_folderpath='docs_folderpath'; if ($supplementalflag) { $stored_folderpath='docs_sup_folderpath'; } - + # No folderpath, no pagepath, see if we have something stored if ((!$env{'form.folderpath'}) && (!$env{'form.pagepath'})) { &Apache::loncommon::restore_course_settings($stored_folderpath, @@ -2916,6 +2928,9 @@ sub handler { {'pagepath' => 'scalar', 'folderpath' => 'scalar'}); + &Apache::lonnet::logthis("Folder: ".$env{'form.folderpath'}); + + if ($env{'form.folderpath'}) { my (@folderpath)=split('&',$env{'form.folderpath'}); $env{'form.foldername'}=&unescape(pop(@folderpath));