| … | |
… | |
| 30 | sub title { |
30 | sub title { |
| 31 | my ($self, @components) = @_; |
31 | my ($self, @components) = @_; |
| 32 | return "Problem Set Editor - ".$self->{ce}->{courseName}." : ".$self->getSetName(@components); |
32 | return "Problem Set Editor - ".$self->{ce}->{courseName}." : ".$self->getSetName(@components); |
| 33 | } |
33 | } |
| 34 | |
34 | |
|
|
35 | # Initialize does all of the form processing. It's extensive, and could probably be cleaned up and |
|
|
36 | # consolidated with a little abstraction. |
| 35 | sub initialize { |
37 | sub initialize { |
| 36 | my ($self, @components) = @_; |
38 | my ($self, @components) = @_; |
| 37 | my $r = $self->{r}; |
39 | my $r = $self->{r}; |
| 38 | my $db = $self->{db}; |
40 | my $db = $self->{db}; |
| 39 | my $setName = $self->getSetName(@components); |
41 | my $setName = $self->getSetName(@components); |
| … | |
… | |
| 101 | my $paramName = "problem_${problem}_${field}"; |
103 | my $paramName = "problem_${problem}_${field}"; |
| 102 | if (defined($r->param($paramName))) { |
104 | if (defined($r->param($paramName))) { |
| 103 | $userProblemRecord->$field($r->param($paramName)); |
105 | $userProblemRecord->$field($r->param($paramName)); |
| 104 | } |
106 | } |
| 105 | } |
107 | } |
|
|
108 | $userProblemRecord->attempted($userProblemRecord->num_correct + $userProblemRecord->num_incorrect); |
| 106 | foreach my $field (@{PROBLEM_FIELDS()}) { |
109 | foreach my $field (@{PROBLEM_FIELDS()}) { |
| 107 | my $paramName = "problem_${problem}_${field}"; |
110 | my $paramName = "problem_${problem}_${field}"; |
| 108 | if (defined($r->param("${paramName}_override"))) { |
111 | if (defined($r->param("${paramName}_override"))) { |
| 109 | if (exists $overrides{$paramName}) { |
112 | if (exists $overrides{$paramName}) { |
| 110 | $userProblemRecord->$field($r->param("${paramName}_override")); |
113 | $userProblemRecord->$field($r->param("${paramName}_override")); |