version 1.381, 2006/10/23 22:32:09
|
version 1.382, 2006/10/24 01:03:54
|
Line 1570 sub handback_box {
|
Line 1570 sub handback_box {
|
} |
} |
|
|
sub show_problem { |
sub show_problem { |
my ($request,$symb,$uname,$udom,$removeform,$viewon,$mode) = @_; |
my ($request,$symb,$uname,$udom,$removeform,$viewon,$mode,$form) = @_; |
my $rendered; |
my $rendered; |
|
my %form = ((ref($form) eq 'HASH')? %{$form} : ()); |
&Apache::lonxml::remember_problem_counter(); |
&Apache::lonxml::remember_problem_counter(); |
if ($mode eq 'both' or $mode eq 'text') { |
if ($mode eq 'both' or $mode eq 'text') { |
$rendered=&Apache::loncommon::get_student_view($symb,$uname,$udom, |
$rendered=&Apache::loncommon::get_student_view($symb,$uname,$udom, |
$env{'request.course.id'}); |
$env{'request.course.id'}, |
|
undef,\%form); |
} |
} |
if ($removeform) { |
if ($removeform) { |
$rendered=~s|<form(.*?)>||g; |
$rendered=~s|<form(.*?)>||g; |
Line 1585 sub show_problem {
|
Line 1587 sub show_problem {
|
my $companswer; |
my $companswer; |
if ($mode eq 'both' or $mode eq 'answer') { |
if ($mode eq 'both' or $mode eq 'answer') { |
&Apache::lonxml::restore_problem_counter(); |
&Apache::lonxml::restore_problem_counter(); |
$companswer=&Apache::loncommon::get_student_answers($symb,$uname,$udom, |
$companswer= |
$env{'request.course.id'}); |
&Apache::loncommon::get_student_answers($symb,$uname,$udom, |
|
$env{'request.course.id'}, |
|
%form); |
} |
} |
if ($removeform) { |
if ($removeform) { |
$companswer=~s|<form(.*?)>||g; |
$companswer=~s|<form(.*?)>||g; |
Line 3778 LISTJAVASCRIPT
|
Line 3782 LISTJAVASCRIPT
|
'<input type="hidden" name="symb" value="'.$symb.'" />'."\n". |
'<input type="hidden" name="symb" value="'.$symb.'" />'."\n". |
'<input type="hidden" name="saveState" value="'.$env{'form.saveState'}.'" />'."<br />\n"; |
'<input type="hidden" name="saveState" value="'.$env{'form.saveState'}.'" />'."<br />\n"; |
|
|
|
$result.=' <b>'.&mt('Use CODE:').' </b>'. |
|
'<input type="text" name="CODE" value="" /><br />'."\n"; |
|
|
$result.=' <input type="button" '. |
$result.=' <input type="button" '. |
'onClick="javascript:checkPickOne(this.form);"value="Next->" /><br />'."\n"; |
'onClick="javascript:checkPickOne(this.form);"value="Next->" /><br />'."\n"; |
|
|
Line 3871 sub displayPage {
|
Line 3878 sub displayPage {
|
my $result='<h3><font color="#339933"> '.$env{'form.title'}.'</font></h3>'; |
my $result='<h3><font color="#339933"> '.$env{'form.title'}.'</font></h3>'; |
$result.='<h3> Student: '.&nameUserString(undef,$$fullname{$env{'form.student'}},$uname,$udom). |
$result.='<h3> Student: '.&nameUserString(undef,$$fullname{$env{'form.student'}},$uname,$udom). |
'</h3>'."\n"; |
'</h3>'."\n"; |
|
if (&Apache::lonnet::validCODE($env{'form.CODE'})) { |
|
$result.='<h3> CODE: '.$env{'form.CODE'}.'</h3>'."\n"; |
|
} else { |
|
delete($env{'form.CODE'}); |
|
} |
&sub_page_js($request); |
&sub_page_js($request); |
$request->print($result); |
$request->print($result); |
|
|
Line 3895 sub displayPage {
|
Line 3907 sub displayPage {
|
'<input type="hidden" name="overRideScore" value="no" />'."\n". |
'<input type="hidden" name="overRideScore" value="no" />'."\n". |
'<input type="hidden" name="saveState" value="'.$env{'form.saveState'}.'" />'."\n"; |
'<input type="hidden" name="saveState" value="'.$env{'form.saveState'}.'" />'."\n"; |
|
|
|
if (defined($env{'form.CODE'})) { |
|
$studentTable.= |
|
'<input type="hidden" name="CODE" value="'.$env{'form.CODE'}.'" />'."\n"; |
|
} |
my $checkIcon = '<img alt="'.&mt('Check Mark'). |
my $checkIcon = '<img alt="'.&mt('Check Mark'). |
'" src="'.$request->dir_config('lonIconsURL'). |
'" src="'.$request->dir_config('lonIconsURL'). |
'/check.gif" height="16" border="0" />'; |
'/check.gif" height="16" border="0" />'; |
Line 3921 sub displayPage {
|
Line 3937 sub displayPage {
|
$studentTable.='<tr bgcolor="#ffffe6"><td align="center" valign="top" >'.$prob. |
$studentTable.='<tr bgcolor="#ffffe6"><td align="center" valign="top" >'.$prob. |
(scalar(@{$parts}) == 1 ? '' : '<br />('.scalar(@{$parts}).' parts)').'</td>'; |
(scalar(@{$parts}) == 1 ? '' : '<br />('.scalar(@{$parts}).' parts)').'</td>'; |
$studentTable.='<td valign="top">'; |
$studentTable.='<td valign="top">'; |
|
my %form = ('CODE' => $env{'form.CODE'},); |
if ($env{'form.vProb'} eq 'yes' ) { |
if ($env{'form.vProb'} eq 'yes' ) { |
$studentTable.=&show_problem($request,$symbx,$uname,$udom,1, |
$studentTable.=&show_problem($request,$symbx,$uname,$udom,1, |
undef,'both'); |
undef,'both'); |
} else { |
} else { |
my $companswer = &Apache::loncommon::get_student_answers($symbx,$uname,$udom,$env{'request.course.id'}); |
my $companswer = &Apache::loncommon::get_student_answers($symbx,$uname,$udom,$env{'request.course.id'},%form); |
$companswer =~ s|<form(.*?)>||g; |
$companswer =~ s|<form(.*?)>||g; |
$companswer =~ s|</form>||g; |
$companswer =~ s|</form>||g; |
# while ($companswer =~ /(<a href\=\"javascript:newWindow.*?Script Vars<\/a>)/s) { #<a href="javascript:newWindow</a> |
# while ($companswer =~ /(<a href\=\"javascript:newWindow.*?Script Vars<\/a>)/s) { #<a href="javascript:newWindow</a> |
Line 4084 sub displaySubByDates {
|
Line 4101 sub displaySubByDates {
|
if ($displaySub[2]) { |
if ($displaySub[2]) { |
$studentTable.='Manually graded by '.$displaySub[2]; |
$studentTable.='Manually graded by '.$displaySub[2]; |
} |
} |
$studentTable.=' </td></tr>3'; |
$studentTable.=' </td></tr>'; |
|
|
} |
} |
$studentTable.='</table></td></tr></table>'; |
$studentTable.='</table></td></tr></table>'; |
Line 4204 sub updateGradeByPage {
|
Line 4221 sub updateGradeByPage {
|
$changeflag++; |
$changeflag++; |
} |
} |
if (scalar(keys(%newrecord)) > 0) { |
if (scalar(keys(%newrecord)) > 0) { |
|
my %record = |
|
&Apache::lonnet::restore($symbx,$env{'request.course.id'}, |
|
$udom,$uname); |
|
|
|
if (&Apache::lonnet::validCODE($env{'form.CODE'})) { |
|
$newrecord{'resource.CODE'} = $env{'form.CODE'}; |
|
} elsif (&Apache::lonnet::validCODE($record{'resource.CODE'})) { |
|
$newrecord{'resource.CODE'} = ''; |
|
} |
&Apache::lonnet::cstore(\%newrecord,$symbx,$env{'request.course.id'}, |
&Apache::lonnet::cstore(\%newrecord,$symbx,$env{'request.course.id'}, |
$udom,$uname); |
$udom,$uname); |
my %record = &Apache::lonnet::restore($symbx,$env{'request.course.id'}, |
%record = &Apache::lonnet::restore($symbx, |
$udom,$uname); |
$env{'request.course.id'}, |
|
$udom,$uname); |
&check_and_remove_from_queue($parts,\%record,undef,$symbx, |
&check_and_remove_from_queue($parts,\%record,undef,$symbx, |
$cdom,$cnum,$udom,$uname); |
$cdom,$cnum,$udom,$uname); |
} |
} |