From: Mike G. v. a. <we...@ma...> - 2009-12-17 04:14:04
|
Log Message: ----------- Minor change to PGProblemEditor.pm to define DEFAULT_SEED Major bug fix for ProblemSetDetail (but 1725) Enforces all files assigned in ProblemSetDetail module to be accessible through the course temp directory. Fix is one line change near, line 1576 Modified Files: -------------- webwork2/lib/WeBWorK/ContentGenerator/Instructor: PGProblemEditor.pm ProblemSetDetail.pm Revision Data ------------- Index: PGProblemEditor.pm =================================================================== RCS file: /webwork/cvs/system/webwork2/lib/WeBWorK/ContentGenerator/Instructor/PGProblemEditor.pm,v retrieving revision 1.97 retrieving revision 1.98 diff -Llib/WeBWorK/ContentGenerator/Instructor/PGProblemEditor.pm -Llib/WeBWorK/ContentGenerator/Instructor/PGProblemEditor.pm -u -r1.97 -r1.98 --- lib/WeBWorK/ContentGenerator/Instructor/PGProblemEditor.pm +++ lib/WeBWorK/ContentGenerator/Instructor/PGProblemEditor.pm @@ -17,7 +17,7 @@ package WeBWorK::ContentGenerator::Instructor::PGProblemEditor; use base qw(WeBWorK::ContentGenerator::Instructor); - +use constant DEFAULT_SEED => 123456; =head1 NAME @@ -191,7 +191,7 @@ # inside saveFileChanges $self->{problemSeed} = $r->param('problemSeed') if (defined $r->param('problemSeed')); # Make sure that the problem seed has some value - $self->{problemSeed} = '123456' unless not_blank($self->{problemSeed}); + $self->{problemSeed} = DEFAULT_SEED() unless not_blank($self->{problemSeed}); ############################################################################## ############################################################################# @@ -331,7 +331,7 @@ # inside saveFileChanges $self->{problemSeed} = $r->param('problemSeed') if (defined $r->param('problemSeed')); # Make sure that the problem seed has some value - $self->{problemSeed} = '123456' unless not_blank( $self->{problemSeed}); + $self->{problemSeed} = DEFAULT_SEED() unless not_blank( $self->{problemSeed}); ############################################################################## # Return @@ -925,7 +925,7 @@ } # bail if no source path for the problem is found ; die "Cannot find a file path to save to" unless( not_blank($forcedSourceFile) ); - $self->{problemSeed} = 1234; + $self->{problemSeed} = DEFAULT_SEED(); $editFilePath .= '/' . $forcedSourceFile; last CASE; }; # end 'source_path_for_problem_file' case @@ -1180,7 +1180,7 @@ my $problemNumber = $self->{problemID}; my $problemSeed = ($actionParams->{'action.view.seed'}) ? $actionParams->{'action.view.seed'}->[0] - : 1234; + : DEFAULT_SEED(); my $displayMode = ($actionParams->{'action.view.displayMode'}) ? $actionParams->{'action.view.displayMode'}->[0] : $self->r->ce->{pg}->{options}->{displayMode}; Index: ProblemSetDetail.pm =================================================================== RCS file: /webwork/cvs/system/webwork2/lib/WeBWorK/ContentGenerator/Instructor/ProblemSetDetail.pm,v retrieving revision 1.76 retrieving revision 1.77 diff -Llib/WeBWorK/ContentGenerator/Instructor/ProblemSetDetail.pm -Llib/WeBWorK/ContentGenerator/Instructor/ProblemSetDetail.pm -u -r1.76 -r1.77 --- lib/WeBWorK/ContentGenerator/Instructor/ProblemSetDetail.pm +++ lib/WeBWorK/ContentGenerator/Instructor/ProblemSetDetail.pm @@ -1573,7 +1573,8 @@ return "No source file specified" unless $file; return "Problem source is drawn from a grouping set" if $file =~ /^group/; - $file = $ce->{courseDirs}->{templates} . '/' . $file unless $file =~ m|^/|; +# $file = $ce->{courseDirs}->{templates} . '/' . $file unless $file =~ m|^/|; # bug: 1725 allows access to all files e.g. /etc/passwd + $file = $ce->{courseDirs}->{templates} . '/' . $file ; # only files in template directory can be accessed my $text = "This source file "; my $fileError; |