--- loncom/interface/loncommon.pm 2024/10/07 19:46:51 1.1439
+++ loncom/interface/loncommon.pm 2025/01/06 00:22:57 1.1445
@@ -1,7 +1,7 @@
# The LearningOnline Network with CAPA
# a pile of common routines
#
-# $Id: loncommon.pm,v 1.1439 2024/10/07 19:46:51 raeburn Exp $
+# $Id: loncommon.pm,v 1.1445 2025/01/06 00:22:57 raeburn Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -2476,7 +2476,7 @@ END
$cdom
0
-notset
+notset
$now
0
rights
@@ -5691,7 +5691,8 @@ sub blockcheck {
}
unless ($has_evb) {
if (($activity eq 'printout') || ($activity eq 'grades') || ($activity eq 'search') ||
- ($activity eq 'boards') || ($activity eq 'groups') || ($activity eq 'chat')) {
+ ($activity eq 'index') || ($activity eq 'boards') || ($activity eq 'groups') ||
+ ($activity eq 'chat')) {
if ($udom eq $cdom) {
$check_ipaccess = 1;
}
@@ -5782,8 +5783,8 @@ sub blockcheck {
if (($activity eq 'boards' || $activity eq 'chat' ||
$activity eq 'groups' || $activity eq 'printout' ||
- $activity eq 'search' || $activity eq 'reinit' ||
- $activity eq 'alert') &&
+ $activity eq 'search' || $activity eq 'index' ||
+ $activity eq 'reinit' || $activity eq 'alert') &&
($env{'request.course.id'})) {
foreach my $key (keys(%live_courses)) {
if ($key ne $env{'request.course.id'}) {
@@ -6118,6 +6119,8 @@ END_MYBLOCK
$text = &mt('Gradebook Blocked');
} elsif ($activity eq 'search') {
$text = &mt('Search Blocked');
+ } elsif ($activity eq 'index') {
+ $text = &mt('Content Index Blocked');
} elsif ($activity eq 'alert') {
$text = &mt('Checking Critical Messages Blocked');
} elsif ($activity eq 'reinit') {
@@ -6877,7 +6880,6 @@ sub bodytag {
my $hostname = $args->{'hostname'};
$function = &get_users_function() if (!$function);
- my $img = &designparm($function.'.img',$domain);
my $font = &designparm($function.'.font',$domain);
my $pgbg = $bgcolor || &designparm($function.'.pgbg',$domain);
@@ -7000,8 +7002,12 @@ sub bodytag {
# $titleinfo = &CSTR_pageheader(); #FIXME: Will be removed once all scripts have their own calls
# }
- $bodytag .= Apache::lonhtmlcommon::scripttag(
- Apache::lonmenu::utilityfunctions($httphost), 'start');
+ my $need_endlcint;
+ unless ($args->{'switchserver'}) {
+ $bodytag .= Apache::lonhtmlcommon::scripttag(
+ Apache::lonmenu::utilityfunctions($httphost), 'start');
+ $need_endlcint = 1;
+ }
my $collapsible;
if ($args->{'collapsible_header'} ne '') {
@@ -7037,6 +7043,9 @@ END
}
$bodytag .= qq|
$left $role
$realm $dc_info
|;
+ if ($need_endlcint) {
+ $bodytag .= Apache::lonhtmlcommon::scripttag('', 'end');
+ }
return $bodytag;
}
@@ -7054,6 +7063,9 @@ END
#if directed to not display the secondary menu, don't.
if ($args->{'no_secondary_menu'}) {
+ if ($need_endlcint) {
+ $bodytag .= Apache::lonhtmlcommon::scripttag('', 'end');
+ }
return $bodytag;
}
#don't show menus for public users
@@ -7066,7 +7078,9 @@ END
$args->{'links_target'});
}
$bodytag .= Apache::lonmenu::serverform();
- $bodytag .= Apache::lonhtmlcommon::scripttag('', 'end');
+ if ($need_endlcint) {
+ $bodytag .= Apache::lonhtmlcommon::scripttag('', 'end');
+ }
if ($env{'request.state'} eq 'construct') {
$bodytag .= &Apache::lonmenu::innerregister($forcereg,
$args->{'bread_crumbs'},'','',$hostname,
@@ -7082,11 +7096,13 @@ END
$args->{'bread_crumbs'},
$advtoolsref,'',$hostname);
}
- }else{
- # this is to seperate menu from content when there's no secondary
- # menu. Especially needed for public accessible ressources.
+ } else {
+ # this is to separate menu from content when there's no secondary
+ # menu. Especially needed for publicly accessible resources.
$bodytag .= '
';
- $bodytag .= Apache::lonhtmlcommon::scripttag('', 'end');
+ if ($need_endlcint) {
+ $bodytag .= Apache::lonhtmlcommon::scripttag('', 'end');
+ }
}
if ($args->{'collapsible_header'} ne '') {
$bodytag .= $args->{'collapsible_header'}.
@@ -7221,7 +7237,6 @@ Inputs: (all optional)
sub standard_css {
my ($function,$domain,$bgcolor) = @_;
$function = &get_users_function() if (!$function);
- my $img = &designparm($function.'.img', $domain);
my $tabbg = &designparm($function.'.tabbg', $domain);
my $font = &designparm($function.'.font', $domain);
my $fontmenu = &designparm($function.'.fontmenu', $domain);
@@ -7286,6 +7301,16 @@ form, .inline {
display: inline;
}
+.LC_visually_hidden:not(:focus):not(:active) {
+ clip-path: inset(50%);
+ height: 1px;
+ overflow: hidden;
+ position: absolute;
+ white-space: nowrap;
+ width: 1px;
+ display: inline;
+}
+
.LC_menus_content.shown{
display: block;
}