--- loncom/publisher/loncleanup.pm 2011/10/24 22:39:21 1.13 +++ loncom/publisher/loncleanup.pm 2011/10/29 19:17:09 1.14 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # Handler to cleanup XML files # -# $Id: loncleanup.pm,v 1.13 2011/10/24 22:39:21 www Exp $ +# $Id: loncleanup.pm,v 1.14 2011/10/29 19:17:09 raeburn Exp $ # # Copyright Michigan State University Board of Trustees # @@ -278,13 +278,15 @@ sub phaseone { sub phasetwo { # Check original file my ($r,$fn,$uname,$udom)=@_; - open(IN,'/home/httpd/html/priv/'.$udom.'/'.$uname.'/'.$fn); my $text=''; - while (my $line=) { - $text.=$line; + my $londocroot = $r->dir_config('lonDocRoot'); + if (open(IN,"<$londocroot/priv/$udom/$uname".$fn)) { + while (my $line=) { + $text.=$line; + } + close(IN); } - close(IN); - my $uri='/~'.$uname.$fn; + my $uri="/priv/$udom/$uname".$fn; my $result=&Apache::lonnet::ssi_body($uri, ('grade_target'=>'web', 'return_only_error_and_warning_counts' => 1)); @@ -310,10 +312,11 @@ sub phasetwo { ($env{'form.symbol'} ne 'on')); my ($main,$ext)=($fn=~/^(.*)\.(\w+)/); my $newfn=$main.'_Auto_Cleaned_Up.'.$ext; - open(OUT,'>/home/httpd/html/priv/'.$udom.'/'.$uname.'/'.$newfn); - print OUT $text; - close(OUT); - my $newuri='/~'.$uname.$newfn; + if (open(OUT,">$londocroot/priv/$udom/$uname".$newfn)) { + print OUT $text; + close(OUT); + } + my $newuri="/priv/$udom/$uname".$newfn; $result=&Apache::lonnet::ssi_body($newuri, ('grade_target'=>'web', 'return_only_error_and_warning_counts' => 1)); @@ -356,10 +359,10 @@ sub phasetwo { sub phasethree { my ($r,$fn,$uname,$udom)=@_; - my $old='/home/httpd/html/priv/'.$udom.'/'.$uname.'/'.$fn; + my $old=$r->dir_config('lonDocRoot')."/priv/$udom/$uname".$fn; my ($main,$ext)=($fn=~/^(.*)\.(\w+)/); my $newfn=$main.'_Auto_Cleaned_Up.'.$ext; - my $new='/home/httpd/html/priv/'.$udom.'/'.$uname.'/'.$newfn; + my $new=$r->dir_config('lonDocRoot')."/priv/$udom/$uname".$newfn; if ($env{'form.accept'}) { $r->print( '

' @@ -416,7 +419,7 @@ sub handler { return HTTP_NOT_ACCEPTABLE; } - $fn=~s{/~($LONCAPA::username_re)}{}; + $fn=~s{^/priv/$LONCAPA::domain_re/$LONCAPA::username_re}{}; &Apache::loncommon::content_type($r,'text/html'); $r->send_http_header; @@ -445,14 +448,14 @@ sub handler { } } my $dir=$fn; - $dir=~s/\/[^\/]+$/\//; + $dir=~s{[^/]+$}{}; $r->print( '' .&Apache::lonhtmlcommon::start_funclist() .&Apache::lonhtmlcommon::add_item_funclist( - ''.&mt('Back to Source File').'') + ''.&mt('Back to Source File').'') .&Apache::lonhtmlcommon::add_item_funclist( - ''.&mt('Back to Source Directory').'') + ''.&mt('Back to Source Directory').'') .&Apache::lonhtmlcommon::end_funclist() .&Apache::loncommon::end_page() );