[LON-CAPA-cvs] cvs: loncom /interface lonextresedit.pm
raeburn
raeburn at source.lon-capa.org
Fri Dec 19 17:38:42 EST 2025
raeburn Fri Dec 19 22:38:42 2025 EDT
Modified files:
/loncom/interface lonextresedit.pm
Log:
- WCAG 2 compliance. Include "Skip to main content" as first item shown
when tabbing in page and include labels for form elements.
Index: loncom/interface/lonextresedit.pm
diff -u loncom/interface/lonextresedit.pm:1.37 loncom/interface/lonextresedit.pm:1.38
--- loncom/interface/lonextresedit.pm:1.37 Sat Jun 14 02:50:25 2025
+++ loncom/interface/lonextresedit.pm Fri Dec 19 22:38:42 2025
@@ -1,7 +1,7 @@
# The LearningOnline Network
# Documents
#
-# $Id: lonextresedit.pm,v 1.37 2025/06/14 02:50:25 raeburn Exp $
+# $Id: lonextresedit.pm,v 1.38 2025/12/19 22:38:42 raeburn Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -119,7 +119,7 @@
$description = 'External Tool Editor';
}
$r->print(&Apache::loncommon::start_page($description,$js).
- '<div class="LC_left_float">'.
+ '<div class="LC_left_float" role="main" id="LC_main_content">'.
$output.
$errormsg.
&extedit_form($supplementalflag,$residx,$url,$title,$pathitem,undef,
@@ -767,8 +767,8 @@
'</div>'."\n".
'<div style="padding:0;clear:both;margin:0;border:0"></div>'.
'<div id="'.$toolattr{'crsappenddiv'}.'" style="'.$appendstyle.'">'.
- '<span class="'.$class.'">'.&mt('Append to LTI login URL').':</span><br />'.
- '<input type="text" id="'.$toolattr{'crsappend'}.'" size="30" name="exttoolappend" value="'.$crsappend.'"'.$disabled.' /></span>'.
+ '<label><span class="'.$class.'">'.&mt('Append to LTI login URL').':</span><br />'.
+ '<input type="text" id="'.$toolattr{'crsappend'}.'" size="30" name="exttoolappend" value="'.$crsappend.'"'.$disabled.' /></label>'.
'</div>'."\n".
'<div style="padding:0;clear:both;margin:0;border:0"></div>'.
'<div id="'.$toolattr{'desturldiv'}.'" style="'.$desturlstyle.'">'.
@@ -780,7 +780,7 @@
'</span><br />'."\n".
'<div id="'.$toolattr{'desturlinfodiv'}.'" style="'.$desturlinfostyle.'">'.
'<span class="'.$class.'">'.
- '<input type="text" size="'.$size.'" name="exttooldesturl" value="'.$desturl.'"'.$disabled.' /></label></span><br />'.
+ '<input type="text" size="'.$size.'" name="exttooldesturl" value="'.$desturl.'"'.$disabled.' aria-label="'.&mt('post-login destination url').'" /></span><br />'.
'<span class="'.$class.'"><label>'.&mt('Delay between login and redirect').
':<input type="text" size="3" name="exttooldelay" value="'.$delay.'"'.$disabled.' /> s'.
'</label></span></div></div>'."\n".
@@ -802,26 +802,26 @@
'<label><input type="radio" name="exttooltarget" value="window" '.$chkstate{'window'}.'onclick="updateTooldim(this.form,'.
"'$toolattr{dimendiv}','$toolattr{windiv}','$toolattr{dimenwidth}','$toolattr{dimenheight}',
'$toolattr{linktext}','$toolattr{explanation}'".');"'.$disabled.' />'.&mt('window').'</label></span>'.
- '<div id="'.$toolattr{'dimendiv'}.'" style="'.$dimendivstyle.'"><span class="'.$class.'">'.
- &mt('Width').': <input type="text" size="4" id="'.$toolattr{'dimenwidth'}.'" name="exttoolwidth" value="'.$width.'"'.$disabled.' />'.(' 'x2).
- &mt('Height').': <input type="text" size="4" id="'.$toolattr{'dimenheight'}.'" name="exttoolheight" value="'.$height.'"'.$disabled.' /></span>'."\n".
+ '<div id="'.$toolattr{'dimendiv'}.'" style="'.$dimendivstyle.'"><span class="'.$class.'"><label>'.
+ &mt('Width').': <input type="text" size="4" id="'.$toolattr{'dimenwidth'}.'" name="exttoolwidth" value="'.$width.'"'.$disabled.' /></label>'.(' 'x2).'<label>'.
+ &mt('Height').': <input type="text" size="4" id="'.$toolattr{'dimenheight'}.'" name="exttoolheight" value="'.$height.'"'.$disabled.' /></label></span>'."\n".
'</div></div>'.
'<div id="'.$toolattr{'windiv'}.'" style="'.$windivstyle.'">'.
'<div id="'.$toolattr{'linktextdiv'}.'" class="LC_left_float" style="'.$linktextstyle.'">'.
- '<span class="'.$class.'">'.&mt('Link Text').'</span><br /><input type="text" size="25" id="'.$toolattr{'linktext'}.
- '" name="exttoollinktext" value="'.$linktext.'"'.$disabled.' />'.
+ '<label><span class="'.$class.'">'.&mt('Link Text').'</span><br /><input type="text" size="25" id="'.$toolattr{'linktext'}.
+ '" name="exttoollinktext" value="'.$linktext.'"'.$disabled.' /></label>'.
'</div><div id="'.$toolattr{'explanationdiv'}.'" class="LC_left_float" style="'.$explanationstyle.'">'.
- '<span class="'.$class.'">'.&mt('Explanation').'</span><br />'.
+ '<label><span class="'.$class.'">'.&mt('Explanation').'</span><br />'.
'<textarea rows="'.$rows.'" cols="'.$cols.'" id="'.$toolattr{'explanation'}.'" name="exttoolexplanation" '.$disabled.'>'.
- $explanation.'</textarea></div><div style="padding:0;clear:both;margin:0;border:0"></div>'.
+ $explanation.'</textarea></label></div><div style="padding:0;clear:both;margin:0;border:0"></div>'.
'</div>'.
'<div id="'.$toolattr{'crslabeldiv'}.'" style="'.$labelstyle.'">'.
- '<span class="'.$class.'">'.&mt('Course label:').' '.
- '<input type="text" id="'.$toolattr{'crslabel'}.'" name="exttoollabel" value="'.$crslabel.'"'.$disabled.' /></span><br />'.
+ '<span class="'.$class.'"><label>'.&mt('Course label:').' '.
+ '<input type="text" id="'.$toolattr{'crslabel'}.'" name="exttoollabel" value="'.$crslabel.'"'.$disabled.' /></label></span><br />'.
'</div>'."\n".
'<div id="'.$toolattr{'crstitlediv'}.'" style="'.$titlestyle.'">'.
- '<span class="'.$class.'">'.&mt('Course title:').' '.
- '<input type="text" id="'.$toolattr{'crstitle'}.'" name="exttooltitle" value="'.$crstitle.'"'.$disabled.' /></span><br />'.
+ '<span class="'.$class.'"><label>'.&mt('Course title:').' '.
+ '<input type="text" id="'.$toolattr{'crstitle'}.'" name="exttooltitle" value="'.$crstitle.'"'.$disabled.' /></label></span><br />'.
'</div>'."\n".
'<div id="'.$toolattr{'gradablediv'}.'" style="'.$gradablestyle.'">'.
'<span class="'.$class.'">'.&mt('Gradable').' '.
@@ -837,7 +837,7 @@
&mt('Yes, default URL').'</label>'.(' 'x2).
'<label><input type="radio" name="exttoolreturnurl" value="custom"'.$chkreturncust.$disabled.$onclickreturl.' />'.
&mt('Yes, specify URL').'</label></span><br />'."\n".
- '<input type="'.$customreturn.'" id="'.$toolattr{'customreturnurl'}.'" size="35" name="exttoolbacktourl" value="'.$backtourl.'"'.$disabled.' />'.
+ '<input type="'.$customreturn.'" id="'.$toolattr{'customreturnurl'}.'" size="35" name="exttoolbacktourl" value="'.$backtourl.'"'.$disabled.' aria-label="'.&mt('custom return URL').'" />'.
'</div>'."\n";
}
my $chooser = $toolelem;
@@ -955,7 +955,7 @@
$description = 'External Tool Editor';
}
return &Apache::loncommon::start_page($description,$js,$args).
- '<div class="LC_left_float">'.
+ '<div class="LC_left_float" role="main" id="LC_main_content">'.
&extedit_form($supplementalflag,$residx,$url,$title,$pathitem,undef,'direct',
$symb,$type,$cdom,$cnum,\%ltitools).
'</div>'.
More information about the LON-CAPA-cvs
mailing list