version 1.233, 2013/04/29 21:09:40
|
version 1.240, 2015/02/22 01:34:48
|
Line 56 use Apache::lonnet;
|
Line 56 use Apache::lonnet;
|
use Apache::inputtags(); |
use Apache::inputtags(); |
use Apache::lonmaxima(); |
use Apache::lonmaxima(); |
use Apache::lonr(); |
use Apache::lonr(); |
|
use Apache::lontexconvert(); |
|
|
BEGIN { |
BEGIN { |
&Apache::lonxml::register('Apache::response',('responseparam','parameter','dataresponse','customresponse','mathresponse')); |
&Apache::lonxml::register('Apache::response',('responseparam','parameter','dataresponse','customresponse','mathresponse')); |
Line 180 sub setrandomnumber {
|
Line 181 sub setrandomnumber {
|
} else { |
} else { |
($rndmod,$rndmod2)=&Apache::lonnet::digest("$id1,$id2"); |
($rndmod,$rndmod2)=&Apache::lonnet::digest("$id1,$id2"); |
} |
} |
$Apache::lonhomework::results{'resource.'.$id1.'.rawrndseed'}=$rndseed; |
|
if ($rndseed =~/([,:])/) { |
if ($rndseed =~/([,:])/) { |
my $char=$1; |
my $char=$1; |
use integer; |
use integer; |
Line 197 sub setrandomnumber {
|
Line 197 sub setrandomnumber {
|
} |
} |
} |
} |
&Apache::lonxml::debug("randseed $rndmod $rndseed"); |
&Apache::lonxml::debug("randseed $rndmod $rndseed"); |
$Apache::lonhomework::results{'resource.'.$id1.'.rndseed'}=$rndseed; |
|
&Apache::lonnet::setup_random_from_rndseed($rndseed); |
&Apache::lonnet::setup_random_from_rndseed($rndseed); |
return ''; |
return ''; |
} |
} |
Line 399 sub end_dataresponse {
|
Line 398 sub end_dataresponse {
|
$Apache::lonhomework::results{"resource.$partid.$id.awarddetail"}='SUBMITTED'; |
$Apache::lonhomework::results{"resource.$partid.$id.awarddetail"}='SUBMITTED'; |
} |
} |
} else { |
} else { |
$result='Not Permitted to change values.' |
$result=&mt('Not Permitted to change values'); |
} |
} |
} |
} |
} |
} |
Line 577 sub start_mathresponse {
|
Line 576 sub start_mathresponse {
|
} |
} |
|
|
sub edit_mathresponse_button { |
sub edit_mathresponse_button { |
my ($id,$field)=@_; |
my ($partid,$id)=@_; |
my $button=&mt('Edit Answer'); |
my $field = 'HWVAL_'.$partid.'_'.$id; |
# my $helplink=&Apache::loncommon::help_open_topic('Formula_Editor'); |
my $btype = $env{'browser.type'}; |
my $iconpath=$Apache::lonnet::perlvar{'lonIconsURL'}; |
my $bversion = $env{'browser.version'}; |
return(<<ENDFORMULABUTTON); |
if (($btype eq 'explorer' && $bversion < 9) || ($btype eq 'safari' && $bversion < 3) || |
|
($btype eq 'mozilla' && $bversion < 3)) { |
|
# DragMath applet |
|
my $button=&mt('Edit Answer'); |
|
# my $helplink=&Apache::loncommon::help_open_topic('Formula_Editor'); |
|
my $iconpath=$Apache::lonnet::perlvar{'lonIconsURL'}; |
|
return(<<ENDFORMULABUTTON); |
<script type="text/javascript" language="JavaScript"> |
<script type="text/javascript" language="JavaScript"> |
function edit_${id}_${field} (textarea) { |
function LC_mathedit_${field} (LCtextline) { |
thenumber = textarea; |
thenumber = LCtextline; |
thedata = document.forms['lonhomework'].elements[textarea].value; |
var thedata = ''; |
newwin = window.open("/adm/dragmath/applet/MaximaPopup.html","","width=565,height=400,resizable"); |
if (document.getElementById(LCtextline)) { |
|
thedata = document.getElementById(LCtextline).value; |
|
} |
|
newwin = window.open("/adm/dragmath/MaximaPopup.html","","width=565,height=400,resizable"); |
} |
} |
</script> |
</script> |
<a href="javascript:edit_${id}_${field}('${field}');void(0);"><img class="stift" src="$iconpath/stift.gif" alt="$button" title="$button" /></a> |
<a href="javascript:LC_mathedit_${field}('${field}');void(0);"><img class="stift" src="$iconpath/stift.gif" alt="$button" title="$button" /></a> |
ENDFORMULABUTTON |
ENDFORMULABUTTON |
|
|
|
} else { |
|
# LON-CAPA math equation editor |
|
my $mathjaxjs; |
|
unless (lc(&Apache::lontexconvert::tex_engine()) eq 'mathjax') { |
|
$mathjaxjs = <<"MATHJAX_SCRIPT"; |
|
var mathjaxscript = document.createElement("script"); |
|
mathjaxscript.type = "text/javascript"; |
|
mathjaxscript.src = "/adm/MathJax/MathJax.js?config=TeX-AMS-MML_HTMLorMML"; |
|
document.body.appendChild(mathjaxscript); |
|
MATHJAX_SCRIPT |
|
} |
|
return(<<EQ_EDITOR_SCRIPT); |
|
<script type="text/javascript"> |
|
var LCmathField = document.getElementById('${field}'); |
|
LCmathField.className += ' math'; // note the space |
|
LCmathField.setAttribute('data-implicit_operators', 'true'); |
|
var LCMATH_started; |
|
if (typeof LCMATH_started === 'undefined') { |
|
$mathjaxjs |
|
LCMATH_started = true; |
|
var script = document.createElement("script"); |
|
script.type = "text/javascript"; |
|
script.src = "/adm/LC_math_editor/LC_math_editor.min.js"; |
|
document.body.appendChild(script); |
|
window.addEventListener('load', function(e) { |
|
LCMATH.initEditors(); |
|
}, false); |
|
} |
|
</script> |
|
EQ_EDITOR_SCRIPT |
|
} |
} |
} |
|
|
sub end_mathresponse { |
sub end_mathresponse { |
Line 653 sub end_mathresponse {
|
Line 693 sub end_mathresponse {
|
my $id = $Apache::inputtags::response[-1]; |
my $id = $Apache::inputtags::response[-1]; |
if (($Apache::inputtags::status['-1'] eq 'CAN_ANSWER') |
if (($Apache::inputtags::status['-1'] eq 'CAN_ANSWER') |
&& (&Apache::lonnet::EXT('resource.'.$partid.'_'.$id.'.turnoffeditor') ne 'yes')) { |
&& (&Apache::lonnet::EXT('resource.'.$partid.'_'.$id.'.turnoffeditor') ne 'yes')) { |
$result.=&edit_mathresponse_button($id,"HWVAL_$id"); |
$result.=&edit_mathresponse_button($partid,$id); |
} |
} |
} |
} |
|
|
Line 863 sub answer_header {
|
Line 903 sub answer_header {
|
if ($Apache::lonhomework::type eq 'exam') { |
if ($Apache::lonhomework::type eq 'exam') { |
$bit = ($Apache::lonxml::counter+$increment).') '; |
$bit = ($Apache::lonxml::counter+$increment).') '; |
} else { |
} else { |
$bit .= ' Answer for Part: \verb|'. |
$bit .= ' '.&mt('Answer for Part: [_1]', |
$Apache::inputtags::part.'| '; |
'\verb|'.$Apache::inputtags::part.'|').' '; |
} |
} |
push(@answer_bits,$bit); |
push(@answer_bits,$bit); |
} else { |
} else { |
Line 1379 sub check_status {
|
Line 1419 sub check_status {
|
if (!defined($id)) { $id=$Apache::inputtags::part; } |
if (!defined($id)) { $id=$Apache::inputtags::part; } |
my $curtime=&Apache::lonnet::EXT('system.time'); |
my $curtime=&Apache::lonnet::EXT('system.time'); |
my $opendate=&Apache::lonnet::EXT("resource.$id.opendate"); |
my $opendate=&Apache::lonnet::EXT("resource.$id.opendate"); |
my $duedate=&Apache::lonnet::EXT("resource.$id.duedate"); |
my $duedate=&Apache::lonhomework::due_date($id); |
my $answerdate=&Apache::lonnet::EXT("resource.$id.answerdate"); |
my $answerdate=&Apache::lonnet::EXT("resource.$id.answerdate"); |
if ( $opendate && $curtime > $opendate && |
if ( $opendate && $curtime > $opendate && |
$duedate && $curtime > $duedate && |
$duedate && $curtime > $duedate && |