TT#20696 Fix contract_id validation in reseller

When creating or updating a reseller, catch non-numeric contract_id
and return 422, otherwise 500 would be returned.

Change-Id: I0e22f6f514fef80f5265eca28d7ec97811c1172f
changes/05/15005/2
Andreas Granig 8 years ago
parent 613358c449
commit 52ac0a8088

@ -163,6 +163,10 @@ sub POST :Allow {
my $form = $self->get_form($c);
$resource->{contract_id} //= undef;
if(defined $resource->{contract_id} && !is_int($resource->{contract_id})) {
$self->error($c, HTTP_UNPROCESSABLE_ENTITY, "Invalid 'contract_id', not a number");
return;
}
last unless $self->validate_form(
c => $c,
resource => $resource,

@ -87,6 +87,11 @@ sub update_reseller {
$form //= $self->get_form($c);
$resource->{contract_id} //= undef;
if(defined $resource->{contract_id} && !is_int($resource->{contract_id})) {
$self->error($c, HTTP_UNPROCESSABLE_ENTITY, "Invalid 'contract_id', not a number");
return;
}
return unless $self->validate_form(
c => $c,
form => $form,

Loading…
Cancel
Save