[LON-CAPA-cvs] cvs: rat / lonwrapper.pm
raeburn
raeburn at source.lon-capa.org
Fri Dec 19 16:28:37 EST 2025
raeburn Fri Dec 19 21:28:37 2025 EDT
Modified files:
/rat lonwrapper.pm
Log:
- WCAG 2 compliance. Include "Skip to main content" as first item shown
when tabbing in page.
Index: rat/lonwrapper.pm
diff -u rat/lonwrapper.pm:1.88 rat/lonwrapper.pm:1.89
--- rat/lonwrapper.pm:1.88 Sun Sep 7 04:21:14 2025
+++ rat/lonwrapper.pm Fri Dec 19 21:28:37 2025
@@ -1,7 +1,7 @@
# The LearningOnline Network with CAPA
# Wrapper for external and binary files as standalone resources
#
-# $Id: lonwrapper.pm,v 1.88 2025/09/07 04:21:14 raeburn Exp $
+# $Id: lonwrapper.pm,v 1.89 2025/12/19 21:28:37 raeburn Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -100,6 +100,7 @@
}
my ($countdown,$donemsg,$headjs);
+ my $skiptotarget = "\n".'<div class="LC_landmark" role="main" id="LC_main_content">'."\n";
if (($exttool) && (&Apache::lonnet::EXT('resource.0.gradable') =~ /^yes$/i)) {
$Apache::lonhomework::browse = &Apache::lonnet::allowed('bre',$url);
if ($env{'form.markaccess'}) {
@@ -151,7 +152,7 @@
&Apache::lonfeedback::list_discussion('tool','OPEN');
}
return &Apache::loncommon::start_page('Menu',undef,$args).
- $result.
+ $skiptotarget.$result.'</div>'.
&Apache::loncommon::end_page();
}
}
@@ -185,7 +186,7 @@
}
if ($clientmobile || ($exttool eq 'window') || ($exttool eq 'tab') ||
($is_ext eq 'tab') || ($is_ext eq 'window')) {
- my $output = $startpage;
+ my $output = $startpage.$skiptotarget;
if ($is_pdf) {
$linktext = &mt('Link to PDF (for mobile devices)');
$output .= &create_link($url,$anchor,$title,$linktext);
@@ -304,11 +305,11 @@
"</div>\n";
}
}
- $output .= $endpage;
+ $output .= '</div>'.$endpage;
return $output;
} elsif ($uselink) {
$linktext = &mt('Link to resource');
- return $startpage.&create_link($url,$anchor,$title,$linktext).$endpage;
+ return $startpage.$skiptotarget.&create_link($url,$anchor,$title,$linktext).'</div>'.$endpage;
} else {
# javascript will position the iframe if window was resized (or zoomed)
my $script = &Apache::loncommon::iframe_wrapper_resizejs();
@@ -316,7 +317,7 @@
return <<ENDFRAME;
$startpage
$script
- <div class="LC_iframecontainer">
+ <div class="LC_iframecontainer" role="main" id="LC_main_content">
<iframe src="$dest">$lt{'noif'} $noiframe</iframe>
</div>
$endpage
More information about the LON-CAPA-cvs
mailing list