--- loncom/interface/portfolio.pm 2017/05/19 23:41:28 1.258 +++ loncom/interface/portfolio.pm 2017/08/12 01:32:14 1.259 @@ -1,7 +1,7 @@ # The LearningOnline Network # portfolio browser # -# $Id: portfolio.pm,v 1.258 2017/05/19 23:41:28 raeburn Exp $ +# $Id: portfolio.pm,v 1.259 2017/08/12 01:32:14 raeburn Exp $ # # Copyright Michigan State University Board of Trustees # @@ -2615,6 +2615,45 @@ sub free_space { return $free_space; } +sub valid_container { + my ($uname,$udom,$group) = @_; + my $container_prefix; + if ($group ne '') { + $container_prefix = "/uploaded/$udom/$uname/groups/$group/portfolio"; + } else { + $container_prefix = "/uploaded/$udom/$uname/portfolio"; + } + if ($env{'form.currentpath'}) { + $container_prefix .= $env{'form.currentpath'}; + } else { + $container_prefix .= '/'; + } + if ($env{'form.container'} =~ m{^\Q$container_prefix\E(.+)$}) { + my $filename = $1; + if ($filename eq &Apache::lonnet::clean_filename($filename)) { + return 1; + } + } + return; +} + +sub invalid_parms { + my ($r,$url,$currentpath) = @_; + my $escpath = &HTML::Entities::encode($currentpath,'&<>"'); + my $rtnlink = ''.&mt('Return to directory').''; + $r->print('