From: jj v. a. <we...@ma...> - 2005-08-26 17:28:56
|
Log Message: ----------- When dealing with showOldAnswers defaults, allow control of who get get the system default after the due date instead of hard-wiring it. Default value is that students don't initially get old answers after the due date, but professors do. Modified Files: -------------- webwork-modperl/conf: global.conf.dist webwork-modperl/lib/WeBWorK/ContentGenerator: Problem.pm Revision Data ------------- Index: global.conf.dist =================================================================== RCS file: /webwork/cvs/system/webwork-modperl/conf/global.conf.dist,v retrieving revision 1.131 retrieving revision 1.132 diff -Lconf/global.conf.dist -Lconf/global.conf.dist -u -r1.131 -r1.132 --- conf/global.conf.dist +++ conf/global.conf.dist @@ -514,7 +514,11 @@ show_correct_answers_before_answer_date => $ta, show_solutions_before_answer_date => $ta, avoid_recording_answers => $ta, + # Below this level, old answers are never initially shown can_show_old_answers_by_default => $student, + # at this level, we look at showOldAnswers for default value + # even after the due date + can_always_use_show_old_answers_default => $professor, check_answers_before_open_date => $ta, check_answers_after_open_date_with_attempts => $ta, check_answers_after_open_date_without_attempts => $guest, Index: Problem.pm =================================================================== RCS file: /webwork/cvs/system/webwork-modperl/lib/WeBWorK/ContentGenerator/Problem.pm,v retrieving revision 1.183 retrieving revision 1.184 diff -Llib/WeBWorK/ContentGenerator/Problem.pm -Llib/WeBWorK/ContentGenerator/Problem.pm -u -r1.183 -r1.184 --- lib/WeBWorK/ContentGenerator/Problem.pm +++ lib/WeBWorK/ContentGenerator/Problem.pm @@ -177,6 +177,9 @@ # Reset the default in some cases sub set_showOldAnswers_default { my ($self, $ce, $userName, $authz, $set) = @_; + # these people always use the system/course default, so don't + # override the value of ...->{showOldAnswers} + return if $authz->hasPermissions($userName, "can_always_use_show_old_answers_default"); # this person should always default to 0 $ce->{pg}->{options}->{showOldAnswers} = 0 unless ($authz->hasPermissions($userName, "can_show_old_answers_by_default")); |