version 1.358.2.19.2.6, 2023/01/23 05:47:50
|
version 1.358.2.19.2.8, 2023/09/11 12:10:39
|
Line 1762 clientTime = (new Date()).getTime();
|
Line 1762 clientTime = (new Date()).getTime();
|
END |
END |
} |
} |
|
|
|
## |
|
# Client-side javascript to convert any dashes in text pasted |
|
# into textbox(es) for numericalresponse item(s) to a standard |
|
# minus, i.e., - . Calls to dash_to_minus_js() in end_problem() |
|
# and in loncommon::endbodytag() for a .page (arg: dashjs => 1) |
|
# |
|
# Will apply to any input tag with class: LC_numresponse_text. |
|
# Currently set in start_textline for numericalresponse items. |
|
# |
|
|
|
sub dash_to_minus_js { |
|
return <<'ENDJS'; |
|
|
|
<script type="text/javascript"> |
|
//<![CDATA[ |
|
//<!-- BEGIN LON-CAPA Internal |
|
document.addEventListener("DOMContentLoaded", (event) => { |
|
const numresp = document.querySelectorAll("input.LC_numresponse_text"); |
|
if (numresp.length > 0) { |
|
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, '-'); |
|
putInText(p); |
|
}); |
|
}); |
|
} |
|
const putInText = (newText, el = document.activeElement) => { |
|
const [start, end] = [el.selectionStart, el.selectionEnd]; |
|
el.setRangeText(newText, start, end, 'end'); |
|
} |
|
}); |
|
// END LON-CAPA Internal --> |
|
//]]> |
|
</script> |
|
|
|
ENDJS |
|
} |
|
|
############################################################ |
############################################################ |
############################################################ |
############################################################ |
|
|
Line 3473 sub jump_to_editres {
|
Line 3515 sub jump_to_editres {
|
if ($cfile =~ m{^/priv/($match_domain)/($match_username)/}) { |
if ($cfile =~ m{^/priv/($match_domain)/($match_username)/}) { |
my ($audom,$auname) = ($1,$2); |
my ($audom,$auname) = ($1,$2); |
unless (&Apache::lonnet::is_course($audom,$auname)) { |
unless (&Apache::lonnet::is_course($audom,$auname)) { |
unless ((&Apache::lonnet::will_trust('othcoau',$env{'user.domain'},$audom)) && |
|
(&Apache::lonnet::will_trust('coaurem',$audom,$env{'user.domain'}))) { |
|
return; |
|
} |
|
if (($symb ne '') && ($env{'request.course.id'}) && |
if (($symb ne '') && ($env{'request.course.id'}) && |
(&Apache::lonnet::allowed('mdc',$env{'request.course.id'}))) { |
(&Apache::lonnet::allowed('mdc',$env{'request.course.id'}))) { |
unless (&Apache::lonnet::can_switchserver($env{'user.domain'},$home)) { |
unless (&Apache::lonnet::can_switchserver($env{'user.domain'},$home)) { |