version 1.250, 2008/12/06 12:49:12
|
version 1.253, 2008/12/11 14:52:30
|
Line 461 sub end_hiddenline {
|
Line 461 sub end_hiddenline {
|
$part -> partid |
$part -> partid |
$id -> responseid |
$id -> responseid |
$uploadefiletypes -> comma seperated list of extensions allowed or * for any |
$uploadefiletypes -> comma seperated list of extensions allowed or * for any |
$which -> 'uploadedonly' -> only newly uploaded files |
$which -> 'uploadonly' -> only newly uploaded files |
'portfolioonly' -> only allow files from portfolio |
'portfolioonly' -> only allow files from portfolio |
'both' -> allow files from either location |
'both' -> allow files from either location |
$extratext -> additional text to go between the link and the input box |
$extratext -> additional text to go between the link and the input box |
|
$maxfilesize -> maximum cumulative filesize for submitted files (in MB). |
returns a table row <tr> |
returns a table row <tr> |
|
|
=cut |
=cut |
|
|
sub file_selector { |
sub file_selector { |
my ($part,$id,$uploadedfiletypes,$which,$extratext)=@_; |
my ($part,$id,$uploadedfiletypes,$which,$extratext,$maxfilesize)=@_; |
if (!$uploadedfiletypes) { return ''; } |
if (!$uploadedfiletypes) { return ''; } |
|
|
my $jspart=$part; |
my $jspart=$part; |
Line 479 sub file_selector {
|
Line 480 sub file_selector {
|
my $result; |
my $result; |
|
|
$result.='<tr><td>'; |
$result.='<tr><td>'; |
if ($uploadedfiletypes ne '*') { |
if (($uploadedfiletypes ne '*') || ($maxfilesize)) { |
$result.= |
if ($uploadedfiletypes ne '*') { |
&mt('Allowed filetypes: [_1]','<b>'.$uploadedfiletypes.'</b>').'<br />'; |
$result.= |
|
&mt('Allowed filetypes: [_1]','<b>'.$uploadedfiletypes.'</b>').'<br />'; |
|
} |
|
if ($maxfilesize) { |
|
$result.=&mt('Combined size of files not to exceed: [_1] MB[_2].', |
|
'<b>'.$maxfilesize.'</b>').'<br />'; |
|
} |
|
$result .= '<br />'; |
} |
} |
if ($which eq 'uploadonly' || $which eq 'both') { |
if ($which eq 'uploadonly' || $which eq 'both') { |
$result.=&mt('Submit a file: (only one file can be uploaded)'). |
$result.=&mt('Submit a file: (only one file can be uploaded)'). |
Line 498 sub file_selector {
|
Line 506 sub file_selector {
|
'<input type="text" size="50" name="HWPORT'.$jspart.'_'.$id.'" value="" />'. |
'<input type="text" size="50" name="HWPORT'.$jspart.'_'.$id.'" value="" />'. |
'<br />'; |
'<br />'; |
$result .= &show_past_portfile_submission($part,$id); |
$result .= &show_past_portfile_submission($part,$id); |
|
|
} |
} |
$result.='</td></tr>'; |
$result.='</td></tr>'; |
return $result; |
return $result; |
Line 562 sub valid_award {
|
Line 569 sub valid_award {
|
'UNIT_INVALID_STUDENT', 'UNIT_IRRECONCIBLE', |
'UNIT_INVALID_STUDENT', 'UNIT_IRRECONCIBLE', |
'UNIT_FAIL', 'NO_UNIT', |
'UNIT_FAIL', 'NO_UNIT', |
'UNIT_NOTNEEDED', 'WANTED_NUMERIC', |
'UNIT_NOTNEEDED', 'WANTED_NUMERIC', |
'BAD_FORMULA', 'SIG_FAIL', 'INCORRECT', |
'BAD_FORMULA', 'INTERNAL_ERROR', 'SIG_FAIL', 'INCORRECT', |
'MISORDERED_RANK', 'INVALID_FILETYPE', |
'MISORDERED_RANK', 'INVALID_FILETYPE', |
'EXCESS_FILESIZE', 'DRAFT', |
'EXCESS_FILESIZE', 'DRAFT', |
'SUBMITTED', 'ASSIGNED_SCORE', |
'SUBMITTED', 'ASSIGNED_SCORE', |
Line 577 sub valid_award {
|
Line 584 sub valid_award {
|
'TOO_LONG', |
'TOO_LONG', |
'UNIT_INVALID_INSTRUCTOR', 'UNIT_INVALID_STUDENT', |
'UNIT_INVALID_INSTRUCTOR', 'UNIT_INVALID_STUDENT', |
'UNIT_IRRECONCIBLE', 'UNIT_FAIL', 'NO_UNIT', |
'UNIT_IRRECONCIBLE', 'UNIT_FAIL', 'NO_UNIT', |
'UNIT_NOTNEEDED', 'WANTED_NUMERIC', 'BAD_FORMULA', |
'UNIT_NOTNEEDED', 'WANTED_NUMERIC', 'BAD_FORMULA', 'INTERNAL_ERROR', |
'COMMA_FAIL', 'SIG_FAIL', 'INCORRECT', 'MISORDERED_RANK', |
'COMMA_FAIL', 'SIG_FAIL', 'INCORRECT', 'MISORDERED_RANK', |
'INVALID_FILETYPE', 'EXCESS_FILESIZE', 'DRAFT', 'SUBMITTED', |
'INVALID_FILETYPE', 'EXCESS_FILESIZE', 'DRAFT', 'SUBMITTED', |
'ASSIGNED_SCORE', 'APPROX_ANS', 'EXACT_ANS'); |
'ASSIGNED_SCORE', 'APPROX_ANS', 'EXACT_ANS'); |
Line 625 sub finalizeawards {
|
Line 632 sub finalizeawards {
|
return ('NO_RESPONSE'); |
return ('NO_RESPONSE'); |
} |
} |
} |
} |
|
|
|
if ($Apache::lonxml::internal_error) { $result='INTERNAL_ERROR'; } |
|
|
if (!$final_scantron && defined($result)) { return ($result); } |
if (!$final_scantron && defined($result)) { return ($result); } |
|
|
# if in scantron mode, if the award for any response is |
# if in scantron mode, if the award for any response is |
Line 671 sub finalizeawards {
|
Line 681 sub finalizeawards {
|
|
|
sub decideoutput { |
sub decideoutput { |
my ($award,$awarded,$awardmsg,$solved,$previous,$target)=@_; |
my ($award,$awarded,$awardmsg,$solved,$previous,$target)=@_; |
|
|
my $message=''; |
my $message=''; |
my $button=0; |
my $button=0; |
my $previousmsg; |
my $previousmsg; |
Line 805 sub decideoutput {
|
Line 816 sub decideoutput {
|
$message = &mt('Submission won\'t be graded. The combined size of submitted files exceeded the amount allowed.'); |
$message = &mt('Submission won\'t be graded. The combined size of submitted files exceeded the amount allowed.'); |
$css_class=$possible_class{'not_charged_try'}; |
$css_class=$possible_class{'not_charged_try'}; |
$button=1; |
$button=1; |
|
|
} elsif ($award eq 'INVALID_FILETYPE') { |
} elsif ($award eq 'INVALID_FILETYPE') { |
$message = &mt('Submission won\'t be graded. The type of file submitted is not allowed.'); |
$message = &mt('Submission won\'t be graded. The type of file submitted is not allowed.'); |
$css_class=$possible_class{'not_charged_try'}; |
$css_class=$possible_class{'not_charged_try'}; |
Line 849 sub decideoutput {
|
Line 859 sub decideoutput {
|
if ($target ne 'tex') {$message.=&Apache::loncommon::help_open_topic('Formula_Answers')}; |
if ($target ne 'tex') {$message.=&Apache::loncommon::help_open_topic('Formula_Answers')}; |
$css_class=$possible_class{'not_charged_try'}; |
$css_class=$possible_class{'not_charged_try'}; |
$button=1; |
$button=1; |
|
} elsif ($award eq 'INTERNAL_ERROR') { |
|
$message = &mt("An internal error occurred while processing your answer. Please try again later."); |
|
$css_class=$possible_class{'not_charged_try'}; |
|
$button=1; |
} elsif ($award eq 'INCORRECT') { |
} elsif ($award eq 'INCORRECT') { |
$message = &mt("Incorrect").'.'; |
$message = &mt("Incorrect").'.'; |
$css_class=$possible_class{'charged_try'}; |
$css_class=$possible_class{'charged_try'}; |
Line 1209 sub get_grade_messages {
|
Line 1223 sub get_grade_messages {
|
$trystr = '\vskip 0 mm '; |
$trystr = '\vskip 0 mm '; |
} |
} |
} else { |
} else { |
$trystr = "<td><nobr>".$tries_text." $tries"; |
$trystr = '<td><span class="LC_nobreak">'.$tries_text." $tries"; |
if ($Apache::lonhomework::parsing_a_task) { |
if ($Apache::lonhomework::parsing_a_task) { |
} elsif($env{'request.state'} ne 'construct') { |
} elsif($env{'request.state'} ne 'construct') { |
$trystr.="/$maxtries"; |
$trystr.="/$maxtries"; |
Line 1218 sub get_grade_messages {
|
Line 1232 sub get_grade_messages {
|
$trystr.="/".$Apache::inputtags::params{'maxtries'}; |
$trystr.="/".$Apache::inputtags::params{'maxtries'}; |
} |
} |
} |
} |
$trystr.="</nobr></td>"; |
$trystr.="</span></td>"; |
} |
} |
} |
} |
|
|