From 7aecec0a9a6c8e93c239a7dfbfb68752eba935bd Mon Sep 17 00:00:00 2001 From: Andreas Granig Date: Thu, 14 Apr 2016 15:04:10 +0200 Subject: [PATCH] MT#16777 Also fix start/end lnp handling in API We only checked the csv part before. When individually creating entries, it's borken as well. Change-Id: Iaa04492c7beca757a499fa3705671304f77edfee --- lib/NGCP/Panel/Controller/API/LnpNumbers.pm | 10 ++++++++-- lib/NGCP/Panel/Role/API/LnpNumbers.pm | 11 +++++++++-- 2 files changed, 17 insertions(+), 4 deletions(-) diff --git a/lib/NGCP/Panel/Controller/API/LnpNumbers.pm b/lib/NGCP/Panel/Controller/API/LnpNumbers.pm index fc701d108d..ef89a3f37c 100644 --- a/lib/NGCP/Panel/Controller/API/LnpNumbers.pm +++ b/lib/NGCP/Panel/Controller/API/LnpNumbers.pm @@ -222,8 +222,14 @@ sub POST :Allow { resource => $resource, form => $form, ); - $resource->{start} .= "T00:00:00"; - $resource->{end} .= "T23:59:59"; + $resource->{start} ||= undef; + if($resource->{start} && $resource->{start} =~ /^\d{4}-\d{2}-\d{2}$/) { + $resource->{start} .= 'T00:00:00'; + } + $resource->{end} ||= undef; + if($resource->{end} && $resource->{end} =~ /^\d{4}-\d{2}-\d{2}$/) { + $resource->{end} .= 'T23:59:59'; + } my $carrier = $c->model('DB')->resultset('lnp_providers')->find($resource->{lnp_provider_id}); unless($carrier) { diff --git a/lib/NGCP/Panel/Role/API/LnpNumbers.pm b/lib/NGCP/Panel/Role/API/LnpNumbers.pm index 6a0e48e119..b8576b2bcf 100644 --- a/lib/NGCP/Panel/Role/API/LnpNumbers.pm +++ b/lib/NGCP/Panel/Role/API/LnpNumbers.pm @@ -105,8 +105,15 @@ sub update_item { return; } =cut - $resource->{start} .= "T00:00:00"; - $resource->{end} .= "T23:59:59"; + + $resource->{start} ||= undef; + if($resource->{start} && $resource->{start} =~ /^\d{4}-\d{2}-\d{2}$/) { + $resource->{start} .= 'T00:00:00'; + } + $resource->{end} ||= undef; + if($resource->{end} && $resource->{end} =~ /^\d{4}-\d{2}-\d{2}$/) { + $resource->{end} .= 'T23:59:59'; + } $item->update($resource); $item->discard_changes; # agranig: otherwise start/end is not updated!?