[system] / trunk / webwork2 / lib / WeBWorK / ContentGenerator / Problem.pm Repository:
ViewVC logotype

Diff of /trunk/webwork2/lib/WeBWorK/ContentGenerator/Problem.pm

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

Revision 755 Revision 756
120 my %can = ( 120 my %can = (
121 showOldAnswers => 1, 121 showOldAnswers => 1,
122 showCorrectAnswers => canShowCorrectAnswers($permissionLevel, $set->answer_date), 122 showCorrectAnswers => canShowCorrectAnswers($permissionLevel, $set->answer_date),
123 showHints => 1, 123 showHints => 1,
124 showSolutions => canShowSolutions($permissionLevel, $set->answer_date), 124 showSolutions => canShowSolutions($permissionLevel, $set->answer_date),
125 # attempts=num_correct+num_incorrect+1, as this happens before updating $problem
126 recordAnswers => canRecordAnswers($permissionLevel, $set->open_date, $set->due_date, 125 recordAnswers => canRecordAnswers($permissionLevel, $set->open_date, $set->due_date,
127 $problem->max_attempts, $problem->num_correct + $problem->num_incorrect + 1), 126 $problem->max_attempts, $problem->num_correct + $problem->num_incorrect + 1),
127 # attempts=num_correct+num_incorrect+1, as this happens before updating $problem
128 checkAnswers => canCheckAnswers($permissionLevel, $set->open_date, 128 checkAnswers => canCheckAnswers($permissionLevel, $set->answer_date),
129 $set->due_date, $set->answer_date, $problem->max_attempts,
130 $problem->num_correct + $problem->num_incorrect + 1),
131 ); 129 );
132 130
133 # final values for options 131 # final values for options
134 my %will; 132 my %will;
135 foreach (keys %must) { 133 foreach (keys %must) {
415 ? "Your recorded score is $lastScore." . CGI::br() 413 ? "Your recorded score is $lastScore." . CGI::br()
416 : "", 414 : "",
417 $setClosed ? $setClosedMessage : "You have $attemptsLeft $attemptsLeftNoun remaining." 415 $setClosed ? $setClosedMessage : "You have $attemptsLeft $attemptsLeftNoun remaining."
418 ); 416 );
419 417
420
421 print 418 print
422 $self->viewOptions(), 419 $self->viewOptions(),
423 CGI::endform(); 420 CGI::endform();
424 421
425 print CGI::end_div(); 422 print CGI::end_div();
663 my $attemptsOK = $maxAttempts == -1 || $attempts <= $maxAttempts; 660 my $attemptsOK = $maxAttempts == -1 || $attempts <= $maxAttempts;
664 my $recordAnswers = $permHigh || ($timeOK && $attemptsOK); 661 my $recordAnswers = $permHigh || ($timeOK && $attemptsOK);
665 return $recordAnswers; 662 return $recordAnswers;
666} 663}
667 664
668sub canCheckAnswers($$$$$) { 665sub canCheckAnswers($$) {
669 my ($permissionLevel, $openDate, $dueDate, $answerDate, $maxAttempts, $attempts) = @_; 666 my ($permissionLevel, $answerDate) = @_;
670 return time >= $answerDate or canRecordAnswers($permissionLevel, $openDate, $dueDate, $maxAttempts, $attempts); 667 my $permHigh = $permissionLevel > 0;
668 my $timeOK = time >= $answerDate;
669 my $recordAnswers = $permHigh || $timeOK;
670 return $recordAnswers;
671} 671}
672 672
673sub mustRecordAnswers($) { 673sub mustRecordAnswers($) {
674 my ($permissionLevel) = @_; 674 my ($permissionLevel) = @_;
675 return $permissionLevel == 0; 675 return $permissionLevel == 0;

Legend:
Removed from v.755  
changed lines
  Added in v.756

aubreyja at gmail dot com
ViewVC Help
Powered by ViewVC 1.0.9