--- loncom/interface/lonhtmlcommon.pm 2024/04/14 17:12:27 1.411 +++ loncom/interface/lonhtmlcommon.pm 2024/10/21 14:16:11 1.415 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # a pile of common html routines # -# $Id: lonhtmlcommon.pm,v 1.411 2024/04/14 17:12:27 raeburn Exp $ +# $Id: lonhtmlcommon.pm,v 1.415 2024/10/21 14:16:11 raeburn Exp $ # # Copyright Michigan State University Board of Trustees # @@ -1317,9 +1317,9 @@ sub htmlareaheaders { ENDEDITOR } $s.=(< - - + + + @@ -1850,13 +1850,19 @@ sub dash_to_minus_js { document.addEventListener("DOMContentLoaded", (event) => { const numresp = document.querySelectorAll("input.LC_numresponse_text"); if (numresp.length > 0) { - numresp.forEach((el) => { + Array.from(numresp).forEach((el) => { el.addEventListener("paste", (e) => { e.preventDefault(); e.stopPropagation(); let p = (e.clipboardData || window.clipboardData).getData("text"); p.toString(); - p = p.replace(/\p{Dash}/gu, '-'); + var regex; + try + { + regex = new RegExp ("\\p{Dash}", "gu"); + } + catch (e) { regex = new RegExp ("[\\u058A\\u05BE\\u1400\\u1806\\u2010-\\u2015\\u2212\\u2E3A\\u2E3B\\u2E5D\\u301C\\uFE58\\uFE63\\uFF0D]","g"); } + p = p.replace(regex,'-'); putInText(p); }); }); @@ -1909,9 +1915,10 @@ boolean, controls whether to include a l if 'nohelp' don't include the orange help link -=item $css_class +=item $crumbs_style -optional name for the class to apply to the table for CSS +optional style attribute for div containing breadcrumbs +unless called from docs_breadcrumbs =item $no_mt @@ -1969,11 +1976,9 @@ returns: nothing my %tools = (); sub breadcrumbs { - my ($component,$component_help,$menulink,$helplink,$css_class,$no_mt, + my ($component,$component_help,$menulink,$helplink,$crumbs_style,$no_mt, $CourseBreadcrumbs,$topic_help,$topic_help_text,$links_target) = @_; # - $css_class ||= 'LC_breadcrumbs'; - # Make the faq and bug data cascade my $faq = ''; my $bug = ''; @@ -2127,8 +2132,13 @@ returns: nothing } if (($links ne '') || ($nav_and_tools)) { &render_tools(\$links); - $links = &htmltag('div', $links, - { id => "LC_breadcrumbs" }) unless ($CourseBreadcrumbs) ; + unless ($CourseBreadcrumbs) { + my $args = { id => 'LC_breadcrumbs' }; + if ($crumbs_style ne '') { + $args->{'style'} = $crumbs_style; + } + $links = &htmltag('div', $links, $args); + } } my $adv_tools = 0; if (ref($tools{'advtools'}) eq 'ARRAY') {