--- loncom/interface/lonblockingstatus.pm 2012/03/31 14:19:24 1.8
+++ loncom/interface/lonblockingstatus.pm 2020/09/03 14:06:06 1.14.2.1
@@ -1,7 +1,7 @@
# The LearningOnline Network with CAPA
# displays the blocking status table
#
-# $Id: lonblockingstatus.pm,v 1.8 2012/03/31 14:19:24 raeburn Exp $
+# $Id: lonblockingstatus.pm,v 1.14.2.1 2020/09/03 14:06:06 raeburn Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -44,7 +44,7 @@ sub handler {
return OK if $r->header_only;
my (%activities,$activity,$origurl);
- map { $activities{$_} = 1; } ('boards','chat','msgdisplay','blogs','groups','port','docs');
+ map { $activities{$_} = 1; } ('boards','chat','com','blogs','groups','port','printout','docs','passwd');
# determine what kind of blocking we want details for
&Apache::loncommon::get_unprocessed_cgi($ENV{'QUERY_STRING'},['activity','url']);
@@ -52,9 +52,12 @@ sub handler {
my $title = 'Communication Blocking Status Information';
- if ($activity eq 'docs') {
+ if (($activity eq 'docs') || ($activity eq 'printout') ||
+ ($activity eq 'passwd')) {
$title = 'Blocking Status Information';
- $origurl = $env{'form.url'};
+ if ($activity eq 'docs') {
+ $origurl = $env{'form.url'};
+ }
}
$r->print(&Apache::loncommon::start_page($title,undef,
{'only_body' => 1}));
@@ -78,16 +81,24 @@ sub blockpage {
# we're trying to look at. This information is passed via query string.
my ($uname, $udom);
- if ($activity eq 'port') {
+ if (($activity eq 'port') ||
+ (($activity eq 'passwd') && ($env{'user.name'} eq 'public') && ($env{'user.domain'} eq 'public'))) {
&Apache::loncommon::get_unprocessed_cgi(
$ENV{'QUERY_STRING'}, ['udom', 'uname'] );
($uname, $udom) = ($env{'form.uname'}, $env{'form.udom'});
if (($uname !~ /^$match_username$/) || ($udom !~ /^$match_domain$/)) {
- return ''.
- &mt('Information about the owner of the portfolio files you were trying to view was missing or invalid.').
- '
'.
- &mt('Without valid owner information, the reason why access is blocked can not be determined');
+ if ($activity eq 'port') {
+ return ''.
+ &mt('Information about the owner of the portfolio files you were trying to view was missing or invalid.').
+ '
'.
+ &mt('Without valid owner information, the reason why access is blocked can not be determined');
+ } else {
+ return ''.
+ &mt('Information about the username and/or domain for which you were trying to reset a password was missing or invalid.').
+ '
'.
+ &mt('Without valid information, the reason why access is blocked can not be determined');
+ }
}
}
@@ -95,7 +106,7 @@ sub blockpage {
# retrieve start/end of possible active blocking
my %setters;
my ($startblock,$endblock,$triggerblock) =
- &Apache::loncommon::blockcheck(\%setters,$activity,$uname,$udom,$url);
+ &Apache::loncommon::blockcheck(\%setters,$activity,$uname,$udom,$origurl);
# nothing to do if there's no active blocking
unless ($startblock && $endblock) { return ''; }
@@ -105,14 +116,16 @@ sub blockpage {
my %descs = (
boards => 'Discussion posts in this course',
chat => 'Chat Room',
- msgdisplay => 'This message',
+ com => 'This message',
blogs => 'Blogs',
groups => 'Groups in this course',
+ printout => 'Printout generation',
docs => 'Course Content',
+ passwd => 'Changing of passwords',
);
if ($activity eq 'groups' || $activity eq 'boards') {
- if (&course_type() eq 'Community') {
+ if (&Apache::loncommon::course_type() eq 'Community') {
$descs{'boards'} = 'Discussion posts in this community',
$descs{'groups'} = 'Groups in this community',
$descs{'docs'} = 'Community Content',
@@ -135,11 +148,15 @@ sub blockpage {
if ( ref($description) ne 'ARRAY' ) {
#default: $description is one of the above descriptions
if ($activity eq 'docs') {
- $output=&mt( 'Access to the content page you are attempting to
+ $output=&mt( 'Access to the content page you are attempting to'
. ' view will be unavailable between [_1] and [_2] because'
- . ' access to selected $description is being blocked.'
+ . ' access to selected '.$description.' is being blocked.'
,$showstart, $showend);
- }
+ } elsif (($activity eq 'printout') || ($activity eq 'passwd')) {
+ $output = mt( $description
+ . ' will be unavailable between [_1] and [_2] because'
+ . ' this functionality is being blocked.'
+ ,$showstart, $showend);
} else {
$output = mt( $description
. ' will be inaccessible between [_1] and [_2] because'
@@ -174,7 +191,7 @@ sub blockpage {
sub build_block_table {
my ($setters) = @_;
my %lt = &Apache::lonlocal::texthash(
- 'cacb' => 'Currently active communication blocks',
+ 'cacb' => 'Currently active communication/content blocks',
'cour' => 'Course',
'dura' => 'Duration',
'blse' => 'Block set by'
@@ -197,7 +214,7 @@ sub build_block_table {
{
$fullname = Apache::loncommon::aboutmewrapper($fullname,$uname,$udom);
}
- my $triggertype = $$setters{$course}{times}[$i];
+ my $triggertype = $$setters{$course}{triggers}[$i];
if ($triggertype) {
$fullname .= &mt(' (triggered by you when starting timer)');
}