# Determine whether to use the action specified by the user or the default.
my $action = $::FORM{'action'} || 'list';
+my @categoryActions;
-if ($::FORM{'categoryAction'}) {
- processCategoryChange();
+if (@categoryActions = grep(/^categoryAction-.+/, keys(%::FORM))) {
+ $categoryActions[0] =~ s/^categoryAction-//;
+ processCategoryChange($categoryActions[0]);
exit;
}
}
sub processCategoryChange {
+ my $categoryAction = shift;
validateIsActive();
validateIsRequestable();
validateIsRequesteeble();
my @inclusions = $::MFORM{'inclusions'} ? @{$::MFORM{'inclusions'}} : ();
my @exclusions = $::MFORM{'exclusions'} ? @{$::MFORM{'exclusions'}} : ();
- if ($::FORM{'categoryAction'} eq "Include") {
+ if ($categoryAction eq 'include') {
validateProduct();
validateComponent();
my $category = ($::FORM{'product'} || "__Any__") . ":" . ($::FORM{'component'} || "__Any__");
push(@inclusions, $category) unless grep($_ eq $category, @inclusions);
}
- elsif ($::FORM{'categoryAction'} eq "Exclude") {
+ elsif ($categoryAction eq 'exclude') {
validateProduct();
validateComponent();
my $category = ($::FORM{'product'} || "__Any__") . ":" . ($::FORM{'component'} || "__Any__");
push(@exclusions, $category) unless grep($_ eq $category, @exclusions);
}
- elsif ($::FORM{'categoryAction'} eq "Remove Inclusion") {
+ elsif ($categoryAction eq 'removeInclusion') {
@inclusions = map(($_ eq $::FORM{'inclusion_to_remove'} ? () : $_), @inclusions);
}
- elsif ($::FORM{'categoryAction'} eq "Remove Exclusion") {
+ elsif ($categoryAction eq 'removeExclusion') {
@exclusions = map(($_ eq $::FORM{'exclusion_to_remove'} ? () : $_), @exclusions);
}
[% item FILTER html %]</option>
[% END %]
</select><br>
- <input type="submit" name="categoryAction" value="Include">
- <input type="submit" name="categoryAction" value="Exclude">
+ <input type="submit" name="categoryAction-include" value="Include">
+ <input type="submit" name="categoryAction-exclude" value="Exclude">
</td>
<td style="vertical-align: top;">
<b>Inclusions:</b><br>
[% PROCESS "global/select-menu.html.tmpl" name="inclusion_to_remove" multiple="1" size="4" options=type.inclusions %]<br>
- <input type="submit" name="categoryAction" value="Remove Inclusion">
+ <input type="submit" name="categoryAction-removeInclusion" value="Remove Inclusion">
</td>
<td style="vertical-align: top;">
<b>Exclusions:</b><br>
[% PROCESS "global/select-menu.html.tmpl" name="exclusion_to_remove" multiple="1" size="4" options=type.exclusions %]<br>
- <input type="submit" name="categoryAction" value="Remove Exclusion">
+ <input type="submit" name="categoryAction-removeExclusion" value="Remove Exclusion">
</td>
</tr>
</table>