--- loncom/publisher/lonpubdir.pm 2006/11/22 20:50:44 1.97 +++ loncom/publisher/lonpubdir.pm 2006/12/06 22:22:39 1.98 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # Construction Space Directory Lister # -# $Id: lonpubdir.pm,v 1.97 2006/11/22 20:50:44 banghart Exp $ +# $Id: lonpubdir.pm,v 1.98 2006/12/06 22:22:39 albertel Exp $ # # Copyright Michigan State University Board of Trustees # @@ -41,6 +41,7 @@ use Apache::lonlocal; use Apache::lonmsg; use Apache::lonmenu; use Apache::lonnet; +use LONCAPA; sub handler { @@ -157,7 +158,7 @@ sub getEffectiveUrl { # $fn=~s/^http\:\/\/[^\/]+\///; $fn=~s/^\///; - $fn=~s/\~(\w+)/\/home\/$1\/public_html/; + $fn=~s{~($LONCAPA::username_re)}{/home/$1/public_html}; # Remove trailing / strings (?) @@ -170,7 +171,7 @@ sub getEffectiveUrl { #internal authentication, needs fixup. $fn = $r->uri(); # non users do not get the full path request # through SCRIPT_FILENAME - $fn=~s|^/~(\w+)|/home/$1/public_html|; + $fn=~s{^/~($LONCAPA::username_re)}{/home/$1/public_html}; } } $fn=~s/\/+/\//g; @@ -514,9 +515,9 @@ sub putdirectory { %Apache::lonpublisher::metadatafields=(); %Apache::lonpublisher::metadatakeys=(); my $construct=$here; - $construct=~s:^/priv/(\w+)$:/home/$1/public_html:; + $construct=~s{^/priv/($LONCAPA::username_re)$}{/home/$1/public_html}; my $dirpath = $here; - $dirpath=~s:^/priv/:/~:; + $dirpath=~s{^/priv/}{/~}; &Apache::lonpublisher::metaeval(&Apache::lonnet::getfile( $construct.'/'.$dirname.'/default.meta' ));