--- loncom/auth/blockedaccess.pm 2009/02/13 17:20:26 1.3 +++ loncom/auth/blockedaccess.pm 2012/03/31 23:10:47 1.4 @@ -1,7 +1,7 @@ # The LearningOnline Network # Information about blocking status for Portfolio files # -# $Id: blockedaccess.pm,v 1.3 2009/02/13 17:20:26 bisitz Exp $ +# $Id: blockedaccess.pm,v 1.4 2012/03/31 23:10:47 raeburn Exp $ # # Copyright Michigan State University Board of Trustees # @@ -36,16 +36,27 @@ use Apache::lonlocal; sub handler { my $r = shift; - my $origurl = $r->uri; - my ($type,$udom,$uname,$file_name,$group) = - &Apache::lonnet::parse_portfolio_url($origurl); &Apache::loncommon::content_type($r,'text/html'); $r->send_http_header; return OK if $r->header_only; &Apache::lonlocal::get_language_handle($r); - my ($blocked,$blocktext) = - &Apache::loncommon::blocking_status('port',$uname,$udom); + my $origurl = $r->uri; + my ($blocked,$blocktext); + + if (&Apache::lonnet::is_portfolio_url($origurl)) { + my ($type,$udom,$uname,$file_name,$group) = + &Apache::lonnet::parse_portfolio_url($origurl); + ($blocked,$blocktext) = + &Apache::loncommon::blocking_status('port',$uname,$udom); + } else { + if ($env{'request.course.id'}) { + my $cnum = $env{'course.'.$env{'request.course.id'}.'.num'}; + my $cdom = $env{'course.'.$env{'request.course.id'}.'.domain'}; + ($blocked,$blocktext) = + &Apache::loncommon::blocking_status('docs',$cnum,$cdom,$origurl); + } + } if ($blocked) { $r->print(&Apache::loncommon::start_page('Access Temporarily Blocked')); $r->print($blocktext);