--- loncom/interface/lonhtmlcommon.pm 2023/09/11 14:13:31 1.358.2.20
+++ loncom/interface/lonhtmlcommon.pm 2024/10/21 15:06:06 1.358.2.23
@@ -1,7 +1,7 @@
# The LearningOnline Network with CAPA
# a pile of common html routines
#
-# $Id: lonhtmlcommon.pm,v 1.358.2.20 2023/09/11 14:13:31 raeburn Exp $
+# $Id: lonhtmlcommon.pm,v 1.358.2.23 2024/10/21 15:06:06 raeburn Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -1268,9 +1268,9 @@ sub htmlareaheaders {
ENDEDITOR
}
$s.=(<
-
-
+
+
+
@@ -1680,7 +1680,7 @@ sub show_return_link {
$env{'request.uri'}=~m{^/priv/}) { return 1; }
return if ($env{'request.noversionuri'} eq '/adm/supplemental');
- if (($env{'request.noversionuri'} =~ m{^/adm/(viewclasslist|navmaps)($|\?)})
+ if (($env{'request.noversionuri'} =~ m{^/adm/viewclasslist($|\?)})
|| ($env{'request.noversionuri'} =~ m{^/adm/.*/aboutme($|\?)})) {
return if ($env{'form.register'});
@@ -1772,13 +1772,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);
});
});
@@ -3427,7 +3433,10 @@ THIRD
sub javascript_jumpto_resource {
my $confirm_switch = &mt("Editing requires switching to the resource's home server.")."\n".
&mt('Switch server?');
+ my $confirm_new_tab = &mt("Editing requires using the resource's home server.")."\n".
+ &mt('Open a new browser tab?');
&js_escape(\$confirm_switch);
+ &js_escape(\$confirm_new_tab);
return (<&');
- if ($symb) {
- $cfile .= '&symb='.&HTML::Entities::encode($symb,'"<>&');
+ if ($shownsymb) {
+ $cfile .= '&symb='.&HTML::Entities::encode($shownsymb,'"<>&');
+ if ($resedit) {
+ $cfile .= '&edit=1';
+ }
} elsif ($folderpath) {
$cfile .= '&folderpath='.&HTML::Entities::encode($folderpath,'"<>&');
}
@@ -3480,7 +3509,7 @@ sub jump_to_editres {
if ($forcereg) {
$cfile .= '®ister=1';
}
- $jscall = "need_switchserver('".&Apache::loncommon::escape_single($cfile)."');";
+ $jscall = "need_switchserver('".&Apache::loncommon::escape_single($cfile)."','$target');";
}
} else {
unless ($cfile =~ m{^/priv/}) {