From 0b077f3effa96eb2e3d4253a2f750cdf49c4400d Mon Sep 17 00:00:00 2001 From: Irina Peshinskaya Date: Sun, 6 Mar 2016 03:52:09 +0200 Subject: [PATCH] MT#18407 Consider null in emailtemplate.reseller_id Change-Id: I3e2f4606697c04052ed8a976e5c78dbe953261b3 --- lib/NGCP/Panel/Controller/API/EmailTemplates.pm | 2 +- lib/NGCP/Panel/Form/EmailTemplate/Admin.pm | 3 ++- lib/NGCP/Panel/Role/API/EmailTemplates.pm | 4 ++-- 3 files changed, 5 insertions(+), 4 deletions(-) diff --git a/lib/NGCP/Panel/Controller/API/EmailTemplates.pm b/lib/NGCP/Panel/Controller/API/EmailTemplates.pm index 29b4825414..ba59718241 100644 --- a/lib/NGCP/Panel/Controller/API/EmailTemplates.pm +++ b/lib/NGCP/Panel/Controller/API/EmailTemplates.pm @@ -79,7 +79,7 @@ sub GET :Allow { (my $total_count, $items) = $self->paginate_order_collection($c, $items); my (@embedded, @links); my $form = $self->get_form($c); - for my $item ($items->search({}, {prefetch => ['reseller']})->all) { + for my $item ($items->all) { push @embedded, $self->hal_from_item($c, $item, $form); push @links, Data::HAL::Link->new( relation => 'ngcp:'.$self->resource_name, diff --git a/lib/NGCP/Panel/Form/EmailTemplate/Admin.pm b/lib/NGCP/Panel/Form/EmailTemplate/Admin.pm index 1b6786ca7a..671abe4ce5 100644 --- a/lib/NGCP/Panel/Form/EmailTemplate/Admin.pm +++ b/lib/NGCP/Panel/Form/EmailTemplate/Admin.pm @@ -6,7 +6,8 @@ extends 'NGCP::Panel::Form::EmailTemplate::Reseller'; has_field 'reseller' => ( type => '+NGCP::Panel::Field::Reseller', - validate_when_empty => 1, + validate_when_empty => 0, + required => 0, ); has_block 'fields' => ( diff --git a/lib/NGCP/Panel/Role/API/EmailTemplates.pm b/lib/NGCP/Panel/Role/API/EmailTemplates.pm index a31de25c10..bd22c77cc2 100644 --- a/lib/NGCP/Panel/Role/API/EmailTemplates.pm +++ b/lib/NGCP/Panel/Role/API/EmailTemplates.pm @@ -21,7 +21,7 @@ sub item_rs { my $item_rs = $c->model('DB')->resultset('email_templates'); if($c->user->roles eq "admin") { } elsif($c->user->roles eq "reseller") { - $item_rs = $item_rs->search({ reseller_id => $c->user->reseller_id }); + $item_rs = $item_rs->search({ reseller_id => $c->user->reseller_id },{prefetch=>'reseller'}); } return $item_rs; } @@ -50,7 +50,7 @@ sub hal_from_item { Data::HAL::Link->new(relation => 'collection', href => sprintf("/api/%s/", $self->resource_name)), Data::HAL::Link->new(relation => 'profile', href => 'http://purl.org/sipwise/ngcp-api/'), Data::HAL::Link->new(relation => 'self', href => sprintf("%s%d", $self->dispatch_path, $item->id)), - Data::HAL::Link->new(relation => 'ngcp:resellers', href => sprintf("/api/resellers/%d", $item->reseller_id)), + $item->reseller_id ? Data::HAL::Link->new(relation => 'ngcp:resellers', href => sprintf("/api/resellers/%d", $item->reseller_id)):(), ], relation => 'ngcp:'.$self->resource_name, );