| … | |
… | |
| 100 | #warn "PG: setting the opcode mask (using default values)\n"; |
100 | #warn "PG: setting the opcode mask (using default values)\n"; |
| 101 | $translator->set_mask(); |
101 | $translator->set_mask(); |
| 102 | |
102 | |
| 103 | # store the problem source |
103 | # store the problem source |
| 104 | #warn "PG: storing the problem source\n"; |
104 | #warn "PG: storing the problem source\n"; |
| 105 | my $sourceFile = $problem->source_file; |
105 | my $sourceFile = ( defined($translationOptions->{override_problem_source}) ) ? |
|
|
106 | $translationOptions->{override_problem_source} : |
|
|
107 | $problem->source_file; |
| 106 | $sourceFile = $courseEnv->{courseDirs}->{templates}."/".$sourceFile |
108 | $sourceFile = $courseEnv->{courseDirs}->{templates}."/".$sourceFile |
| 107 | unless ($sourceFile =~ /^\//); |
109 | unless ($sourceFile =~ /^\//); |
| 108 | eval { $translator->source_string(readFile($sourceFile)) }; |
110 | eval { $translator->source_string(readFile($sourceFile)) }; |
| 109 | if ($@) { |
111 | if ($@) { |
| 110 | # well, we couldn't get the problem source, for some reason. |
112 | # well, we couldn't get the problem source, for some reason. |
| … | |
… | |
| 238 | $envir{psvnNumber} = $envir{psvn}; |
240 | $envir{psvnNumber} = $envir{psvn}; |
| 239 | $envir{probNum} = $problem->problem_id; |
241 | $envir{probNum} = $problem->problem_id; |
| 240 | $envir{questionNumber} = $envir{probNum}; |
242 | $envir{questionNumber} = $envir{probNum}; |
| 241 | $envir{fileName} = $problem->source_file; |
243 | $envir{fileName} = $problem->source_file; |
| 242 | $envir{probFileName} = $envir{fileName}; |
244 | $envir{probFileName} = $envir{fileName}; |
| 243 | $envir{problemSeed} = $problem->problem_seed; |
245 | $envir{problemSeed} = (defined($options->{override_seed}) ) ? $options->{override_seed} :$problem->problem_seed; |
| 244 | $envir{displayMode} = translateDisplayModeNames($options->{displayMode}); |
246 | $envir{displayMode} = translateDisplayModeNames($options->{displayMode}); |
| 245 | $envir{languageMode} = $envir{displayMode}; |
247 | $envir{languageMode} = $envir{displayMode}; |
| 246 | $envir{outputMode} = $envir{displayMode}; |
248 | $envir{outputMode} = $envir{displayMode}; |
| 247 | $envir{displayHintsQ} = $options->{showHints}; |
249 | $envir{displayHintsQ} = $options->{showHints}; |
| 248 | $envir{displaySolutionsQ} = $options->{showSolutions}; |
250 | $envir{displaySolutionsQ} = $options->{showSolutions}; |