{ id => $id, status => $status });
# Make sure the user didn't request the flag unless it's requestable.
- if ($status eq '?' && !$flag->{type}->{is_requestable}) {
+ # If the flag was requested before it became unrequestable, leave it as is.
+ if ($status eq '?' && $flag->{status} ne '?' &&
+ !$flag->{type}->{is_requestable}) {
ThrowCodeError("flag_status_invalid",
{ id => $id, status => $status });
}
[% IF type.is_active %]
<option value="+" [% "selected" IF flag.status == "+" %]>+</option>
<option value="-" [% "selected" IF flag.status == "-" %]>-</option>
- [% IF type.is_requestable %]
+ [% IF type.is_requestable || flag.status == "?" %]
<option value="?" [% "selected" IF flag.status == "?" %]>?</option>
[% END %]
[% ELSE %]